AHK und UAC

Stelle Fragen zur Programmierung mit Autohotkey

Moderator: jNizM

Bassman
Posts: 40
Joined: 22 Dec 2016, 11:48

AHK und UAC

05 Mar 2017, 04:19

HI:)

Habe meine sämtlichen Tastaturkürzel in einer Datei namens Gain.ahk.
Die starte ich im Autostartordner (shell:startup).
Allerdings kommt immer beim Hochbooten die UAC Abfrage, wenn ich nicht dabei bin beim vollständigen Hochbooten wird die Abfrage beendet und die Datei startet nicht, d.h. ich muss sie dann extra manuell starten.

Jetzt habe ich folgende Sachen versucht, diese Abfrage zu umgehen:

1. Microsoft Application Compatibility Toolkits

Geht nicht, weil das Proggie nur "EXE" Dateien mag.

2. Aufgabenplanung ("Autohotkey" Aufgabe erstellen und dann mit C:\Windows\System32\schtasks.exe /RUN /TN "Autohotkey" im Autostart gestartet)

Geht auch nicht, das Programm startet einfach nicht, obwohl laut Anleitung alles richtig eingetragen ist.


Liegt es daran, dass Autohotkey Scripts keine ausführbare Dateien sind oder warum geht das nicht??

Danke vorab
just me
Posts: 6513
Joined: 02 Oct 2013, 08:51
Location: Germany

Re: AHK und UAC

05 Mar 2017, 05:00

Hast Du mal versucht, die AutoHotkey.exe zu starten und ihr das Skript als Parameter zu übergeben?
Bassman
Posts: 40
Joined: 22 Dec 2016, 11:48

Re: AHK und UAC

05 Mar 2017, 05:06

@just me

Könntest du mir die genaue Syntax geben??

Wie starte ich denn die .exe?? also wenn ich autohotkey.exe starte, öffnet sich lediglich eine Hilfeseite! Wo ist denn autohotkey eigentlich verankert?? Ich finde das nirgends, weder in irgendwelchen Autostarts noch in den Diensten finde ich was....
Bassman
Posts: 40
Joined: 22 Dec 2016, 11:48

Re: AHK und UAC

05 Mar 2017, 05:44

@just me

Ich hab jetzt die Gain.ahk compiliert zu Gain.exe und mit den Compatibility Toolkits eingetragen. Trotzdem erscheint beim Hochbooten die UAC Abfrage.

Hm, also nochmal die Aufgabenplanung bemühen.......dauert, jetzt muss ich erstmal kochen....melde mich

Danke;)
Bassman.
Bassman
Posts: 40
Joined: 22 Dec 2016, 11:48

Re: AHK und UAC

05 Mar 2017, 07:44

Also, das Ganze nochmal probiert mit der Aufgabenplanung:

Die compilierte Datei Gain.exe in einem Progs Verzeichnis auf Laufwerk C
In der Aufgabenplanung einen Task namens Gain angelegt
Eine Verknüpfung (C:\Windows\System32\schtasks.exe /RUN /TN "Gain") im Startup Verzeichnis angelegt.

Es startet nicht, das gibt's doch nicht:((

Wenn ich das Startup Verzeichnis öffne und die Verknüpfung doppelklicke -->> Perfekt, startet ohne die UAC Abfrage

Denke mal das ist eher ein Problem der Aufgabenplanung

Bassman
Bassman
Posts: 40
Joined: 22 Dec 2016, 11:48

Re: AHK und UAC

05 Mar 2017, 07:59

OK Kommando zurück!

Warum auch immer, seit dem 2. Mal hochbooten geht's. Musste sich da erst was manifestieren??

Egal, jetzt brummt's ohne UAC Abfrage:)

Danke;)
Bassman
User avatar
moefr01
Posts: 75
Joined: 25 Nov 2015, 09:01
Location: Germany

Re: AHK und UAC

05 Mar 2017, 09:51

Hallo Bassman,
ich kann dir hierzu mein Script NoUAC empfehlen...> https://autohotkey.com/boards/viewtopic ... 10&t=10733

Ansonsten folge den Anweisungen unten:
Aufgabenplanung: Wichtig sind bei der Erstellung der Aufgabe folgende Parameter: sc beim Start und rl mit höchsten Berechtigungen
Du kontrollierst diese unter der Aufgabenplanungsbibliothek / deine Aufgabe / Registerkarten [Allgemein] und [Trigger]
oder Beispiel per Befehlseingabe:
%Windir%\system32\schtasks.exe /create /sc beimstart /tn Aufgabenname /tr Programmpfad /rl höchste

