出现
error LNK2001: unresolved external symbol "char * __stdcall _com_util::ConvertBSTRToString(unsigned short *)" ()
错误时,
包含 #pragma comment(lib, "comsupp.lib") 即可 ,FreeLibrary(temp);
I checked if the correct lib (comsuppw.lib) is included. But he already did.
Example
// ConvertStringToBSTR.cpp
#include <comutil.h>
#include <stdio.h>
#pragma comment(lib, "comsupp.lib")
#pragma comment(lib, "kernel32.lib")
int main()
{
char* lpszText = "Test";
printf("char * text: %s\n", lpszText);
BSTR bstrText = _com_util::ConvertStringToBSTR(lpszText);
wprintf(L"BSTR text: %s\n", bstrText);
SysFreeString(bstrText);
}
Output
char * text: Test
BSTR text: Test
本文详细介绍了在C++项目中遇到COM组件导入错误时,如何通过正确使用#pragma comment(lib)来解决问题,并提供了具体示例代码,帮助开发者避免常见的错误提示,如error LNK2001。
1317

被折叠的 条评论
为什么被折叠?



