studio que permisos example app manifest

que - Acerca del archivo Manifest



web app manifest (1)

[Soy el actual mantenedor de SxS en Microsoft]

Buena investigación, Yigang. Está describiendo el comportamiento en Vista, no en XP SP3.

Probar la existencia de un manifiesto cada vez que se ejecuta una aplicación sería un problema de rendimiento, ya que generalmente las aplicaciones tienen un manifiesto o no, y ese estado no cambia mucho. Por esta razón, en Vista, la primera vez que se ejecuta una aplicación, almacenamos en caché un bit que describe "esta aplicación tiene un manifiesto asociado" o "esta aplicación no tiene un manifiesto". Cuando ejecutó graphedt.exe la primera vez, Windows guardó en caché la ausencia de un manifiesto y, posteriormente, no buscará uno. Para restablecer el caché, actualice la última hora modificada en el ejecutable.

Recientemente, me encontré con un problema muy extraño, este problema solo ocurre en Windows XP SP3 y Vista. Aquí están mis pasos:

  1. Cree dos nuevas carpetas en el escritorio (suponga que los nombres de las carpetas son A y B)
  2. Copie la aplicación Microsoft GraphEdit ( graphedt.exe ) en una carpeta, luego cree también un archivo graphedt.exe.manifest vacío. Ejecute graphedt.exe , verá un mensaje de error, el graphedt.exe no se puede ejecutar debido al manifiesto incorrecto.
  3. Copie la aplicación Microsoft GraphEdit ( graphedt.exe ) en la carpeta B, ejecute graphedt.exe y graphedt.exe , luego cree un archivo graphedt.exe.manifest vacío, ejecute graphedt.exe nuevo, verá que el archivo de manifiesto no se puede aplicar a graphedt.exe . Pero si cambia la última hora modificada de graphed.exe , el manifiesto funcionará nuevamente.

Parece que Windows recordará el estado la primera vez que el EXE utiliza un archivo de manifiesto, pero también Windows restablecerá el antiguo estado de recuerdo si cambia el tamaño de EXE o la fecha de la última modificación.