msigetActiveDatabase 函数 (msiquery.h)

MsiGetActiveDatabase 函数返回用于安装的活动数据库。 此函数返回应使用 MsiCloseHandle 关闭的只读句柄。

语法

MSIHANDLE MsiGetActiveDatabase(
  [in] MSIHANDLE hInstall
);

parameters

[in] hInstall

提供给 DLL 自定义操作或通过 MsiOpenPackage、MsiOpenPackageExMsiOpenProduct 获取的安装的句柄。

返回值

如果函数成功,它将向安装程序当前正在使用的数据库返回只读句柄。 如果函数失败,该函数将返回零,0。

注解

MsiGetActiveDatabase 函数通过运行安装访问正在使用的数据库。

请注意,建议使用 PMSIHANDLE 类型的变量,因为安装程序在 PMSIHANDLE 对象超出范围时会关闭这些对象,而必须通过调用 MsiCloseHandle 关闭 MSIHANDLE 对象。 有关详细信息,请参阅 Windows Installer 最佳做法中的使用 PMSIHANDLE 而非 HANDLE 部分。

要求

   
最低受支持的客户端 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

请参阅

常规数据库访问函数