C++builder中使用SysAllocString(OLESTR(""))
问题是在C++builder中发现的:
AnsiString FN="D:\\temp\\abc.txt";
BSTR dbFileName =SysAllocString(OLESTR(FN));
总是提示:Undefined symbol 'LFN'
如果将(OLESTR(FN))中的FN直接换成"D:\\a.txt"是可以的,想问的是不是不能用变量来替换OLESTR(" ")中的参数?
求高手答疑,谢谢!
[解决办法]
OLESTR是一个宏。换成以下方式就行了:
AnsiString FN = "D:\\temp\\abc.txt";
BSTR dbFileName = SysAllocString(WideString(FN));
记的用完了以后释放:
SysFreeString(dbFileName);