2016-09-01 4 views
5

アップグレード中にInnoセットアップインストーラ(5.5.1(a))を使用しています。.exeを置き換えています。 exeがロックされると、エラーが表示されますInno Setupサイレントインストール中に次の再起動に置き換えられるファイルを延期

DeleteFileに失敗しました。コード5
アクセスが拒否されました。
中止、再試行は、

サイレントアップグレード中にメッセージを抑制するためにどのように私を助けてください無視します。サイレントインストール時には、デフォルトではを無視します。無視すると、オプションは無視されます。

enter image description here

答えて

3

ファイルを無視/スキップすることは意味がありません。アップグレード中に交換する必要があると思いますか?


あなたはサイレントと非サイレントインストールのためのさまざまなエントリ持つことができます。

[Files] 
Source: C:\path\MyProg.exe; Dest: {app}; Check: not WizardSilent 
Source: C:\path\MyProg.exe; Dest: {app}; Flags: restartreplace; Check: WizardSilent 
+0

Ty、はいアップグレード中に交換する必要がありますので、最善の方法は[ファイル]セクションにあります特定の.exeがrestartreplaceフラグを使用し、サイレントアップグレード中にWizardSilentがエラーを表示しない – Abhi

+0

Appmutexは何をしますか?以前の提案よりも優れていますか? – Abhi

+0

ミューテックスが存在する場合(=ミューテックスを作成するアプリケーションがまだ実行中の場合)、セットアップが実行されないようにします。 –

0

ほとんどの場合、ファイルがまだ実行されているため、実行可能ファイルを置き換えることができません。なぜあなたはBeforeInstallを通してそのプロセスを殺すのですか?あなたががそのファイルを変更するいかなる権利を持っていないので、あなたの問題がある場合

Kill process before (re)install using "taskkill /f /im" in Inno Setup

このアプローチは助けにはなりません。

+0

ありがとうございましたが、私はSUPPRESSMSGBOXできるように、他の方法があります。以前の[ファイル]セクションの[再起動]フラグは、サイレントインストール時に役立ちます – Abhi

+0

上記の添付ファイルは、windowsまたはinnosetupのエラーです。管理者ではなく、ユーザーによるサイレントインストールを行っています。 – Abhi

+0

あなたはプログラムファイルにユーザとしてインストールすることはできません – Fritzw

関連する問題