탐색기의 주소를 알고 싶은 경우 탐색기에서 ALT + D 를 누른 후에 주소 값을 복사 하면 됩니다. 

Autohotkey 로 탐색기의 주소를 알고 싶은 경우에도 위의 내용을 코딩해 주면 되겠죠. 


해당 내용은 아래와 같을 겁니다. 



send, !d
sleep, 1000
send ^c

그런데 클립보드를 사용하다 보면 이상하게 주소가 저장이 안 될 때가 있습니다. 

그래서 COM 을 사용해 보기로 했습니다. 

Autohotkey 에서 COM 을 사용하여 현재 열린 탐색기의 폴더 주소를 아는 방법은 아래와 같습니다.

#NoEnv
#SingleInstance force

#a::   ; Shortcut : WIN + A
hwnd := WinExist("A")
WinGetClass class, ahk_id %hwnd%

if (class="CabinetWClass" or class="ExploreWClass")
{

for window, in ComObjCreate("Shell.Application").Windows
{
try
{
if (window.hwnd==hwnd)
{
sel := window.LocationURL

sel := RegExReplace(sel,"file:///","")
foldername := RegExReplace(sel,"/","\")
foldername := RegExReplace(foldername,"%20"," ")

Clipboard:=foldername
MsgBox,,, % foldername,1

break
}
}
}
}
return

위 코드를 실행 시킨 후에 탐색기를 연 상태에서 WIN + A 를 누르면 아래와 같이 msgbox 가 1 초간 열렸다가 꺼지고 클립보드에 폴더의 주소가 저장 됩니다.




지난 포스팅에서도 말씀 드렸지만~ Autohotkey는 윈도우 운영체제를 사용하는 사람들에게는 정말 꼭 필요한 필수 유틸 중 하나라고 생각하는데요~


2012/02/22 - [Autohotkey] - Autohotkey를 사용해 보아요~

 

오늘은 Autohotkey 를 이용하여 ahk_class 를 알아보고~ 이를 이용하여~ 해당 프로그램 또는 창을 닫는 방법에 대해 설명 드리려 합니다.

 

일단 ahk_class 는 두 가지 방법 정도로 확인 할 수 있습니다.

 

첫 번째로는 위 주소의 포스팅에서 말씀드렸던~ Window Spy 프로그램을 이용하는 방법입니다.

 

Window Spy 프로그램은 Autohotkey 가 설치된 폴더에 같이 있습니다. default 로 설치 했다면 아래 폴더에 있을 겁니다.

 

C:\Program Files\AutoHotkey

 

위 폴더에서 AU3_Spy.exe 라고 하는 프로그램을 실행 시키시면 됩니다.

 

그럼 아래와 같은 프로그램이 실행되는데요~

 

간단하게 익스플로러 창 하나 띄우고~ 해당 창의 ahk_class 를 알아보기 위해 창을 클릭 해보죠~

 

그럼 아래와 같이 Window Spy 프로그램에 ahk_class 의 내용이 표시되는 것을 확인 할 수 있습니다.

 

아래 보시는 바와 같이 윈도우 익스플로러의 ahk_class 는 ahk_class IEFrame 입니다.

 

 

그리도 다른 프로그램들도 선택을 한번 해 보시면 해당 프로그램에 대한 고유 ahk_class를 확인 할 수 있습니다.

 

 

두 번째로는 Autohotkey 에서 WinGetClass 를 사용하는 방법이 있습니다. 저는 다음과 같이 단축키를 설정해서 사용하곤 합니다.

 

#c:: ; 단축키 Win + C

MouseGetPos, , , id

WinGetClass, class, ahk_id %id%

MsgBox, %class% ; class 확인

return

 

위 코드를 실행 시키고~ 첫 번째 예에서 처럼 익스플로러를 띄우고 마우스를 익스플로러 창 위에 놓은 다음~~ Win + C 단축키를 눌러 보시면 익스플로러의 ahk_class 인 IEFrame 이 나오는 것을 확인 할 수 있습니다.

 

이제 ahk_class 값을 알았으니 인터넷 익스플로러를 닫는거야 무지하게 간단하겠죠~

 

Autohotkey 에서 해당 프로그램을 닫는 명령은 WinClose 또는 WinKill 를 사용합니다.

 

따라서 다음과 같이 하면 인터넷 익스플로러가 꺼지게 됩니다.

 

WinClose, ahk_class IEFrame

또는

WinKill, ahk_class IEFrame

 

그럼 즐거운 Autohotkey 생활 되시기 바랍니다~


+ Recent posts