誰かがMSIでカスタムアクションを作成するのを手伝ってもらえますか?インストールが成功した後、Xの場所に自分自身をコピーします。.exeを使用して実行できることはすでに見てきましたが、このexeはオーバーヘッドになるため、CA.DLL(C#)でのみ実行したいと思います。
質問する
467 次
1 に答える
2
インストールされている製品を名前で検索し、キャッシュされた MSI のコピーをコピーする VB スクリプトの例を次に示します。完全な MSI がキャッシュされ、埋め込まれた cab ファイルが MSI に残るため、これは Windows 7 以降で機能します。古いシステムでは、ペイロードなしで MSI を取得するだけです。
Dim installer, products, product, productCode
Set installer = Wscript.CreateObject("WindowsInstaller.Installer")
For Each productCode In installer.Products
If InStr(1, LCase(installer.ProductInfo(productCode, "ProductName")), LCase("My Product Name")) Then Exit For
Next
If IsEmpty(productCode) Then Wscript.Quit 2
Set products = installer.ProductsEx(productCode, "", 7)
filesys.copyFile products(0).InstallProperty("LocalPackage"), "c:\path\to\newcopy.msi"
于 2012-07-13T21:19:03.560 に答える