2

アプリケーション「A driver Installer and Uninstaller Application」を実行すると、exe が正常に終了すると、「Program Compatibility Assistant」ウィンドウが表示されます。SO リンクとグーグルを調べた後、Vista 32 で「Program Compatibility Assistant」ウィンドウを回避する解決策を見つけることができませんでした。以下のマニフェストを使用して PCA を回避しましたが、期待どおりに動作します (Windows 7 で PCA ウィンドウが表示されません)。 windows vista 32以外は?これを機能させるにはどうすればよいですか?

インストーラー アプリケーションに以下のマニフェストを使用した後、Windows 7 で PCA ウィンドウが表示されませんが、Windows Vista 32 ビットでは表示されます。vista32 で PCA ウィンドウを回避するには?

関連する質問は次のとおりです。

使用したマニフェストは次のとおりです。

 <?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">
  <assemblyIdentity version="1.0.0.0" name="Unins.exe"/>
  <trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
    <security>
      <requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">
        <requestedExecutionLevel level="highestAvailable" uiAccess="false" />
      </requestedPrivileges>
    </security>
  </trustInfo>
  <compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1">
    <application>
      <!--The ID below indicates application support for Windows Vista -->
      <supportedOS Id="{e2011457-1546-43c5-a5fe-008deee3d3f0}"/>
      <!--The ID below indicates application support for Windows 7 -->
      <supportedOS Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}"/>
    </application>
  </compatibility>
</asmv1:assembly>

以下は、私が取得した PCA ウィンドウのスナップショットです...

PCA ウィンドウのスナップショット

更新 : PCA ウィンドウの根本的な原因は、「インストーラーが [プログラムの追加と削除] にエントリを作成していません」です。「プログラムの追加と削除」にエントリを作成するようにアプリを作成しましたが、PCA ウィンドウが表示されません。しかし、プログラムの追加と削除にエントリを作成したくありません。

25-09-12 更新:A.exe OS のアーキテクチャを検出し、どちらかを呼び出すアーキテクチャに依存 する実行可能ファイル sayがありますA64.exe or A86.exe。この場合、すべての exe ( A.exe、A64.exe、A86.exe ) のマニフェストが必要ですか? 現在、A.exe のみのマニフェストがあります。

4

1 に答える 1

2

PCAを完全にオプトアウトするには、3つの実行可能ファイルすべてにマニフェストを含める必要があります。

于 2012-09-25T12:43:32.163 に答える