설치 / 사용기

기 타 K*m님 런처-질문란 오토핫키 소스 활용시 참고하여 주십시요

2019.09.09 19:50

왕초보 조회:485 추천:5

질문란에...K*m님 런처 관련해서 오토핫키 소스를 댓글에 소개된 내용은 이미 지난 사용기에 소개를 하여 드려서 많이 알고 계실것 같습니다

ToPs님께서...창크기 축소,위치에 관해서 xml로 설정하는것을 소개하여 주셔서...질문란에 있는 소스를 일부 수정해서 활용하시는 분들이

있으실것 같습니다

 

K*m님 런처에 사용되는 오토핫키 관련으로 특이한 현상이 생기는 경우가 있어서 간단히..정리를 하여 보았습니다

 

혹시...사용기와 같이..오토핫키 소스를 일부 수정하여 사용하시는 분들중에 아래 사용기처럼 런처가 실행중에 바탕화면 바로가기를 클릭후...런처가

실행되지 않으시는 분이 있으시면 이렇게 된것이구나 하고 참고하여 주십시요

 

 

오토핫키 고수님들께서..이미 다 알고 계신 내용입니다. 고수님들께서는 통과하여 주십시요

 

사용기를 간단히 쓴다고 쓰기는 하였습니다...오토핫키에 대해서 잘 모르시는 분은..복잡해 보일것입니다..양해를 하여 주십시요

 

 

오토핫키 질문 링크입니다..여기에 있는 WinWait를 활용하신 경우 입니다
https://windowsforum.kr/index.php?mid=qna&page=4&document_srl=12077290

 

 

 

1. ToPs님께서 xml에 대한 비밀을 알려주셔서..질문란의 오토핫키에서..WinMove는 필요가 없게 되었습니다.. 소스를 초보식으로 줄여서 컴파일

    한것입니다...WinWait 옵션으로 런처 실행후..단축키를 실행합니다    WinWait는 원본 소스 그대로 입니다

1.jpg

 

2. 런처가 실행이 되었습니다...오토핫키로 만든 exe에서..런처를 실행하여 준것입니다.. 바탕화면에서 바로가기를 런처가 실행된 상태에서 다시

  클릭을 하여 보았습니다..이런 경우가 충분히 있는 경우입니다..그래서 프로그램들이 중복실행 방지를 위한 안전정치들이 되어 있습니다

  

 K*m님 런처도 이미 실행이 되고 있습니다..다시 실행을 해도 실행되지 않습니다..

2.jpg

 

3. 오토핫키로 된 exe에서 런처를 실행하면..이미 런처가 실행이 되어 있어서..런처 제목부분이 깜박일것입니다..

   작업관리자에...런처를 실행하여 주는..WinRestore.exe 가 있습니다... 하지만..K*m님 런처 자체에 중복실행 방지가 되어 있어서...새로운 런처가

   실행되지 않습니다..

3.jpg

 

4. 처음에 실행되었던 런처를 종료한 상태입니다...작업표시줄에 오코핫키로 된 WinRestore.exe가 그대로 있습니다. 이것이 문제입니다

   런처를 실행하기 위해서..바탕화면에 있는 바로가기를 실행해도 런처가 실행되지 않습니다...아래 사진처럼..이미 실행되어있는 WinRestore.exe가

   있어서 그렇습니다

 

   오토핫키 소스에 있는 #SingleInstance Ignore 명령어가..오토핫키로 프로그램이 중복실행되지 않도록 하는 명령어 입니다..

   작업표시줄에 이미 실행이 되고 있어서..런처를 실행해주는  WinRestore.exe가 또 실행되지 않는 것입니다

   그리고 작업표시줄에 있는 WinRestore.exe는...소스에 있는 WinWait 명령어 때문에 아래처럼 종료되지 않고 있는것입니다..

4.jpg

 

5. 작업표시줄에 있는 WinRestore.exe를 강제 종료시켰습니다.

5.jpg

 

