-
22-09-2019 - |
質問
ATL.DLLがマシンに登録されていないため、アプリケーションで配布しているCOM DLLが登録に失敗する問題に駆けつけています。
簡単な修正は、dllで実行regsvr32を持つことですが、少しきれいなものが欲しいです。
展開の経験はあまりありません。ATL.DLLがマシンに登録されているかどうかを判断できる方法があり、コードから登録できない場合は、展開の経験があるのではないかと思っていました。
現在、MSIインストーラーのC#カスタムアクションがあるため、タスクを実行するためにロジックを追加する可能性があります。
前もって感謝します。
解決
正しいものを含める必要があります モジュールをマージします インストーラーと。これらはにインストールされます C:\Program Files\Common Files\Merge Modules
. 。必要なファイルが見つからない場合、おそらくどちらの場合にも「再配分可能なコンポーネント」機能をインストールしていません。 Windows SDK および/またはビジュアルスタジオ(デフォルトでは両方で選択されていないと思います)
ATL90.DLL
で見つけることができますMicrosoft_VC90_ATL_x86.msm
ATL80.DLL
で見つけることができますMicrosoft_VC80_ATL_x86.msm
所属していません StackOverflow