.


:




:

































 

 

 

 


Windows NT




 

, . , .

WINDOWS . CreateProcess , :

BOOL CreateProcess(LPCTSTR pNameModule, LPCTSTR pCommandLine,

LPSECURITY_ATTRIBUTES pProcessAttr,

LPSECURITY_ATTRIBUTES pThreadAttr, BOOL InheritFlag,

DWORD CreateFlag, LPVOID penv, LPCTSTR pCurrDir,

LPSTARTUPINFO pstartinfo,

LPROCESS_INFORMATION pProcInfo);

LPCTSTR ( FLAT) , DWORD LONG.

pProcessAttr, pThreadAttr Windows NT , NULL.

pNameModule ( .EXE), pCommandLine . , .

InheritFlag ( FALSE).

pCurrDir , , NULL.

penv , , NULL.

CreateFlag . NORMAL_PRIORITY_CLASS.

. pstartinfo () 18 , . . PROCESS_INFORMATION, , . :

Typedef struct

{HANDLE hProcess;

HANDLE hThread;

DWORD dwProcessID;

DWORD dwThread;

} PROCESS_INFORMATION;

hProcess, , dwProcessID, ( ) .

CreateProcess BOOL , . TRUE, FALSE, . #include windows.h.

, Parent.cpp Child.cpp .

 

Parent.cpp

#include <windows.h>

#include <stdio.h>

DWORD CreationFlags;

int main()

{ int k;

DWORD rc;

STARTUPINFO si;

PROCESS_INFORMATION pi;

printf(Demonstration processes, Main Process\n);

memset(&si,0,sizeof(STARTUPINFO));

si.cb=sizeof(si);

CreationFlags=NORMAL_PRIORITY_CLASS;

rc=CreateProcess(NULL,child.exe,NULL,NULL,FALSE,

CreationFlags,NULL,NULL,&si,&pi);

if (!rc)

{ printf(Error in creation process, codeError=%ld\n,GetLastError());

getch();return(0);}

printf(For Child Process:\n);

printf(hProcess=%d,hThread=%d,ProcessID=%ld,ThreadID=%ld,

pi.hProcess,pi.hThread,pi.dwProcessID,dwThreadID);

for (k=0;k<10;k++)

{ printf(I am Parent...(my k=%d)\n,k); Sleep(2000);

CloseHandle(pi.hProcess);CloseHandle(pi.hThread);

Return 0);

}

Child.cpp

#include <stdio.h>

#include <windows.h>

int main()

{ int k;

printf(Demonstration Process, Child Process\n);

for (k=0;k<30;k++)

{ printf(I am Child... (k=%d)\n\r,k); Sleep(1000); }

return 0;

}

CloseHandle(). , ( ).

. Windows TerminateProcess(), :

BOOL TerminateProcess(HANDLE hProcess, UINT uExitCode)

hProcess , , uExitCode .

( )

VOID ExitProcess(UINT uExitCode),

, exit() .

 

:

1. MS Windows.

2. .

 

 

7





:


: 2016-12-06; !; : 499 |


:

:

- , , .
==> ...

1577 - | 1381 -


© 2015-2024 lektsii.org - -

: 0.009 .