動作環境
C++ Builder XE4
UnicodeString文字列のHash値をMD5で求めたい。
バージョンXEについてはこちらの通りでいい。
XE4になるとIndyの部分が変わってくるため、以下のようにする。
#include <IdHashMessageDigest.hpp> // for MD5
String msg;
msg = L"Hello, world";
TIdHashMessageDigest5 *md5;
md5 = new TIdHashMessageDigest5();
String hash = md5->HashStringAsHex(msg, IndyTextEncoding(TEncoding::ASCII)).LowerCase();
ShowMessage(hash);
訂正
(追記 2018/11/14)
上記ではnewしたままなので、delete md5
をした方が良さそう。