C++ 윈도우즈 프로그래밍에서 명령행 파라메터를 가져오기 위해서는 __argc, __argv 를 이용한다.

이 외에 이번 포스팅에서 소개할 방법은 API를 활용하는 방법이다.

아래의 API를 사용하게되면 UNICODE 의 경우에도 별다른 작업없이 파라메터를 사용할 수 있다.

명령행 문자열을 가져오는 함수
    LPWSTR WINAPI GetCommandLineW(void);

이 함수를 실행하면 경로를 포함한 프로그램 이름과 명령행 파라메터를 문자일로 반환한다.


명령행 문자열을 문자열 배열로 변환하는 함수
LPWSTR *CommandLineToArgvW(      
    LPCWSTR lpCmdLine,
    int *pNumArgs
);

이 함수는 명령행 문자열과 파라메터 개수를 저장을 정수형 포인터를 받아 명령행 문자열을 문자열 배열형태로 바꿔주고 이때 문자열 배열 개수를 넘겨준 포인터 변수에 할당한다.
MFC 에서는 그냥 사용하면 되지만 C++ Builder 에서는 ShellApi.h 를 포함시켜줘야한다.

간단한 예를 보는 것이 이해가 빠를 것이다.


MSDN : GetCommandLine Function
MSDN : CommandLineToArgvW Function

Posted by NeoDreamer
:
BLOG main image
사람의 발목을 잡는건 '절망'이 아니라 '체념'이고 앞으로 나아가게 하는건 '희망'이 아니라 '의지'다. - 암스 중에서 - by NeoDreamer

공지사항

카테고리

전체보기 (793)
Life Story (1)
Thinking (2)
Nothing (5)
---------------* (0)
Dev Story (701)
Com. Story (80)
IT Story (1)
---------------+ (0)
Etc (2)

최근에 올라온 글

최근에 달린 댓글

최근에 받은 트랙백

Total :
Today : Yesterday :
05-08 06:56