2008/09/30 20:00

탐색기(Explorer.exe) 실행시 옵션 주기

보통 프로그램상에서 윈도우 탐색기(Explorer.exe)를 열고자 할때(델파이 기준설명) 다음과 같이 써준다.

ShellExecute(Handle, 'open', PCHar('C:\test'), nil, nil, SW_SHOWNORMAL);

이 방법 외에도 탐색기에서 지원하는 명령줄 옵션(Command-Line Options)을 사용하여 열 수도 있다.
탐색기에서는 다음의 명령줄 옵션을 지원한다.

/n
탐색기를 새창으로 연다.
기본적으로 탐색기는 이미 열려져있는 폴더를 열시 이미 열려져있던 창이 활성화 되는데 이 옵션을 이용하면 똑같은 폴더의 탐색기 창을 띄울 수 있다.

/e
탐색기를 기본보기 모습으로 연다.
사용자마다 탐색기의 주소표시줄을 감춘다든지, 상태표시줄을 안보이게 한다던지 설정이 다를 수 있다. 이 옵션을 이용하면 그 설정값을 무시하고 탐색기를 기본보기 모습으로 연다.
기본보기 모습은 표준 단추, 주소표시줄, 연결, 상태표시줄이 보이는 상태에 도구모음은 잠금상태에고, 좌측에 폴더트리가 보이는 상태이다.
폴더를 따로 지정하지 않으면 윈도우가 설치된 드라이브가 열린다.

/root,<object>
특정 폴더 혹은 객체를 루트폴더로 하는 탐색기창을 연다.

/select,<object>
특정 폴더 혹은 파일을 선택된 상태로 탐색기창을 연다.

사용 예..

/n
ShellExecute(Handle, 'open', PCHar('exeplorer.exe'), PCHar('/n,D:\'), nil, SW_SHOWNORMAL);
ShellExecute(Handle, 'open', PCHar('exeplorer.exe'), PCHar('/n,D:\'), nil, SW_SHOWNORMAL);
실행결과 : D:\폴더의 탐색기가 두개 실행된다.

/e
ShellExecute(Handle, 'open', PCHar('exeplorer.exe'), PCHar('/e'), nil, SW_SHOWNORMAL);
실행결과 : 윈도우가 설치되어있는 드라이브의 폴더(예 C:\)의 탐색기가 기본보기모습으로 열린다.

/root
ShellExecute(Handle, 'open', PCHar('exeplorer.exe'), PCHar('/root,c:\test,/e'), nil, SW_SHOWNORMAL);
실행결과 : C:\test폴더를 루트로 하는 탐색기가 기본보기 모습으로 실행된다.

/select
ShellExecute(Handle, 'open', PCHar('exeplorer.exe'), PCHar('/select,c:\test\test2.txt'), nil, SW_SHOWNORMAL);
실행결과 : test2.txt파일이 선택되어있는 상태로 탐색기가 실행된다.

관련 링크 : http://support.microsoft.com/kb/314853

Trackback 1 Comment 2

Trackback : http://lab.sjworks.net/trackback/97 관련글 쓰기

  1. Subject explorer 명령 옵션

    Tracked from 누피의 잡담 2008/10/06 14:10 delete

    If you want to do that then use following command in your commnand prompt explorer.exe /e ,/root,C:\ EXPLORER.EXE [/n] [/e] [,/root,{object}] [[,/select],{sub object}] /n - opens a new “My Computer” view of the object, even if already open. /e - opens a..

  1. 박종훈 2008/10/11 22:59 address edit & del reply

    아~ 이거 정말 좋은 정보네요^^
    특히 /select, 이 파라메터는 정말 나중에 유용하게 쓰일것 같아요^^
    좋은 정보 감사해요~^^

    • 손상진 2008/10/20 20:43 address edit & del

      특히 파일을 만지는 프로그램 제작시 유용하겠지요~^^..
      특정 파일을 가르킨다든지...