Здравствуйте, Buggy, Вы писали:
B>Здравствуйте, Buggy, Вы писали:
B>>Как взять md5 в Windows Mobile 5.0? Что-то я в SDK на WM не нашел CryptoAPI. B>забыл написать. На VC++
OS Versions: Windows CE 2.10 and later.
Header: Wincrypt.h.
Link Library: Coredll.lib.
Здравствуйте, pjBrain, Вы писали:
B>Здравствуйте, Buggy, Вы писали:
B>>Здравствуйте, Buggy, Вы писали:
B>>>Как взять md5 в Windows Mobile 5.0? Что-то я в SDK на WM не нашел CryptoAPI. B>>забыл написать. На VC++
B>OS Versions: Windows CE 2.10 and later. B>Header: Wincrypt.h. B>Link Library: Coredll.lib.
B>
Спасибо за исходник
Только что-то он не толи выводит, я делаю:
MessageBox(NULL, (LPCWSTR)cHash, 0,0); выводятся мне квадратики какие-то, думаю в кодировке не той, переделал кодировку в UNICODE из CHAR в WCHAR а так закорючки какие-то.
Здравствуйте, Buggy, Вы писали:
B>Здравствуйте, pjBrain, Вы писали:
B>>Здравствуйте, Buggy, Вы писали:
B>>>Здравствуйте, Buggy, Вы писали:
B>>>>Как взять md5 в Windows Mobile 5.0? Что-то я в SDK на WM не нашел CryptoAPI. B>>>забыл написать. На VC++
B>>OS Versions: Windows CE 2.10 and later. B>>Header: Wincrypt.h. B>>Link Library: Coredll.lib.
B>>
B>Спасибо за исходник B>Только что-то он не толи выводит, я делаю: B>MessageBox(NULL, (LPCWSTR)cHash, 0,0); выводятся мне квадратики какие-то, думаю в кодировке не той, переделал кодировку в UNICODE из CHAR в WCHAR а так закорючки какие-то.
iSize — длина результата. Мне кажется не iSize, а наверное cb.
Помогите, я сделал для вывода следущее:
Токо вот почему-то у меня там 31 цифорка-буковка а должно быть 32. Сверил с командой md5 -s buggy в Unix там выводит:
f213f9ec3b95a60f10ded0275b8f14ac а у меня выводит
f213f9ec3b95a6f10ded0275b8f14ac где пропуск равен
f213f9ec3b95a6 f10ded0275b8f14ac где пробел.. почему? вроде по BYTE последовательно прохожу..
Здравствуйте, Buggy, Вы писали:
B>Сделал пустяк оказался по невнимательности..
B>Токо вот почему-то у меня там 31 цифорка-буковка а должно быть 32. Сверил с командой md5 -s buggy в Unix там выводит: B>f213f9ec3b95a60f10ded0275b8f14ac а у меня выводит B>f213f9ec3b95a6f10ded0275b8f14ac где пропуск равен B>f213f9ec3b95a6 f10ded0275b8f14ac где пробел.. почему? вроде по BYTE последовательно прохожу..
Здравствуйте, Buggy, Вы писали:
B>Сделал пустяк оказался по невнимательности..
B>Токо вот почему-то у меня там 31 цифорка-буковка а должно быть 32. Сверил с командой md5 -s buggy в Unix там выводит: B>f213f9ec3b95a60f10ded0275b8f14ac а у меня выводит B>f213f9ec3b95a6f10ded0275b8f14ac где пропуск равен B>f213f9ec3b95a6 f10ded0275b8f14ac где пробел.. почему? вроде по BYTE последовательно прохожу..
Я привожу к читабельному виду так:
CString ArrayToHEX(BYTE* pData, int iSize)
{
const WCHAR achHex[] = L"0123456789ABCDEF";
CString szHEX;
if (iSize && pData)
{
PWSTR pszHEX = szHEX.GetBuffer(iSize << 1);
int iPos = 0;
int iOutPos = 0;
while (iPos < iSize)
{
BYTE b = pData[iPos++];
pszHEX[iOutPos++] = achHex[(b >> 4) & 0x0f];
pszHEX[iOutPos++] = achHex[b & 0x0f];
}
szHEX.ReleaseBuffer();
}
return szHEX;
}