본문 바로가기
TechNical/WMI

WMI] 다이얼로그 박스를 띄워서 폴더 경로 선택하기

by 강멍멍이 2008. 3. 12.
반응형

이번에는 뭔가 비쥬얼한걸 해 보도록 하겠습니다.
맨날 텍스트만 보여주니 지루하기도 하구요. -_-a
예쁜 다이얼로그 박스를 띄워 봅시다~
뭐.. 어차피 윈도우에서 제공하는 객체를 이용하므로 그냥 끌어다가 쓰기만 하면 됩니다. ㅎㅎ
사용자에게 폴더 경로를 선택하게 할 때는 이래저래 방법이 있겠지만
다이얼로그 박스를 띄워서 마우스 클릭질로 하는게 편리하고 정확한 경로를 지정할 수 있게 하겠지요.
한번에 반복적으로 작업을 해야 한다면 텍스트 입력박스를 띄우는게 편리하겠지만 한번씩 쓰는 것이라면
경로 트리가 보기좋게 뜨는 다이얼로그 박스가 좋을 것 같습니다.

[Select_Folder.vbs]

Const MY_COMPUTER = &H11&
Const WINDOW_HANDLE = 0
Const OPTIONS = 0

Set objShell = CreateObject("Shell.Application")
Set objFolder = objShell.Namespace(MY_COMPUTER)
Set objFolderItem = objFolder.Self
strPath = objFolderItem.Path

Set objShell = CreateObject("Shell.Application")
Set objFolder = objShell.BrowseForFolder _
    (WINDOW_HANDLE, "Select a folder:", OPTIONS, strPath)
     
If objFolder Is Nothing Then
    Wscript.Quit
End If

Set objFolderItem = objFolder.Self
objPath = objFolderItem.Path

Wscript.Echo objPath



요거를 실행하시면 요렇게 예쁜 창이 하나 뜰겁니다.
여타 어플리케이션을 사용하다 보면 흔하게 접할 수 있는 박스 입니다.
윈도우에서 제공해 주는데 굳이 만들어 써서 비용을 낭비할 필요는 없겠죠? ㅎㅎ

사용자 삽입 이미지

경로를 선택하시면 objPath 변수에 경로값이 들어가고 화면에 출력해 줍니다.
이 예제는 단순히 경로를 선택하고 값을 넘겨 받는 것만 보여 주었지만 이것은 단지 기초작업일 뿐이고
이를 이용하여 특정 폴더에 파일을 저장하게 하라던가 해당 폴더를 검색하라.. 등등.. 다양하게
이용할 수 있을 거 같지 않나요 ㅎㅎ;
어쨋거나.. 고로 이 예제에서 핵심은 objPath 가 되겠습니다~.
반응형

댓글