WinZip 自己解凍型アーカイブ (SFX) を使用してソフトウェアを配布しています。
私はこれとそれを認識しています。しかし、それらは SFX シナリオでは機能しないようです。
インストール中に、SFX は、インストールを実行する (私が作成した) 含まれているプログラムを解凍して起動します。これには、Windows コントロール パネルの下にあるプログラム リストのレジストリ エントリの作成が含まれます。さらに、プログラムにはマニフェストがあります。したがって、「Vista-aware」にする必要があります。SFX 実行可能ファイルには、マニフェストも含まれています。
問題は、Program Compatibility Assistant (PCA) が
"This program might not have installed correctly"とにかくメッセージをスローすることです。だから私の顧客は私が悪いプログラマだと言っています...
私はよくグーグルで検索し、多くのマイクロソフトのサイトを含め、PCA について多くのことを読みました。
それらは私にやるように言います:
- マニフェストを埋め込む
- Windows コントロール パネルの下にあるプログラム リストのレジストリ エントリを作成します。
私のマニフェストは次のようになります。
<?xml version="1.0" encoding="utf-8"?>
<asmv1:assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1" xmlns:asmv1="urn:schemas-microsoft-com:asm.v1" xmlns:asmv2="urn:schemas-microsoft-com:asm.v2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
<security>
<applicationRequestMinimum>
<defaultAssemblyRequest permissionSetReference="Custom" />
<PermissionSet class="System.Security.PermissionSet" version="1" Unrestricted="true" ID="Custom" SameSite="site" />
</applicationRequestMinimum>
<requestedPrivileges>
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
</requestedPrivileges>
</security>
</trustInfo>
</asmv1:assembly>
それで、どこで間違ったのですか?
PCA のために他にやるべきことはありますか?
SFX 実行可能ファイルには、他のものを含める必要がありますか?

