Stworzyłem skrypt autohotkey, aby otworzyć wiersz polecenia anaconda. Takie, że gdy naciskam Ctrl+Numpad4, otrzymam przycisk Anaconda otwarty. Jeśli naciśnij Ctrl+Shift+Numpad4 Monit Anaconda otwiera się jako admin. Podążałem za instrukcjami kodu znalezionymi w forach autohotkey; Ale to nie działa. Oto mój kod:

^Numpad4:: Run "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Anaconda3 (64-bit)\Anaconda Prompt (Anaconda).lnk"
^NumpadLeft:: Run "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Anaconda3 (64-bit)\Anaconda Prompt (Anaconda).lnk"

^+NumpadLeft::
RunAs, Administrator, #Mypassword
Run, "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Anaconda3 (64-bit)\Anaconda Prompt (Anaconda).lnk"
RunAs

^+Numpad4::
RunAs, Administrator, #MyPassword
Run, "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Anaconda3 (64-bit)\Anaconda Prompt (Anaconda).lnk"
RunAs

Numpad Left i 4 są tylko na pokrycie zarówno możliwych przypadków z blokadą liczbową włączoną lub wyłączoną.

Co powinienem zrobić?

Ponadto jest kolejna drobna obawa, która jest taka, że Anaconda otwiera się w tym samym katalogu, co mój skrypt autohotkey. Chciałbym, aby otworzyć się w precyzyjnym katalogu. Czy mogę to zrobić z samego skryptu autohotkey. Tworząc plik wsadowy lub dodanie dodatkowego fragmentu?

1
Aniruddh Anna 11 październik 2020, 18:05

1 odpowiedź

Najlepsza odpowiedź

Kilka rzeczy:

  1. Jeśli chcesz, aby AHK uruchomił coś dla Ciebie jako administratora, musisz upewnić się, że masz AHK poprosić o emisje Można to osiągnąć, zastępując sekcje "Runas" z "Run * Runas", na przykład, gdybym próbował podnieść CMD, który normalnie zadzwonił
run cmd

Mógłbym uruchomić go podwyższony, dzwoniąc

Run *runas cmd

Skrypt w tym punkcie wyglądałby na smthng

^Numpad4:: Run "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Anaconda3 (64-bit)\Anaconda Prompt (Anaconda).lnk"
^NumpadLeft:: Run "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Anaconda3 (64-bit)\Anaconda Prompt (Anaconda).lnk"

^+NumpadLeft::Run *runas "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Anaconda3 (64-bit)\Anaconda Prompt (Anaconda).lnk"

^+Numpad4::Run *runas "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Anaconda3 (64-bit)\Anaconda Prompt (Anaconda).lnk"

Aby rozwiązać swoje pytanie drugie, możesz zmienić katalog skrypt działa przez Zmiana katalogu roboczego. Na przykład, jeśli chcesz zmienić swój katalog roboczy do C: Użytkownicy, użyłeś

SetWorkingDir, C:\Users

Uwaga: W przypadku stosowania elewacji, reż roboczy może zmienić się z powrotem do domyślnego użytkownika (dla administratora: C: Windows System32). Aby rozwiązać ten problem, prawdopodobnie będziesz musiał przejść dodatkowe parametry w samej komendzie RUN, które będą specyficzne dla programu, który próbujesz uruchomić (w tym przypadku Anaconda). Znalazłem To pytanie, które może rozwiązać problem anakondy z inną metodą.

Więc podsumowując, twój skrypt wyglądałby coś takiego:

SetWorkingDir, C:\Users ;replace this directory with the one that you actually want to use

^Numpad4:: Run "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Anaconda3 (64-bit)\Anaconda Prompt (Anaconda).lnk"

^NumpadLeft:: Run "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Anaconda3 (64-bit)\Anaconda Prompt (Anaconda).lnk"

^+NumpadLeft::Run *runas "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Anaconda3 (64-bit)\Anaconda Prompt (Anaconda).lnk"

^+Numpad4::Run *runas "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Anaconda3 (64-bit)\Anaconda Prompt (Anaconda).lnk"
1
Spyre 11 październik 2020, 16:03