6. WinRestore.exe가 없어서 당연히...런처가 잘 실행이 됩니다....런처가 실행된 상태에서 바탕화면에 있는 바로가기 아이콘을 클릭하는 일을 충분히

   있을수 있는 일일것입니다..이때에 이런 문제가 생기실수 있습니다..

6.jpg

 

7. WinWait 때문에 생기는 이유를 명확히 하기 위해서..작업표시줄에서 PID 값이 표시되도록 하였습니다..

   현재 실행되어 있는 런처는 PId값이 1400 입니다7.jpg

 

8. 바로가기를 클릭해서 새로 실행한 런처의 PId 값입니다...1776 입니다...그런데..이 런처는...이미 런처가 실행되고 있어서..중복방지 기능에 따라서

  바로 종료가 되어 버립니다..

 

  Pid 1776 값을 가진것을 오토핫키의 WinWait 옵션에서 기다리게 됩니다..,,그런데 이미 중복실행 방지로 이미 종료가 되어서..

  WinWait에 아무리 기다려도 원하는것이 나오지 않아서...결국...WinRestore.exe가 계속 작업관리자에 상주하게 됩니다.

 

  그리고 WinRestore.exe에도 중복 방지 기능이 있어서...바로가기를 클릭해서 런처를 실행하려고 해도..런처도 실행되지 않습니다

8.jpg

 

9. 이렇게..중복방지라는 좋은 기능과 WinWait라는 좋은기능이 우연히 겹치면...런처를 실행하지 못하는 경우가 생깁니다..해결 방법은 너무 간단합니다

  런처가 아래처럼 실행되어 있으면...이것을 검사해서 오토핫키에서..런처를 실행하지 않고 그냥..종료하면 됩니다..

9.jpg

 

10. 런처가 실행되어 있는 경우 사용기용으로 메세지를 보야주게 한것입니다....런처가 실행되고 있어서 WinRestore.exe가 그냥 종료합니다.

10.jpg

 

11. 두번째 해결 방법입니다..중복실행 방지로 이미 중지된 런처가 나타나기를 적당한 시간 만큼 기다리다 안나타나면..WinWait를 종료하면 됩니다

   이 옵션은..WinWait에 있습니다...이 경우..실행시에 런처가 있는것을 확인하는것보다는..못한 방법 같기도 합니다..

 

   아래는... WinRestore.exe가 실행되고...WinWait에서 기다리고 있는 중입니다.

11.jpg

 

12. 5초가 지나도..실행했던 (이미 중복실행 방지로 실행이 중지된 런처) 런처를 기다리다 나타나지 않아서 나오는 메세지입니다..

   그냥..WinRestore.exe가 종료가 됩니다  

12.jpg

 

13. 위에 메세지후에...WinRestore.exe가 종료되었습니다...이렇게 오토핫키로 된 exe가..작업관리자에 남지 않도록 하면..문제가 없을것 같습니다

13.jpg

 

14. 마무리

질문란에 있는 오토핫키 소스에서 WinWait를 활용하는 경우..사용기 같은 특수한 경우가 발생할수 있습니다...

오토핫키 소스를 활용하시는 분이 안계시거나..실수로..런처가 실행된 상태에서 바탕화면에 있는 바로가기를 클릭하신분이 있으시지 않으신가 봅니다

다른분들은 경험하지 못한것을..저만..어쩌다 경험을 하게 된것 같습니다.

 

초보가..질문란에 있는 소스를 활용하게 되면서..경험한것이어서..사용기에 쓰게 되었습니다

이런 경우도 있을수 있구나 하고 참고만 하여 주십시요

 

편안하신 시간 되시길 바랍니다.

 

-------------------------------------------------------------------------------------------------------------------------------

 

인터넷에 검색을 하였더니 아래처럼 설명이 되어 있습니다

 

https://ahkplant.tistory.com/69

 

#SingleInstance

 

#SingleInstance [force|ignore|off]

 

