Windows²Ù×÷ϵͳ C/C++ ³ÌÐòʵÑé
ÐÕÃû£º_____Íõ³¿è´_____ ѧºÅ£º____1131000046____ °à¼¶£º____1°à_____ Ժϵ£º___ÐÅÏ¢¹¤³ÌѧԺ___
__2015__Äê_10_ÔÂ_26_ÈÕ
ʵÑé¶þ Windows 2000/xp½ø³Ì¿ØÖÆ
Ò»¡¢±³¾°ÖªÊ¶ ¶þ¡¢ÊµÑéÄ¿µÄ Èý¡¢¹¤¾ß/×¼±¸¹¤×÷ ËÄ¡¢ÊµÑéÄÚÈÝÓë²½Öè
Çë»Ø´ð£º
WindowsËù´´½¨µÄÿ¸ö½ø³Ì¶¼ÊÇÒÔµ÷ÓÃCreateProcess()APIº¯Êý¿ªÊ¼ºÍÒÔµ÷ÓÃTerminateProcess()»ò ExitProcess() APIº¯ÊýÖÕÖ¹¡£ 1. ´´½¨½ø³Ì
²½Öè5£º±àÒëÍê³Éºó£¬µ¥»÷¡°Build¡±²Ëµ¥Öеġ°Build 2-1.exe¡±ÃüÁ½¨Á¢2-1.exe¿ÉÖ´ÐÐÎļþ¡£
²Ù×÷ÄÜ·ñÕý³£½øÐУ¿Èç¹û²»ÐУ¬Ôò¿ÉÄܵÄÔÒòÊÇʲô£¿
¿ÉÒÔÕý³£ÔËÐС£
Çåµ¥2-1չʾµÄÊÇÒ»¸ö¼òµ¥µÄʹÓÃCreateProcess() APIº¯ÊýµÄÀý×Ó¡£Ê×ÏÈÐγɼòµ¥µÄÃüÁî
1
ÐУ¬Ìṩµ±Ç°µÄEXEÎļþµÄÖ¸¶¨ÎļþÃûºÍ´ú±íÉú³É¿Ë¡½ø³ÌµÄºÅÂë¡£´ó¶àÊý²ÎÊý¶¼¿Éȡȱʡֵ£¬µ«ÊÇ´´½¨±êÖ¾²ÎÊýʹÓÃÁË£º
CREATE_NEW_CONSOLE
±êÖ¾£¬Ö¸Ê¾Ð½ø³Ì·ÖÅäËü×Ô¼ºµÄ¿ØÖÆÌ¨£¬ÕâʹµÃÔËÐÐʾÀý³ÌÐòʱ£¬ÔÚÈÎÎñÀ¸ÉϲúÉúÐí¶à»î¶¯±ê¼Ç¡£È»ºó¸Ã¿Ë¡½ø³ÌµÄ´´½¨·½·¨¹Ø±Õ´«µÝ¹ýÀ´µÄ¾ä±ú²¢·µ»Ømain() º¯Êý¡£ÔڹرճÌÐò֮ǰ£¬Ã¿Ò»½ø³ÌµÄÖ´ÐÐÖ÷Ïß³ÌÔÝͣһϣ¬ÒÔ±ãÈÃÓû§¿´µ½ÆäÖеÄÖÁÉÙÒ»¸ö´°¿Ú¡£
CreateProcess() º¯ÊýÓÐ10¸öºËÐIJÎÊý£¿±¾ÊµÑé³ÌÐòÖÐÉèÖõĸ÷¸ö²ÎÊýµÄÖµÊÇ£º a. LPCSTR lpApplivetionName szFllename b. LPCSTR lpCommandLine szCmdLine
c. LPSECURITY_ATTRIBUTES lpProcessAttributes NULL d. LPSECURITY_ATTRIBUTES lpThreadAttributes NULL e.BOOL bInherithandle False
f. DWORD dwCreationFlage CREATE_NEW_CONSOLE g. LPVOID ipEnvironment NULL h. LPCTSTR lpCurrentDirectory NULL I. STARTUPINFO lp startupinfo &si
J. LPPROCESS_INFORMATION lpProcessInformation &pi ³ÌÐòÔËÐÐʱÆÁÄ»ÏÔʾµÄÐÅÏ¢ÊÇ£º
2
Ìáʾ£º²¿·Ö³ÌÐòÔÚVisual C++»·¾³Íê³É±àÒë¡¢Á´½ÓÖ®ºó£¬»¹¿ÉÒÔÔÚWindows 2000/xpµÄ¡°ÃüÁîÌáʾ·û¡±×´Ì¬Ï³¢ÊÔÖ´ÐиóÌÐò£¬¿´¿´ÓëÔÚ¿ÉÊÓ»¯½çÃæÏÂÔËÐеĽá¹ûÓÐûÓв»Í¬£¿ÎªÊ²Ã´£¿½çÃæÊÇÒ»ÑùµÄ
2. ÕýÔÚÔËÐеĽø³Ì
²½Öè10£º±àÒëÍê³Éºó£¬µ¥»÷¡°Build¡±²Ëµ¥Öеġ°Build 2-2.exe¡±ÃüÁ½¨Á¢2-2.exe¿ÉÖ´ÐÐÎļþ¡£
²Ù×÷ÄÜ·ñÕý³£½øÐУ¿Èç¹û²»ÐУ¬Ôò¿ÉÄܵÄÔÒòÊÇʲô£¿¿ÉÒÔÕý³£ÔËÐÐ
²½Öè11£ºÔÚ¹¤¾ßÀ¸µ¥»÷¡°Execute Program¡± (Ö´ÐгÌÐò) °´Å¥£¬Ö´ÐÐ2-2.exe³ÌÐò¡£
3