Por que o Windows alterou os requisitos de elevação do meu script AutoHotKey e como posso evitar isso no futuro?

1

Eu estava trabalhando em um script AutoHotKey (AHK) para criar movimentos de mouse pré-fabricados para um visualizador de modelo muito simples. Eu trabalhei nisso por uma boa hora. Fechei o script, coloquei em um fórum e pensei "ah, ei, eu devo adicionar bla bla bla ao roteiro".

Quando voltei para o programa, o script AHK não funcionava. Eu podia ver os movimentos do mouse trabalhando em outros programas (notepad, chrome, etc), mas não onde eu estava trabalhando na hora anterior.

Após várias horas jogando dardos na parede de solução de problemas, descobri que a correção era definir o AHK.exe como Executar como Administrador.

A questão aqui é múltipla

  1. Por que o Windows 7, em toda sua sabedoria, decidiu de repente que a elevação era necessária no meio do uso?
    • Esses requisitos de permissão podem, de alguma forma, ser revertidos, por exemplo, removendo uma chave do registro ou algo do tipo?
  2. Como esse tipo de comportamento do Windows pode ser evitado no futuro?
por monsto 10.06.2014 / 03:35

1 resposta

0

Você pode tentar fazer com que seus scripts sejam executados como Admin

if not A_IsAdmin
 {
  Run *RunAs "%A_ScriptFullPath%"  ; Requires v1.0.92.01+
  ExitApp
 }

Veja o link

ou tente ativar a interação com programas administrativos usando EnableUIAccess :

Modifies AutoHotkey.exe to allow scripts to do the following even while UAC is enabled:
* Interact with windows of administrative programs without running the script as administrator.
* Use SendPlay.
Source: http://www.autohotkey.com/board/topic/70449-enable-interaction-with-administrative-programs/

    
por 01.02.2015 / 09:59