안정적인 사용자 지정 Windows 바로 가기 키? 프로그램 등). 즉, 바로 가기

여러 다른 cmd.exe 인스턴스에 전역 Windows 바로 가기 키가 할당되어 있습니다. 데스크톱에서 cmd.exe에 대한 바로 가기를 만들고 각 바로 가기 키 (예 : CTRL + SHIFT + U)를 할당하여이 작업을 수행합니다. 아주 기본적인 것들. Win2K8 (R1 및 R2)을 사용하고 있습니다.

이것은 대부분 잘 작동합니다. 그러나 격렬한 규칙으로 때로는 그렇지 않습니다. 또는 오랜 지연 (수초)으로 작동합니다. 현재 어떤 앱에 포커스가 있는지는 중요하지 않습니다 (명령 프롬프트 중 하나 일 수도 있음). 어떤 키를 할당하는지는 중요하지 않습니다 (WIN, CTRL 및 SHIFT의 몇 가지 변형을 시도했습니다). 필자는 이것이 항상 그런 것은 아니지만 항상 어떤 식 으로든 고생하는 explorer.exe와 상관 관계가 있음을 알았습니다 (예 : 사용할 수없는 파일 공유로 열린 탐색기 창 또는 응답하지 않는 응용 프로그램 등). 즉, 바로 가기 키 처리는 관련없는 시스템 활동에 매우 민감한 것으로 보입니다. 이 문제가있을 때마다 항상 내가 원하는 창에 ALT + TAB을 성공적으로 수행 할 수 있지만 지루합니다.

나는이 명령 창에 대한 지름길을 하루에 수백 번 사용하므로 1 %의 실패율조차도 실제로 성가 시게됩니다.

이 문제를 해결하는 방법이 있습니까, 아니면 다른 시스템 활동과 무관 한 방식으로 원하는 키에 초점을 맞추기 위해 사용자 지정 키 조합을 안정적으로 가로채는 타사 유틸리티가 있습니까?

추가:

타사 단축키 도구로 전환 할 때 잃고 싶지 않은 Windows 단축키의 속성이 있습니다. Windows 단축키는 dem 등입니다. 일부 앱 바로 가기를 시작한 후 바로 가기 키 콤보를 다시 누르면 이미 시작된 프로세스로 이동 합니다. 새 프로세스 는 시작 되지 않습니다 .



답변

오토 핫키를 사용하십시오. 스크립팅 언어는 표준이 아니며 배우기 어려울 수 있지만, 원하는 모든 프로그램을 안정적으로 시작하기 만하면 간단합니다. 또한 Windows 키에서 바로 가기를 만들 수 있습니다! 다음 샘플 스크립트를 사용하여 필요에 따라 수정하십시오. (로 시작하는 줄 ;은 주석입니다.)

;win + alt + e ... unload ipod
#!E::
   run d:\Downloads\Apps\deveject\eject ipod.bat
   return

;win + w ... launch winamp
#w::
    run c:\program files (x86)\winamp\winamp.exe
    return

;win + a ... launch AS400
#a::
    run C:\Program Files (x86)\IBM\Client Access\Emulator\Private\1.ws
    return

;win + Shift a ... launch AS400 Printer
#+a::
    run C:\Program Files (x86)\IBM\Client Access\Emulator\Private\3.ws
    return

;win + ctrl + Shift a ... launch 2nd AS400
#^+a::
    run C:\Program Files (x86)\IBM\Client Access\Emulator\Private\2.ws
    return

이것을 데스크탑에 .ahk 파일로 저장하고 autohotkey를 설치 후 실행하십시오.

키 조합을 누를 때마다 AutoHotkey가이 스크립트를 스캔합니다. 이 앞에있는 키 조합과 일치 ::하면 다음 명령이 실행됩니다. return 문이 없으면 AHK는 명령문을 실행 한 후 스크립트에서 일치하는 항목을 계속 스캔합니다. 주요 조합은 다음과 같습니다.

# = Windows Key
+ = Shift
^ = Control
! = Alt

키보드 문자와 조합하여 사용할 수 있습니다. 내가 매우 유용하다고 생각하는 조합은 다음과 같습니다.

; ALT Backtick ... ctrl f4
!`::
    Loop, parse, RcvCtrlW, `,
    {
     IfWinActive %A_LoopField%
     {
        sendinput ^w
        Return
     }
    }
    sendinput ^{f4}
    return

; win Backtick ... alt f4
#`::
   sendinput !{f4}
   return

이것은 Alt +`와 Win +`입니다. 이 스크립트가 실행 중이고 alt +`를 누르면 스크립트는 ctrl + F4를 보냅니다. Win +`는 alt + F4가됩니다.

오토 핫키는 기본적으로 자체 프로그래밍 언어입니다. “Rocker Gestures”시스템 전체를 시뮬레이션하는 스크립트를 설정했습니다. 이메일 바로 가기와 같은 Gmail이 있습니다. 그 트릭을 배우기 위해 시간을 보내면 그 트릭을 얻을 수 있습니다. Lifehacker에는 Autohotkey 에 유용한 스크립트 가 많이 있습니다. 즐기세요!


답변

다음은 귀하의 pot 등원 요구 사항 을 충족시키는 방식으로 AutoHotKey 를 사용 하는 방법입니다 .

예를 들어, 나는 푹했습니다 Caps Lock+를 a스택 오버플로에 파이어 폭스 창으로 Caps Lock+ s슈퍼 사용자에서 파이어 폭스, 그리고 Caps Lock+ d프롬프트 명령.

