Installer::P rovideAssembly 方法
Installer物件的ProvideAssembly方法會傳回元件的已安裝路徑。
語法
retVal = .ProvideAssembly(
assembly,
appContext,
installMode,
assemblyInfo
)
參數
-
裝配
-
要查詢之已安裝元件的強式名稱。
-
appCoNtext
-
針對通用群組件設定為 null。 針對私人元件,請將 appCoNtext 設定為應用程式組態檔的完整路徑,或設定為元件已設為私用的應用程式可執行檔的完整路徑。
-
installMode
-
定義安裝模式。 此參數可以是下列其中一個值。
值 意義 - msiInstallModeDefault
- 0
提供元件,並執行提供元件所需的任何安裝。 - msiInstallModeExisting
- -1
只有在功能存在時,才提供元件。 此選項會驗證元件是否存在。 - msiInstallModeNoDetection
- -2
只有在功能存在時,才提供元件。 此選項不會驗證元件是否存在。 - msiInstallModeNoSourceResolution
- -3
只有在安裝本機組件時,才提供元件。 呼叫 ReinstallFeature 方法,使用此參數重新安裝 重新安裝Mode的功能,然後傳回元件路徑。 -
assemblyInfo
-
元件資訊和元件類型。 會設定為下列其中一個值。
值 意義 - msiProvideAssemblyNet
- 0
.NET 元件。 - msiProvideAssemblyWin32
- 1
Win32 並存元件。
傳回值
已安裝元件的路徑。
備註
ProvideAssembly方法會使用MsiProvideAssembly 函式。
範例
下列範例腳本示範使用 ProvideAssembly 方法。
Dim installer
Set installer = CreateObject("WindowsInstaller.Installer")
'
' ProvideAssembly - .NET global
'
MsgBox Installer.ProvideAssembly("System.Security,Version=""1.0.5000.0"",PublicKeyToken=""b03f5f7f11d50a3a"",Culture=""neutral"",FileVersion=""1.1.4322.573""", vbNullString, 0, 0)
'
' ProvideAssembly - .NET private
'
MsgBox Installer.ProvideAssembly("Sample,Version=""1.0.0.0"",Culture=""neutral""", "C:\Program Files\Microsoft\Sample\Sample.exe", 0, 0)
'
' ProvideAssembly - win32 global
'
MsgBox Installer.ProvideAssembly("Microsoft.MSXML2,publicKeyToken=""6bd6b9abf345378f"",version=""4.1.0.0"",type=""win32"",processorArchitecture=""x86""", vbNullString , -2, 1)
規格需求
需求 | 值 |
---|---|
版本 |
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 4.5 |
DLL |
|
IID |
IID_IInstaller定義為 000C1090-0000-0000-C000-000000000046 |
另請參閱