ソフトウェアを (Wix) インストールしたい 2 つの仮想マシンがあります。1 つは Windows XP SP2 で、もう 1 つは Windows XP SP1 です。どちらもドメインを使用しておらず、どちらも管理者権限を持つローカル ユーザー管理者を持っています。
RegAsm.exe を実行して MyApp.dll を SP3 のマシンに登録すると、ProgId が次のフォルダーに配置されます。
HKEY_CLASSES_ROOT\MyAppProgId
HKEY_LOCAL_MACHINE\Software\Classes\MyAppProgId
一方、SP2 マシンで実行すると、次のフォルダーに配置されます。
HKEY_CLASSES_ROOT\MyAppProgId
HKEY_CURRENT_USER\Software\Classes\MyAppProgId
サービスから MyApp.dll を読み込もうとしているときに、これを見つけました。RegAsm.exe と Heat.exe から生成されたレジストリ ファイルは、どちらも HKEY_CLASSES_ROOT を更新しているようです。
誰がこれを引き起こす可能性があるか知っていますか?
編集: HKCR の代わりに HKEY_LOCAL_MACHINE に直接書き込むことで、これを回避することになりました。これには、生成された .reg ファイルまたは .wxs ファイルを手動で編集することが含まれていました。