2

私は現在Wixを初めて使用し、インストールプロセスの最後に実行する必要があるvbsスクリプトに問題があります。

私はこれまでに何を持っていますか:

msiファイルにいくつかのファイルとレジストリ呼び出しを挿入することができました。インストールプロセスは正常に機能し、すべてのファイルが適切なフォルダに保存され、レジストリが更新されています。今、私はインストールプロセスの最後にvbsスクリプトを呼び出そうとしています。スクリプト自体は特別なものではありません。初心者にとっては、メッセージボックスを表示するだけです。

このドキュメントの前にカスタムアクションを作成しました(カスタムアクションタイプ6): http: //blogs.technet.com/b/alexshev/archive/2008/02/21/from-msi-to-wix-part-5- custom-actions.aspx

msiファイルを実行すると次のように表示されます。

'このWindowsインストーラパッケージに問題があります。このインストールを完了するために必要なスクリプトを実行できませんでした。サポート担当者またはパッケージベンダーに連絡してください。

私は次のようにwixでスクリプトを実装して実行しようとしました:

<Binary Id="dasd" SourceFile="C:\Dokumente und Einstellungen\administrator\Desktop\dasd.vbs" />
<CustomAction Id="DoSomething" BinaryKey="dasd" HideTarget="no" Impersonate="no" VBScriptCall="" Execute="deferred" Return="check" />
    <InstallExecuteSequence>
        <Custom Action="DoSomething" Before="InstallFinalize" />
    </InstallExecuteSequence>

属性「VBScriptCall」の値は以前は「Main」でした。'Main'という関数を使用していないため、削除しました。'Main'は完全なスクリプトを実行するだけだと思いました。ただし、「メイン」を使用しても、使用しない場合も機能しません。

(msiファイルの実行中に)ファイルシステムにスクリプトファイルを置く必要がないという印象を受けています。ここで間違っていてもいいですか?

ここで何が悪いのか誰かが理解できますか?

よろしく、マーカス

4

2 に答える 2

1

あなたの仮定は間違っています: 「(msi ファイルの実行中に) ファイル システムにスクリプト ファイルを配置する必要はないという印象を受けました。ここで間違っている可能性がありますか?」

ファイルはファイル システムに存在する必要があります。あなたのWIXスクリプトを使用して特定の場所にコピーすると、すべてうまくいくはずです。

于 2012-12-06T16:57:17.340 に答える
0

最後に、私は問題を解決することができました。vbs スクリプトへのパスが間違っていました:

<Binary Id="dasd" SourceFile="C:\Dokumente und codeEinstellungen\administrator\Desktop\dasd.vbs" />

wxs ファイルのパスを手動で 'C:\Dokumente und Einstellungen[...]\dasd.vbs' に編集してしまいました。WixEdit はそれを「dasd.vbs」に設定するだけで、この場合は正しいです。

たぶん、誰かがこれが役に立ち、ケースを解決するためにあまり長く検索する必要がないかもしれません;-)。

よろしく、 マーカス

于 2012-12-10T13:17:14.707 に答える