/*
자식 프로세스(Child Process)
*/
#include <stdio.h> #include <windows.h> #include <tchar.h> #include <locale.h> INT_PTR _tmain(INT_PTR argc, TCHAR* argv[]) { _tsetlocale(LC_ALL, _T("Korean")); _tprintf(_T("자식 프로세스(Child Process) \n")); system("pause"); return 0; }
/* 부모 프로세스(Parent Process : CreateProcess 이용) */ #include <stdio.h> #include <windows.h> #include <tchar.h> #include <locale.h> #define DIR_LEN MAX_PATH+1 INT_PTR _tmain(INT_PTR argc, TCHAR* argv[]) { _tsetlocale(LC_ALL, _T("Korean")); STARTUPINFO si={0}; PROCESS_INFORMATION pi; si.cb = sizeof(si); si.dwFlags = STARTF_USEPOSITION | STARTF_USESIZE; si.dwX=100; si.dwY=200; si.dwXSize = 300; si.dwYSize = 200; si.lpTitle = _T("Hacker Dakuo"); _tprintf(_T("부모 프로세스(Parent Process) \n")); TCHAR command[] = _T("dakuo_C_Process.exe"); BOOL state; state = CreateProcess(NULL, command, NULL, NULL, TRUE, CREATE_NEW_CONSOLE, NULL, NULL, &si, &pi); // CREATE_NEW_CONSOLE : 자식 프로세스를 새로운 콘솔 윈도우로 생성한다. // 콘솔을 기반으로 하지 않는 프로세스에는 의미가 없다 // NULL : 부모 프로세스의 콘솔 윈도우를 자식 프로세스와 공유 if(state!=0) { _tprintf(_T("Creation Sucess\n")); } else { _tprintf(_T("Creation Fail\n")); } system("pause"); return 0; }
'Windows > _System Programming' 카테고리의 다른 글
커널 오브젝트(Kernel Object) (2) | 2010.02.11 |
---|---|
CreateProcess 함수 (0) | 2010.02.10 |
프로세스의 생성과 소멸 (0) | 2010.02.09 |
명령 프롬프트(Cmd) 작성 (0) | 2010.02.09 |
64비트 기반 프로그래밍 (0) | 2010.02.08 |