공룡호가 사는 세상 이야기

프로그램을 하다 보면, 웹페이지로 Redirect 해야 할 필요가 있을 때가 있다.
ShellExecute() 라는 API 함수를 사용하면 간단히 해결 가능하다.
Prototype는 다음과 같다.

HINSTANCE ShellExecute(
    HWND hwnd,
    LPCTSTR lpOperation,
    LPCTSTR lpFile,
    LPCTSTR lpParameters,
    LPCTSTR lpDirectory,
    INT nShowCmd
);

2번째 파라미터는 3가지 값을 가질 수 있다.
"open", "print", "explore" 가 그것인데, 웹 페이지로 Redirect 하기 위해서는 "explore" 를 사용해야 한다.
파라미터 이름에서 볼 수 있듯이 파일이나 폴더를 open하거나 print할 수도 있다.

웹 페이지 주소는 4번째 파라미터로 파일일 경우에는 접근할 파일을 의미한다.
(단 파일은 실행 가능한 파일이어야 한다)
웹페이지를 실행해야 하므로, 웹 페이지의 주소를 넣어 준다.
마지막으로, 디폴트 디렉토리와 실행 상수값을 입력하면 된다.
실행 상수는, 여러 개가 있으나 그 중 일부를 보면 다음과 같다.

SW_HIDE : 실행시 숨긴상태로 실행
SW_SHOW : 그냥 실행
SW_SHOWMAXIMIZED : 실행시 화면에 가득 차게 실행

Example Code
// Webpage-Redirect
::ShellExecute(NULL, _T("open"), _T("iexplore"), _T(http://naver.com), NULL, SW_SHOW);

// Excutable-File
::ShellExecute(NULL, _T("open"), _T("notepad.exe"), NULL, NULL, SW_SHOW);

'프로그래밍' 카테고리의 다른 글

구글 가젯 만들기, Part1  (1) 2007.08.21
Resource Leaking  (6) 2007.08.13
SetTimer()  (0) 2007.05.14
ROBOCODE Master의 비밀!!!  (0) 2007.04.23
우연히 보게 된 코드  (2) 2007.04.19