|
взаимодействие с сишной библиотечкой крипотования
|
|||
---|---|---|---|
#18+
"Не работает" это как? Опять же про разрядность: точно int подразумевается 32 бита? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2007, 17:15 |
|
взаимодействие с сишной библиотечкой крипотования
|
|||
---|---|---|---|
#18+
Arm79 Код: plaintext 1.
и не работает :)Ну, как минимум, после MP_API.Set... следует вызвать GC.KeepAlive(Rand). ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2007, 17:17 |
|
взаимодействие с сишной библиотечкой крипотования
|
|||
---|---|---|---|
#18+
Alexes"Не работает" это как? Опять же про разрядность: точно int подразумевается 32 бита? Например, поставил точки останова в функции, но на них ничего не стопится. int - при несовпадении типа в прошлый раз система проругалась про некорректный стек вызова, сейчас же все тихо. maybeleo Arm79 Код: plaintext 1.
и не работает :)Ну, как минимум, после MP_API.Set... следует вызвать GC.KeepAlive(Rand). Сделал. Смысл вызова пойму попозже, со словариком. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2007, 17:25 |
|
взаимодействие с сишной библиотечкой крипотования
|
|||
---|---|---|---|
#18+
Arm79Сделал.Заработало? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2007, 17:27 |
|
взаимодействие с сишной библиотечкой крипотования
|
|||
---|---|---|---|
#18+
maybeleo Arm79Сделал.Заработало? не-а PS Почитал про метод, запомню, что для callback-функций, передаваемых в native-code лучше лучше ее применять ) ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2007, 17:29 |
|
взаимодействие с сишной библиотечкой крипотования
|
|||
---|---|---|---|
#18+
Arm79не-аА, ё! Эта Ваша Setхххх она ведь только устанавливает callback, а сам callback когда вызываться будет? Короче говоря, смысл в том, чтобы экземпляр делегата, указывающий на callback-метод, "дожил" до этого момента. Исходя из этого, определитесь поточнее с местом, где вызвать GC.KeepAlive. В справке есть неплохие примеры. Других косяков вроде не вижу. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2007, 17:38 |
|
взаимодействие с сишной библиотечкой крипотования
|
|||
---|---|---|---|
#18+
maybeleo Arm79не-аА, ё! Эта Ваша Setхххх она ведь только устанавливает callback, а сам callback когда вызываться будет? Короче говоря, смысл в том, чтобы экземпляр делегата, указывающий на callback-метод, "дожил" до этого момента. Исходя из этого, определитесь поточнее с местом, где вызвать GC.KeepAlive. В справке есть неплохие примеры. Других косяков вроде не вижу. ну KeepAlive я вообще разместил в конце программы. Значит должен дожить? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2007, 17:42 |
|
взаимодействие с сишной библиотечкой крипотования
|
|||
---|---|---|---|
#18+
Разобрались чуть чуть ))) проблема была в том, что я в Ansi-шную dll-ку отсылал Unicode-строки. Сейчас по чуть чуть дело пошло. все string заменяем на byte[] и используем функцию Код: plaintext 1. 2. 3. 4. 5. 6. 7.
ЗЫ Тему очевидно следовало бы назвать "Ликбез по P/Invoke для чайников" ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2007, 18:59 |
|
взаимодействие с сишной библиотечкой крипотования
|
|||
---|---|---|---|
#18+
Подниму-ка я тему... Сейчас, в заголовке к библиотеке mespro.dll присутствует такая композиция: MPFUN void MPAPI SetRandInitCallbackFun(int (MPAPI *Func)(int, int, int, char *)); Уважаемые доны, как ее описать в шарпе? Чет под вечер ничерта голова не варит... ... |
|||
:
Нравится:
Не нравится:
|
|||
03.09.2011, 22:19 |
|
взаимодействие с сишной библиотечкой крипотования
|
|||
---|---|---|---|
#18+
GamboltПодниму-ка я тему... Сейчас, в заголовке к библиотеке mespro.dll присутствует такая композиция: MPFUN void MPAPI SetRandInitCallbackFun(int (MPAPI *Func)(int, int, int, char *)); Уважаемые доны, как ее описать в шарпе? Чет под вечер ничерта голова не варит... Например, void SetRandInitCallbackFun(IntPtr pFunc); (по вкусу указать соглашение о вызове) Функции надо скормить адрес другой функции (один аргумент типа "указатель"). Эта другая функция должна быть нативной, а не управляемой, ибо, по всей видимости, будет вызываться из нативного кода. Главный вопрос - откуда эта функция-аргумент у Вас возьмётся. Я в такой ситуации писал dll на C, в которой определил функцию для callback'a и экспортировал из dll функцию, возвращающую её адрес. После чего в управляемом коде вызвал функцию своей dll - получил адрес как IntPtr и передал его функции библиотеки. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.09.2011, 00:34 |
|
взаимодействие с сишной библиотечкой крипотования
|
|||
---|---|---|---|
#18+
AbstractionGamboltПодниму-ка я тему... Сейчас, в заголовке к библиотеке mespro.dll присутствует такая композиция: MPFUN void MPAPI SetRandInitCallbackFun(int (MPAPI *Func)(int, int, int, char *)); Уважаемые доны, как ее описать в шарпе? Чет под вечер ничерта голова не варит... Например, void SetRandInitCallbackFun(IntPtr pFunc); (по вкусу указать соглашение о вызове) Функции надо скормить адрес другой функции (один аргумент типа "указатель"). Эта другая функция должна быть нативной, а не управляемой, ибо, по всей видимости, будет вызываться из нативного кода. Главный вопрос - откуда эта функция-аргумент у Вас возьмётся. Я в такой ситуации писал dll на C, в которой определил функцию для callback'a и экспортировал из dll функцию, возвращающую её адрес. После чего в управляемом коде вызвал функцию своей dll - получил адрес как IntPtr и передал его функции библиотеки. Понял, спасибо. )))) Кучеряво. )))) ... |
|||
:
Нравится:
Не нравится:
|
|||
04.09.2011, 14:42 |
|
взаимодействие с сишной библиотечкой крипотования
|
|||
---|---|---|---|
#18+
Здравствуйте, товарищи! Настраиваю систему где должны ходить подписанные сообщения (пытаюсь связать C# и mespro.dll) Прошу выручить примером подписания сообщения/ проверкой подписи/ как ключи загрузить в mespro.dll, на мой ящик Sooelec@gmail.com или сюда. Заранее всем неравнодушным спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
14.09.2016, 11:10 |
|
|
start [/forum/topic.php?fid=20&gotonew=1&tid=1400352]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
44ms |
get topic data: |
11ms |
get first new msg: |
6ms |
get forum data: |
2ms |
get page messages: |
53ms |
get tp. blocked users: |
2ms |
others: | 260ms |
total: | 410ms |
0 / 0 |