7zip: los ejecutables autoextraíbles requieren privilegios de administrador y advertencia de compatibilidad de activación

7

Cuando creo archivos ejecutables autoextraíbles para Windows con 7zip, los archivos .EXE activan UAC en Windows7. Y con frecuencia después de descomprimir, me sale esto:

ingrese la descripción de la imagen aquí

Estoy usando comandos como: 7z a -sfx7z.sfx dir\. ¿Por qué están sucediendo estas cosas y puedo solucionarlas?

Señor chico
fuente

Respuestas:

3

Es posible que desee deshabilitar esta advertencia, de ser así, siga los pasos a continuación.

  1. Abra el Administrador de servicios (presione + R, escriba services.mscy presione Enter).
  2. Buscar Program Compatibility Assistance Serviceen la lista.
  3. Haga clic derecho en este servicio y seleccione Stop.
  4. Ahora nuevamente haga clic derecho Program Compatibility Assistance Servicey seleccione Properties.
  5. En la Generalpestaña de la Startup typesección, haga clic en el menú desplegable y seleccione Disabled.
  6. Haga clic en Applyentonces OK.

Nota: La Asistencia de compatibilidad de programas supervisa los programas en busca de problemas de compatibilidad conocidos y puede ser muy beneficioso para los usuarios finales. Este consejo está dirigido a usuarios avanzados.


Otra probable solutiones incrustar un archivo de manifiesto para evitar esta alerta. Algo como esto:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> 
  <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> 
    <compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1"> 
      <application> 
        <!--The ID below indicates application support for Windows 7 --> 
          <supportedOS Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}"/> 
      </application> 
    </compatibility>
  </assembly>

¿Cómo incrustar el application manifesten mi ejecutable?

Puede usar esta utilidad ( mt.exesuponiendo que tenga instalado el SDK) de Microsoft para hacer esto. Usaría un comando similar como este:

mt.exe  -manifest "foo.manifest" -outputresource:"foo.exe";#1

Otras Consideraciones

  • Considere usar este programa ( 7z SFX-Creator), de acuerdo con esta página: los archivos autoextraíbles creados ya no causarán una alerta de PCA .
  • Vea si IExpress puede ser útil para usted ingrese la descripción de la imagen aquí
stderr
fuente
Deshabilitar la advertencia no ayuda, no se puede esperar que los usuarios finales modifiquen la configuración de su computadora. Nunca he visto esto cuando recibo archivos autoextraíbles, ¿es un error en 7zip? Además, ¿alguna idea de por qué necesita derechos de administrador? La carpeta en cuestión no está protegida como los archivos de programa.
Sr. Boy
1
IExpress es una gran característica gratuita (y semisecreta) en Windows, pero lamentablemente no admite directorios solo una estructura de archivo plano.
Sr. Boy
3

Su archivo autoextraíble probablemente contiene setupo installen su nombre de archivo. En este caso, Windows espera que instale una aplicación.

Si Windows no detecta la "actividad habitual del instalador", se supone que la instalación falló debido a la falta de privilegios de administrador. Esa es la razón por la que solicita volver a ejecutar la instalación utilizando la configuración recomendada , con privilegios elevados.

Esta heurística se usa cuando el ejecutable no tiene requestedExecutionLevelelemento en su manifiesto.

Estos problemas podrían haberse solucionado en una versión más nueva del módulo autoextraíble 7zip.

Alexey Ivanov
fuente