【初心者歓迎】C/C++室 Ver.50【環境依存OK】
■ このスレッドは過去ログ倉庫に格納されています
0076デフォルトの名無しさん
2008/02/29(金) 15:06:52>unsigned char* outBuf = (unsigned char*)malloc(sizeof(lpszInputStr));
俺unix屋だから windows のこと詳しくないけど
lpszInputStr は LPTSTR だからポインタだと思うよ。
上のコードのしていることは文字列の分ではなく
ポインタのサイズの分をmallocで確保している。多分4バイトくらい。
まず文字列のバイト数を正しく求めることから始めないといけないんじゃないかな。
size_t size_of_in = sizeof(TCHAR) * (lstrlen(lpszInputStr)+1); // NUL 文字に+1文字分
あと outBuf には暗号化されたバイナリが入るだろうから
printf("%S") ではうまく表示されないと思うよ。バイナリで扱わないと。
他にも暗号化単位やバイトオーダーなども問題になるかもしれないよ。
■ このスレッドは過去ログ倉庫に格納されています