StartOrToggleMinimize(TheWindowTitle,TheAppPath)
{
   SetTitleMatchMode, 2
   DetectHiddenWindows, Off
   IfWinActive, %TheWindowTitle%
   {
      WinMinimize, %TheWindowTitle%
   }
   else
   {
      IfWinExist, %TheWindowTitle%
      {
         WinGet, winid, ID, %TheWindowTitle%
         DllCall("SwitchToThisWindow", "UInt", winid, "UInt", 1)
      }
      else
      {
         run %TheAppPath%
      }
   }
   return
}

; the actual hotkeys:
CapsLock & a::StartOrToggleMinimize("Stack Overflow", "c:\program files\mozilla firefox\firefox.exe -new-window stackoverflow.com")
CapsLock & s::StartOrToggleMinimize("Super User", "c:\program files\mozilla firefox\firefox.exe -new-window superuser.com")
CapsLock & d::StartOrToggleMinimize("cmd", "cmd")

타이틀 일치 모드 를 필요한만큼 제한적으로 변경할 수 있습니다 . 예를 들어 “수퍼 유저”대신 “Mozilla Firefox”와 일치하는 다른 단축키가있는 경우 창 제목에 해당 텍스트가 있고 텍스트와 일치하도록 설정했기 때문에 모든 Firefox 인스턴스를 순환합니다. 제목의 아무 곳이나.

이 스크립트는 LifeHacker의이 기사를 기반으로 합니다.


답변

프로그램을 빠르고 직관적으로 시작하는 또 다른 대안 :

발사

Launchy는 시작 메뉴, 바탕 화면의 아이콘 및 파일 관리자를 잊어 버릴 수 있도록 설계된 무료 창 및 Linux 유틸리티입니다.

Launchy는 시작 메뉴에서 프로그램을 색인화하고 몇 번의 키 입력으로 문서, 프로젝트 파일, 폴더 및 책갈피를 시작할 수 있습니다!


답변

불행히도 6 년 후 Windows 10에서 동일한 문제가 발생했으며 최근 Windows 10 업데이트에서 일부 바로 가기 / 프로그램이 더 이상 dem 등하 지 않음을 발견했습니다
! 특히 같은 세션에 여러 단축키가있는 퍼티.

그래서 AutoHotKey를 사용 하고 LifeHacker 의이 기사를 기반 으로이 스레드에서 공유되는 기능을 수정하여 INI 파일을 사용하여 각 바로 가기를 추적합니다. 이것은 개인적으로 유지하고 싶은 기능인 다른 서버에 화면이나 SSH를 사용하면 퍼티에서 변경 될 수 있으므로 각 프로그램의 Windows 제목을 사용하지 않습니다!

INI 파일에서 UniqueName 항목을 제거하기위한 바로 가기를 작성할 수있는 “DeleteINIEntry ()”함수도 포함되어 있습니다. 또는 파일을 수동으로 편집하고 변경할 수 있습니다.

INIFilePath := "C:\Temp\AHK.ini"

RunOrSwitchWin( UniqueName, AppPath )
{
    global INIFilePath
    IniRead, TargetID, %INIFilePath%, windowids, %UniqueName%
    ActiveID := WinExist("A")

    ; cannot use '=' here as comparing an integar to string doesn't work well
    IfEqual TargetID, %ActiveID%
    {
        WinMinimize
        return
    }

    WinGet, AllIDs, list

    Loop, %AllIDs%
    {
        this_id := AllIDs%A_Index%

        ifEqual TargetID, %this_id%
        {
            DllCall("SwitchToThisWindow", "UInt", this_id, "UInt", 1)
            return
        }
    }

    run, %AppPath%,,, CurrentPID
    WinWait ahk_pid %CurrentPID%
    IniWrite, % WinExist("A"), %INIFilePath%, windowids, %UniqueName%

   return
}

DeleteINIEntry()
{
    global INIFilePath
    InputBox, UniqueName, Delete INI Entry, Enter UniqueName

    If ErrorLevel = 0
        IniDelete, %INIFilePath%, windowids, %UniqueName%

    return
}

^!3::DeleteINIEntry()

; Putty shortcuts.
; ^!1 is NOT idempotent and will run it over and over again.
^!1::run "C:\Program Files\PuTTY\putty.exe"
^!2::RunOrSwitchWin( "session1", "C:\Program Files\PuTTY\putty.exe -load session1" )

창을 최소화하지 않으려면 WinMinimize 줄에 주석을 추가하고 (; 앞에 붙임) 단순히 활성 창에 계속 집중합니다.


답변

관련없는 활동이 아니며 탐색기는 이러한 단축키를 처리하는 프로세스입니다.

이 기능을 제공하는 유틸리티 (예 : http://www.vsisystems.com/keyboardshortcuts.htm )가 있지만 속도 문제를 해결할 수있는 유틸리티 가 있는지 모르겠습니다.


답변

탐색기가 사용 중이면 바로 가기를 처리 할 수 ​​없으므로 다른 프로그램이 필요합니다.

간단하고 효율적인 런처는 PS Hot Launch VVL입니다 .

이것은 하나의 키를 눌러 응용 프로그램을 시작하고, 일반적으로 사용되는 텍스트를 삽입하거나, 오디오 볼륨을 변경하거나 그 밖의 다른 것들을 할 수 있도록 자신 만의 핫키를 정의 할 수있는 무료 유틸리티입니다. 이 프로그램에는 Win95 / 98 / ME 또는 WinNT / 2000 / XP가 필요하며 느린 컴퓨터에서도 탁월한 성능을 발휘합니다. PS Hot Launch는 시작 메뉴와 빠른 실행 패널의 완벽한 대안입니다.