TIPP: :thumbup:
Mir ist aufgefallen, dass die NoUAC-erstellte Verknüpfung auf Notebooks nicht ausgeführt wird, wenn diese mit Akkustrom laufen... ergo bei Registerkarte [Bedingungen] den Haken entfernt:
Aufgabe nur starten, falls Computer im Netzbetrieb ausgeführt wird

viel Erfolg...
:wave: moefr01
Bassman
Posts: 40
Joined: 22 Dec 2016, 11:48

Re: AHK und UAC

06 Mar 2017, 04:06

@moefr01

Danke:) Ich schau mir das mal an!!

Bassman.
Best-Code-in-Use
Posts: 141
Joined: 01 Dec 2015, 05:13
Location: Germany

10 Mar 2017, 11:02

@moefr01

könntest Du noch einen "Schalter" in Dein geniales Skript einbauen, mit dem man die Notebookgeschichte gleich deaktivieren kann?
"Aufgabe nur starten, falls Computer im Netzbetrieb ausgeführt wird"

Zum Thema Taskplaner gibt es anscheinend wenig bis keine Informationen in Deutsch.
Zwar werden die Optionen oftmals ausführlich erklärt, aber zu den von Dir in Deinem Post genannten Befehlsschaltern habe ich persönlich noch nichts gefunden.
Greetings Best-Code-in-Use
User avatar
moefr01
Posts: 75
Joined: 25 Nov 2015, 09:01
Location: Germany

Re: AHK und UAC

13 Mar 2017, 11:28

@Best-Code-In-Use

done... :P

war ein bisschen tricky, da die Parameter von schtasks.exe (siehe schtasks /create /?) zum Ändern der Bedingungen der jeweiligen Aufgabe nicht existieren... dennoch gibt es eine Lösung: Der Trick besteht darin eine XML-Datei mit der gewünschten Parametrisierung (false/true) zu erstellen und diese anschl. per schtasks /create auszuführen. Dabei werden die Bedingungen für DisallowStartIfOnBatteries in der Aufgabe überschrieben. Das klappt auch bei der Ordnererstellung von NoUAC. Ebenso ist die Bedingung StopIfGoingOnBatteries gleichwertig (false/true) gesetzt, bei der Radiobutton-Auswahl.
Getestet bisher nur unter Windows 10 x64 1607.14393.693... freue mich über jede konstruktive Kritik.

:wave: moefr01

NoUAC v1.10 vom 13.03.2017:

Code: Select all

; ===============================================================================================================================
; Title .........: NoUAC
; AHK Version ...: 1.1.25.01 x64 Unicode
; Win Version ...: Windows 10 Professional x64 / 1607 Build 14393.693
; Description ...: erstellt eine Verknüpfung auf dem Desktop ohne lästige Abfrage der Benutzerkontensteuerung beim Ausführen
; Version .......: v1.10
; Modified ......: 2017-03-13 16:33
; Author(s) .....: moefr01
; ===============================================================================================================================
#NoTrayIcon
#SingleInstance force
if not A_IsAdmin
{
   Run *RunAs "%A_ScriptFullPath%"
   ExitApp
}

Gui, Add, Text, x10 y10 w320 h40 vText, NoUAC - Erstellen Sie im Handumdrehen eine Verknüpfung zu Anwendungen ohne lästige Abfrage der Benutzerkontensteuerung beim Ausführen.
Gui, Add, Text, x10 y80, Bei Nutzung mit Akkustrom (Notebook):
Gui, Add, Radio, x210 y80 vRadio0 gRadio Checked, aktiv
Gui, Add, Radio, x258 y80 vRadio1 gRadio, inaktiv
Gui, Add, Text, x100 y116 vText0, Aufgabenordner:
Gui, Add, Edit, x190 y112 w150 h20 vEingOrdner
Gui, Add, Text, x10 y144 vText1, Aufgabenname:
Gui, Add, Edit, x90 y140 w250 h20 vEingTaskname
Gui, Add, Text, x10 y172 vText2, Anwendung:
Gui, Add, Edit, x90 y168 w220 h20 vEingProgrammpfad
Gui, Add, GroupBox, x10 y200 w330 h160 vGroup1 BackgroundTrans,
Gui, Add, Picture, x20 y220 w48 h48 vIcon,
Gui, Add, Text, x20 y270 w310 h80 vAusgabe,
Gui, Add, Button, x310 y167 h22 w30 vfsButton gfsButton, ...
Gui, Add, Button, x200 y368 w140 vErstellenButton gErstellenButton, Verknüpfung erstellen...
Gui, Show, w350 h200, NoUAC
batterystop:="false"
Return

