msidatabaseOpenViewW 函数 (msiquery.h)
MsiDatabaseOpenView 函数准备数据库查询并创建视图对象。 此函数返回应使用 MsiCloseHandle 关闭的句柄。
语法
UINT MsiDatabaseOpenViewW(
[in] MSIHANDLE hDatabase,
[in] LPCWSTR szQuery,
[out] MSIHANDLE *phView
);
参数
[in] hDatabase
要打开视图对象的数据库的句柄。 可以获取句柄,如 获取数据库句柄中所述。
[in] szQuery
指定用于查询数据库的 SQL 查询字符串。 有关正确的语法,请参阅 SQL 语法。
[out] phView
指向返回视图的句柄的指针。
返回值
MsiDatabaseOpenView 函数返回以下值之一:
注解
MsiDatabaseOpenView 函数打开数据库的视图对象。 在执行任何执行或提取操作之前,必须打开数据库的视图对象。
如果发生错误,可以调用 MsiGetLastErrorRecord 以获取详细信息。
请注意,建议使用 PMSIHANDLE 类型的变量,因为安装程序在 PMSIHANDLE 对象超出范围时会关闭它们,而必须通过调用 MsiCloseHandle 关闭 MSIHANDLE 对象。 有关详细信息,请参阅 Windows Installer 最佳做法中的使用 PMSIHANDLE 而非 HANDLE 部分。
如果函数失败,可以使用 MsiGetLastErrorRecord 获取扩展的错误信息。
注意
msiquery.h 标头将 MsiDatabaseOpenView 定义为别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将非特定编码别名与非非特定编码的代码混合使用可能会导致不匹配,从而导致编译或运行时错误。 有关详细信息,请参阅 函数原型的约定。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows Server 2012、Windows 8、Windows Server 2008 R2 或 Windows 7 上的 Windows Installer 5.0。 Windows Server 2008 或 Windows Vista 上的 Windows Installer 4.0 或 Windows Installer 4.5。 Windows Server 2003 或 Windows XP 上的 Windows Installer |
目标平台 | Windows |
标头 | msiquery.h |
Library | Msi.lib |
DLL | Msi.dll |
另请参阅
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