問題: 代替 GINA をアンインストールした後、WIX 3.0 インストーラーを使用すると、ログオンした直後にログオフされます。
Windows XP 用の代替ログイン プロセス (GINA) があります。システム ディレクトリ C:\windows\system32\NewGina.dll とレジストリ エントリ (HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\Winlogon\GinaDLL=NewGina.dll) に置かれた単一のファイルで構成されており、手動で問題はありません。インストールして実行し、手動でアンインストールして通常どおりログインします。
VS2008 で Microsoft インストーラー パッケージを使用してインストーラーを作成することもできますが、インストール、ログイン、アンインストール、ログインは正常に機能します。
私が抱えている問題は、Wix インストーラーを使用し、インストール、ログイン、アンインストール、およびログインすると、ログイン直後にログアウトされることです。すぐにログアウトした後、リモート regedit に接続してレジストリをダンプすることができました。Wix インストーラーが何をしていたかを発見することを期待して、レジストリーの前後で比較を試みましたが、アクションと変更 (約 35,000) を分析するのは少し広範囲でした。レジストリ行 (上記) はなくなり、Windows は元の msgina.dll に戻るはずです。
プロジェクトの残りの部分は Wix Installer を使用しているので、それを使用したいと考えています。
これを機能させ、自動ログオフを回避する方法についてのアイデアはありますか?
ありがとう
APB
私のWixスクリプトは次のようになります
<Package InstallerVersion="200" Compressed="yes" />
<Condition Message="This application is only supported on Windows XP">
<![CDATA[(VersionNT = 501)]]>
</Condition>
<InstallExecuteSequence>
<ScheduleReboot After="InstallFinalize"/>
</InstallExecuteSequence>
<Media Id="1" Cabinet="NewGina.cab" EmbedCab="yes" />
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="SystemFolder">
<Component Id="NewGina" Guid="cdbdfbe9-8137-4305-98cb-a05618ea0ade" >
<File Source="..\NewGina\Release\NewGina.dll" Checksum="yes" />
</Component>
<Component Id="RegistryEntries" Guid="cdbdfbe9-8137-4305-98cb-a05618ea0adf" >
<RegistryKey Root="HKLM" Key="SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" Action="createAndRemoveOnUninstall">
<RegistryValue Type="string" Name="GinaDLL" Value="NewGina.dll" />
</RegistryKey>
</Component>
</Directory>
</Directory>
<Feature Id="NewGina" Title="NewGina" Level="1" >
<ComponentRef Id="NewGina" />
<ComponentRef Id="RegistryEntries" />
</Feature>