Radio:
GuiControlGet, aktiv, , Radio0
If (aktiv)
  batterystop:="false"
Else
  batterystop:="true"
Return

; Dateiauswahldialog starten
fsButton:
FileSelectFile, programmpfad, 1, , Bitte ausführbare Datei auswählen:, Ausführbare Datei (*.exe)
GuiControl, , EingProgrammpfad, %programmpfad%
GuiControl, , Icon, %programmpfad%
GuiControlGet, taskname, , EingTaskname
GuiControlGet, ordnername, , EingOrdner
taskname0 = %taskname%
taskname = "%ordnername%\%taskname%"
GuiControlGet, programmpfad, , EingProgrammpfad
programmpfad0 = %programmpfad%
programmpfad = "%programmpfad%"

; Formatierungen
Ausgabetext = Verknüpfung:`n%A_Desktop%\%taskname0%`n`nPfad:`n%Windir%\System32\schtasks.exe /RUN /TN %taskname%
GuiControl, , Ausgabe, %Ausgabetext%
Gui, Show, w350 h400, NoUAC
Return

ErstellenButton:
If (taskname0 = "") or (programmpfad0 = "") {
  MsgBox, , ACHTUNG!, Es wurden keine Eingaben gemacht oder eine Verknüpfung bereits erstellt.
  Return
  }
; erstellt Verknüpfung auf dem Desktop: minimiert, erstes Icon von exe, mit Tasknamen
FileCreateShortcut, "%Windir%\System32\schtasks.exe", %A_Desktop%\%taskname0%.lnk, , /RUN /TN %taskname%, ...erstellt am %A_DD%.%A_MM%.%A_YYYY%, %programmpfad0%, , , 7
; erstellt Aufgabe in der Aufgabenplanung
Run, %Windir%\system32\schtasks.exe /create /sc beimstart /tn %taskname% /tr %programmpfad% /rl höchste, , hide

Sleep, 500
userid:=A_ComputerName "\" A_UserName
FileDelete, %taskname0%.xml
FileAppend,
(
<?xml version="1.0" encoding="UTF-16"?>
<Task version="1.2" xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task">
  <RegistrationInfo>
    <URI>\fmwSystemImager</URI>
  </RegistrationInfo>
  <Principals>
    <Principal id="Author">
      <UserId>%userid%</UserId>
      <LogonType>InteractiveToken</LogonType>
      <RunLevel>HighestAvailable</RunLevel>
    </Principal>
  </Principals>
  <Settings>
    <MultipleInstancesPolicy>IgnoreNew</MultipleInstancesPolicy>
    <DisallowStartIfOnBatteries>%batterystop%</DisallowStartIfOnBatteries>
    <StopIfGoingOnBatteries>%batterystop%</StopIfGoingOnBatteries>
  </Settings>
  <Actions Context="Author">
    <Exec>
      <Command>%programmpfad%</Command>
    </Exec>
  </Actions>
</Task>
), %taskname0%.xml

RunWait, %Windir%\system32\schtasks.exe /create /xml %taskname0%.xml /tn %taskname% /f, , hide
MsgBox, 0x40, , Die %taskname0%-Verknüpfung zu %programmpfad% wurde erfolgreich auf dem Desktop angelegt.
GuiControl, , EingOrdner
GuiControl, , EingTaskname
GuiControl, , EingProgrammpfad
FileDelete, %taskname0%.xml
taskname0 =
programmpfad0 =
Return

GuiClose:
ExitApp
Best-Code-in-Use
Posts: 141
Joined: 01 Dec 2015, 05:13
Location: Germany

...Genial

15 Mar 2017, 04:25

Hallo moefr01,

vielen Dank für Deine Mühe.
Das sieht sehr gut aus, ich habe nur die GUI ein wenig kosmetisch verändert, vielleicht gefällt es Dir ja auch... :D :D

Ohne Deine geniale Arbeit wäre das allerdings nicht möglich gewesen, Top!!!
NoUAC---mit-Ordnerauswahl--Mod-2017-03.ahk
(4.32 KiB) Downloaded 109 times
No UAC Gui Change
Greetings Best-Code-in-Use

Return to “Ich brauche Hilfe”

Who is online

Users browsing this forum: UnReALiTyy and 19 guests