Ir para conteúdo
  • Cadastre-se

dev botao

  • Este tópico foi criado há 4018 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado (editado)

Saudações a todos:

 

O problema: Sob Windows 8, o bloqueio de teclado/mouse não funciona.

 

Testei, inclusive a função BlockInput em um aplicação simples, sem ACBR e realmente não funciona. O problema está no nível de privilégio requerido para que o Windows processe a função.

 

Uma forma de fazer com que o aplicativo funcione é mudar o nível de privilégio do arquivo .exe manualmente (marcando a opção Executar este programa como administrador).

 

O desejável é que o aplicativo não requeira esta mudança.

 

A solução: Ao pesquisar na NET encontrei este artigo bem explicado.(http://www.cesarromero.com.br/embutindo-o-manifesto-na-aplicao-com-delphi/).

Lá tem uma boa explicação do mecanismo de permissões.

Fiz os simples procedimentos e embuti o RES na minha aplicação.

 

abaixo um exemplo .dpr simples com a adição do RES

 

program Project1;
 
uses
  Vcl.Forms,
  Unit2 in 'Unit2.pas' {Form2};
 
{$R *.res}
{$R UAC.res}
 
begin
  Application.Initialize;
  Application.MainFormOnTaskbar := True;
  Application.CreateForm(TForm2, Form2);
  Application.Run;
end.
 
Vá em Project/Options/Application e coloque "none" em runtimes themes. Se estiver diferente de None, não funciona.
 

Após a compilação o bloqueio passou a funcionar normalmente.

 

Uma dica: o Delphi deve estar rodando com privilégios administrativos, do contrário ele compila e gera o exe mas não o roda, além de exibir uma mensagem informando que necessita de elevação.

 

O arquivo compilado (.RES) deve estar junto aos principais arquivos do projeto, ou ao compilar, o Delphi informará que o .RES não foi encontrado.

 

Eu testei o executável na minha maquina de desenvolvimento (W8) e em outras duas, rodando W8  e W8.1. Não testei no W7 com o UAC ativo.

 

Espero que a dica ajude aos colegas que possam ter a mesma dificuldade.

Editado por koplin
  • Curtir 4
  • Consultores
Postado

Embora eu particularmente não tenha tido esse problema, vai ser útil para outros usuários.

Obrigado por compartilhar.

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
  • Este tópico foi criado há 4018 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.