Здравствуйте, kozzzak, Вы писали:
K>Вот столкнулся с той же проблемой.
Код принято оформлять тегами. См.
Оформляем сообщения красивоАвтор: anvaka
Дата: 15.05.06
.
K> function _SignString(hProv: HCRYPTPROV; InputStr: PByte;
K> InputStrLen: DWORD; var ResultStr: PByte;
K> var ResultStrLen: DWORD): Boolean; stdcall;
K> [DllImport("sspCrypto.dll", EntryPoint = "_SignString")]
K> public static extern bool SignString(
K> IntPtr hProv,
K> IntPtr InputStr,
K> uint InputStrLen,
K> [Out]out IntPtr ResultStr,
K> [Out]out uint ResultStrLen);
K>Не могли б Вы помочь мне?
K>Что б я не делал, получаю в ответ "Подпись пакета не верна!"
В подобных вопросах надо так же показать код, который вызывает метод.
Попробовать можно такой прототип:
[DllImport("sspCrypto.dll", EntryPoint = "_SignString", ExactSpelling = true, CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
public static extern bool SignString(
IntPtr hProv,
[MarshalAs(UnmanagedType.LPStr)] string InputStr,
int InputStrLen,
[Out, MarshalAs(UnmanagedType.LPStr)] out string ResultStr,
[Out] out int ResultStrLen
);
Вот столкнулся с той же проблемой.
function _SignString(hProv: HCRYPTPROV; InputStr: PByte;
InputStrLen: DWORD; var ResultStr: PByte;
var ResultStrLen: DWORD): Boolean; stdcall;
[DllImport("sspCrypto.dll", EntryPoint = "_SignString")]
public static extern bool SignString(
IntPtr hProv,
IntPtr InputStr,
uint InputStrLen,
[Out]out IntPtr ResultStr,
[Out]out uint ResultStrLen);
Не могли б Вы помочь мне?
Что б я не делал, получаю в ответ "Подпись пакета не верна!"
Чтобы не гадать, я бы на вашем месте взял и основательно разобрался в этой теме, т.е. почитал бы разные статьи и MSDN. Ключевые слова: DllImport, Interop.