인수명 설명
인수 없음
실행중의 스크립트가 또 하나 기동되었을 때, 「기존의 프로세스를 종료해 기동할까」를 문의하는 다이얼로그가 표시해, 「네」라고 대답하면 기존의 프로세스를 종료해 새롭게 실행을 개시한다.「아니오」라고 대답하면, 아무것도 하지 않고 종료한다.
FORCE
실행중의 스크립트가 또 하나 기동되었을 때, 자동적으로 기존의 프로세스를 종료해 새롭게 실행 개시한다
IGNORE
실행중의 스크립트가 또 하나 기동되었을 때, 아무것도 하지 않고 종료한다.
OFF
상주 상태(이)나hot key(을)를 포함한 스크립트에서도 복수 기동을 허가한다

 

 

https://ahkplant.tistory.com/335

 

WinWait
지정한 윈도우가 존재하게 되는 것을 기다린다

 

WinWait[, WinTitle, WinText, Seconds , ExcludeTitle, ExcludeText]

 

Parameters 인수명
WinTitle    윈도우 타이틀 등. 윈도우 지정의 방법참조.
WinText    윈도우에 포함되는 텍스트
Seconds   최대몇 초간까지 기다릴까.생략시는 무한하게 기다린다. 0(을)를 지정하면0.5초 기다린다.
ExcludeTitle    제외 타이틀
ExcludeText    제외 텍스트

 

ErrorLevel
0  
윈도우가 발견되었다
1
윈도우가 발견되기 전에 Seconds 그리고 지정한 시간이 경과했다
 

번호 제목 글쓴이 조회 추천 등록일
[공지] 사용기/설치기 이용안내 gooddew - - -
10919 소프트웨어| Advanced Installer 한글 패치 2종 [78] SPiRiTY 1015 105 03-25
10918 윈 도 우| 무인 설치 unattend.xml 에서 윈도우 11만 특정 작업하기 [16] suk 733 41 03-25
10917 소프트웨어| 아래 글에 그거 일부 기능만 완성(수정) [11] 라랑 385 16 03-25
10916 소프트웨어| PureBasic으로 BCD 툴 따라해보는 중 [4] 라랑 532 9 03-24
10915 기 타| WinXPE147수정버전_20240322_ 23H2(빌드22631.3296)사용기 [66] 격자 1164 113 03-23
10914 기 타| [추가] 노랑개굴님 Menu.wcs을 활용하여 보았습니다. [11] 왕초보 787 22 03-23
10913 기 타| 【수정】 Easylight 288mb-Wifi ToolsEL wim통합 PE update2 [34] 딸랑쇠 1375 86 03-23
10912 윈 도 우| 무월님에게 그리고 스크립트 고수님들에게...... [3] 마로94 587 2 03-22
10911 윈 도 우| 윈도우 통합 과정 - 감사합니다 모든분들꼐 [14] 마로94 851 28 03-22
10910 소프트웨어| WIM 정보 v0970 - bcd 1회 부팅 - 소소한 버그들 수정. WIM... [16] 입니다 883 50 03-22
10909 기 타| [문제해결] PE 1회 부팅 PESettings v4.0 의 배경사진에 문... [19] 왕초보 779 34 03-22
10908 기 타| [종료]WindowsXPE147_20240322 [45] 노랑개굴 1215 92 03-22
10907 윈 도 우| cmder 소개 [28] 집앞의_큰 768 63 03-22
10906 기 타| WIndowsXPE147 필드사용기 [35] V무등산V 532 62 03-21
10905 소프트웨어| 헉시 저처럼 PureBasic 시작해보신 분 계실라나요? [6] 라랑 467 8 03-21
10904 윈 도 우| ADK PE 만들어서 놀았습니다. ( Feat : LaunchBar ) [26] do98 512 49 03-21
10903 기 타| pureBasic - PE 1회 부팅 PE 체크기능을 추가하여 보았습니다. [15] 왕초보 728 22 03-21
10902 기 타| pureBasic - PE 1회 부팅 Launch에 사진을 넣어 보았습니다 [20] 왕초보 727 22 03-21
10901 윈 도 우| 무월님이 소개해준 MSMG Toolkit 사용기(간단) [6] 마로94 566 12 03-21
10900 기 타| 파일 우클릭 메뉴 레지 관련 사용기 입니다.. [14] 왕초보 820 23 03-20
XE1.11.6 Layout1.4.8