7zip - os executáveis auto-extraíveis exigem privilégios de administrador e acionam o aviso de compatibilidade

7

Quando eu crio executáveis de archive de extração automática para Windows com 7zip, os .EXEs acionam o UAC no Windows7. E freqüentemente depois de descompactar, eu entendo isso:

Estou usando a linha de comando como: 7z a -sfx7z.sfx dir\ . Por que essas coisas estão acontecendo e posso corrigi-las?

    
por Mr. Boy 17.03.2014 / 23:31

2 respostas

3

Você pode querer desativar este aviso, se assim for, siga os passos abaixo.

  1. Abra o Service Manager (pressione +R,digiteservices.mscepressioneDigite).
  2. PesquiseProgramCompatibilityAssistanceServicenalista.
  3. CliquecomobotãodireitodomousenesseserviçoeselecioneStop.
  4. Agora,cliquenovamentecomobotãodireitodomouseemProgramCompatibilityAssistanceServiceeselecioneProperties.
  5. NaguiaGeneralnaseçãoStartuptype,cliquenomenususpensoeselecioneDisabled.
  6. CliqueemApplythenOK.

Observação:aAssistênciadeCompatibilidadedeProgramamonitoraosprogramasquantoaproblemasdecompatibilidadeconhecidosepodesermuitobenéficaparaosusuáriosfinais.Estadicaédestinadaausuáriosavançados.

Outra probable solution é incorporar um arquivo de manifesto para evitar esse alerta. Algo parecido com isto:

<?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>

Como incorporar o application manifest ao meu executável?

Você pode usar esse utilitário ( mt.exe (supondo que você tenha o sdk instalado) da Microsoft para fazer isso. Você usaria um comando semelhante como este:

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

Outras considerações

  • Considere usar este programa ( 7z SFX-Creator ), de acordo com este página: arquivos de extração automática criados não causarão mais o alerta PCA .
  • Veja se o IExpress pode ser útil para você
por 18.03.2014 / 13:31
3

Seu arquivo de extração automática provavelmente contém setup ou install em seu nome de arquivo. Nesse caso, o Windows espera que ele instale um aplicativo.

Se o Windows não detectar “atividade habitual do instalador”, ele pressupõe que a instalação falhou devido à falta de privilégios de administrador. Essa é a razão pela qual ele solicita a repetição da instalação usando as configurações recomendadas , com privilégios elevados.

Essa heurística é usada quando o executável não tem o elemento requestedExecutionLevel em seu manifesto .

Esses problemas podem ter sido corrigidos em uma versão mais nova do módulo de auto-extração 7zip.

    
por 24.03.2018 / 01:18