インストーラの一部としていくつかのDLLを登録しようとしています。私はregserver
フラグを使用しており、ほとんどのDLLのために完全に動作します。ただし、1つのDLLが登録に失敗します。他のDLLを読み込もうとしますが、現在のディレクトリで見つからなければ失敗します。 regsvr32を{app}ディレクトリから手動で実行するときれいに登録されます。Innoセットアップ:特定の作業ディレクトリでregsvr32を実行します。
regserverフラグの作業ディレクトリを設定する方法はありますか?またはインストーラ全体ですか?
今のところ、私は[Run]
エントリ経由でラウンド働いている:
[Run]
;Register components that are "special"
Filename: "{sys}\Regsvr32.exe"; Parameters: "/s Awkward.dll"; WorkingDir: "{app}"; StatusMsg: "Registering components ... "; Flags: runhidden;
しかし、私は、私はまた[UninstallRun]
セクションを追加し、unregesterコマンドを追加するべきである疑いがあるとして、これは、理想的ではありません。私はできると思った:
[Files]
Source: "{#mysrc}\Awkward.dll"; DestDir: "{app}"; Flags: regserver; WorkingDir: "{app}"
特定のディレクトリから簡単に登録/登録解除する方法はありますか?
残念ながら、ワーキングフォルダの問題を抱えているサードパーティのDLLは、修正できません。 :( – Grhm