我正在尝试使用以下代码从MSI安装文件中获取产品和公司信息,但是即使包含必要的头文件,我也始终会遇到以下错误。
error: LNK2019: unresolved external symbol _MsiCloseHandle@4 referenced in function.
error: LNK2019: unresolved external symbol _MsiOpenPackageW@8 referenced in function.
error: LNK2019: unresolved external symbol _MsiGetProductPropertyW@16 referenced in function.
我的代码如下(我正在使用QT C++)
#include <Windows.h>
#include <Msi.h>
#include <MsiQuery.h>
LPCWSTR program = L"C:/installer.msi";
MSIHANDLE hProduct = NULL;
LPWSTR pszVersion = NULL;
LPDWORD dwSizeVersion = NULL;
LPCWSTR property = L"IncludeVersion";
MsiOpenPackage( program, &hProduct );
MsiGetProductProperty( hProduct, property, pszVersion, dwSizeVersion );
MsiCloseHandle( hProduct );
任何想法,我缺少什么或是否有其他方法可以从msi文件获取属性。
最佳答案
您需要链接库。
#pragma comment(lib, "msi.lib")
关于c++ - 获取MSI产品属性,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24627957/