Ru-MaNGOS

Ru-MaNGOS (http://mangos.ytdb.ru/index.php)
-   Языки программирования (http://mangos.ytdb.ru/forumdisplay.php?f=34)
-   -   DllImport C# (http://mangos.ytdb.ru/showthread.php?t=6610)

HuntsMan 21.01.2013 09:39

DllImport C#
 
Есть вот такой код: http://paste2.org/p/2778324
Но при запуске падает на первой попавшейся импортируемой функции с ошибкой:
Цитата:

Дополнительные сведения: Вызов функции PInvoke "Framework!Framework.Cryptography.SRP6::BN_Bin 2BN" разбалансировал стек. Вероятно, это вызвано тем, что управляемая сигнатура PInvoke не совпадает с неуправляемой целевой сигнатурой. Убедитесь, что соглашение о вызовах и параметры сигнатуры PInvoke совпадают с неуправляемой целевой сигнатурой.
Аргументы функции вроде соответствуют функциям из библиотек. Не подскажете, в чем может быть дело?

Lordronn 21.01.2013 10:30

C/C++ экспорты должны быть __stdcall

HuntsMan 21.01.2013 12:06

В импортируемой либе?

TOM_RUS 21.01.2013 12:21

CallingConvention Enumeration
Там скорее всего cdecl, т.к. stdcall используется по умолчанию в pinvoke.

HuntsMan 21.01.2013 13:05

Спасибо, помогло.

HuntsMan 21.01.2013 20:52

Извиняюсь, что устраиваю гадюшник задавая вопрос не по теме темы, но переписал я SRP6 под клиента. Информацию о шифровании черпал из http://habrahabr.ru/post/121021/ и исходников сервера. Исходный код класса шифрования: http://paste2.org/p/2783259 и его использование: http://paste2.org/p/2783263

Но сколько бы я не старался, сервер отвечает тем, что неправильный логин или пароль. Пересмотрел все уже несколько раз, никак не могу найти ошибку. Подскажите, что я упустил.


Текущее время: 06:17. Часовой пояс GMT +3.

ru-mangos.ru - Русское сообщество MaNGOS