REGKey: Colocando seu aplicativo rodando como Administrador.

Aqui você poderá oferecer suas Contribuições, Dicas e Tutoriais (Texto ou Vídeo) que sejam de interesse de todos.

Moderador: Moderadores

Avatar do usuário
rochinha
Administrador
Administrador
Mensagens: 4664
Registrado em: 18 Ago 2003 20:43
Localização: São Paulo - Brasil
Contato:

REGKey: Colocando seu aplicativo rodando como Administrador.

Mensagem por rochinha »

Amiguinhos,

Neste REGKey voce configura um aplicativo e diretorio para ser executado sem aquelas perguntas chatas, "Deseja executar blablabla..."

Código: Selecionar todos

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags]
[HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers]
"C:\\Arquivos de programas\\MeuSistema\\SISTEMA.EXE"="RUNASADMIN"
"C:\\Arquivos de programas\\MeuSistema\\INDEXA.EXE"="RUNASADMIN"
[HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers\C:]
[HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers\C:\Arquivos de programas]
[HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers\C:\Arquivos de programas\MeuSistema]
"sistema.exe"="RUNASADMIN"
"indexa.exe"="RUNASADMIN"
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para [url=mailto://fivolution@hotmail.com]fivolution@hotmail.com[/url]. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Avatar do usuário
Pablo César
Usuário Nível 7
Usuário Nível 7
Mensagens: 5312
Registrado em: 31 Mai 2006 10:22
Localização: Curitiba - Paraná

REGKey: Colocando seu aplicativo rodando como Administrador.

Mensagem por Pablo César »

Ahhh Muito boa dica Rochinha !

Obrigado por compartilhar. :)
Um clip-abraço !

Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
julianocf
Usuário Nível 1
Usuário Nível 1
Mensagens: 7
Registrado em: 11 Ago 2011 14:52
Localização: Ubatuba SP

REGKey: Colocando seu aplicativo rodando como Administrador.

Mensagem por julianocf »

Grande Rochinha, ótima dica! :D

Só vou adicionar uma observação para quem usa essa dica em um programa executado de uma unidade de rede mapeada e com UAC ativado, quando for buscar pelo diretório do programa, será retornado no modo UNC (\\server\C\programa) e não Z:\Programa;

Att,
Juliano
Avatar do usuário
clodoaldomonteiro
Usuário Nível 4
Usuário Nível 4
Mensagens: 821
Registrado em: 30 Dez 2006 13:17
Localização: Teresina-PI
Contato:

REGKey: Colocando seu aplicativo rodando como Administrador.

Mensagem por clodoaldomonteiro »

Rochinha,
Tem como colocar isso direto no instalador?
No innosetup por exemplo?
At. Clodoaldo Monteiro
Linguagens: Clipper / Harbour
Área de Atuação: Sistemas de gestão para Prefeituras Municipais
Fones: (86)3223-0653, 98859-0236
www.simplesinformatica.com.br
Avatar do usuário
rochinha
Administrador
Administrador
Mensagens: 4664
Registrado em: 18 Ago 2003 20:43
Localização: São Paulo - Brasil
Contato:

REGKey: Colocando seu aplicativo rodando como Administrador.

Mensagem por rochinha »

Amiguinho,

Veja o exemplo:

Código: Selecionar todos

[Setup]
...

[Languages]
Name: "brazilianportuguese"; MessagesFile: "compiler:languages\BrazilianPortuguese.isl"

[Run]
...

[Icons]
...

[Files]
...

[code]
var
  path:String;

procedure UAC(ativar:Boolean);
var
  versao:Cardinal;
  valor:Cardinal;
begin
  versao:=GetWindowsVersion() shr 24;
  if versao=6 then
  begin
    valor:=0;
    if RegQueryDWordValue(HKLM,'Software\Microsoft\Windows\CurrentVersion\Policies\System','EnableLUA',valor) then
    begin
        if (valor<>0) and (not ativar) then
           RegWriteDWordValue(HKLM,'Software\Microsoft\Windows\CurrentVersion\Policies\System','EnableLUA',0);
        if (valor<>1) and (ativar) then
           RegWriteDWordValue(HKLM,'Software\Microsoft\Windows\CurrentVersion\Policies\System','EnableLUA',1);
    end;
  end;
end;

function getPath(Param: String):String;
begin
  Result:=path;
end;

function InitializeSetup():Boolean;
begin
  path:='none';
  UAC(False);
  //if RegQueryStringValue(HKLM,'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{D79922B6-22F2-49B8-ABE0-6F572932C6EF}_is1','Inno Setup: App Path',path) then
  //begin
  //  if  CompareText(path,'none')<>0 then
      Result:=true
  //  else
  //  begin
  //    MsgBox('Nenhuma instalaçao do FENIX 10 foi encontrada! Esta atualizaçao será abortada!', mbError, MB_OK);
  //    //abort();
  //  end;
  //end
  //else
  //begin
  //  MsgBox('Nenhuma instalaçao do FENIX 10 foi encontrada! Esta atualizaçao será abortada!', mbError, MB_OK);
  //  //abort();
  //end;
end;

procedure DeinitializeSetup();
begin
  UAC(True);
  //MsgBox('Atualizaçao Finalizada!',mbInformation, MB_OK);
end;
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para [url=mailto://fivolution@hotmail.com]fivolution@hotmail.com[/url]. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Avatar do usuário
fladimir
Colaborador
Colaborador
Mensagens: 2445
Registrado em: 15 Nov 2006 20:21

REGKey: Colocando seu aplicativo rodando como Administrador.

Mensagem por fladimir »

Rochinha fiquei na dúvida se isso q vc postou aki é relacionado a este outro tópico deste link... sobre rodar como Adm o sistema e no caso qual a relação disso com UAC?

Pelo q eu entendi neste tópico vc abrange a questão de já instalar desabilitando o UAC e deixando pra rodar como Adm é isso?

[]´s
Sun Tzu há mais de três mil anos cita nas epígrafes de seu livro “A Arte da Guerra“:

“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”
.


Até 2017    Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL


Novos Projetos:

   Desktop Visual           Windev Desktop
   Celular Android/iOS   Windev Mobile
   WEB                            Windev Web


Sejamos gratos a Deus.
Avatar do usuário
rochinha
Administrador
Administrador
Mensagens: 4664
Registrado em: 18 Ago 2003 20:43
Localização: São Paulo - Brasil
Contato:

REGKey: Colocando seu aplicativo rodando como Administrador.

Mensagem por rochinha »

Amiguinhos,

A solução proposta define diretamente no registro que uma aplicação deva ser considerada como de uso elevado.

Só vai depender se o Windows estiver de bom humor e permitir a execução já elevada sem reiniciar.
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para [url=mailto://fivolution@hotmail.com]fivolution@hotmail.com[/url]. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Responder