ex1.cpp

来自「软件课程设计代码」· C++ 代码 · 共 48 行

CPP
48
字号
#include <windows.h>
#include <stdio.h>
#include <string.h>
#include <fstream.h>

void main()
{
	ifstream ifile;
	ifile.open("batch");
	char process_name[100];
	LPCTSTR lpApplicationName = NULL;
	LPSECURITY_ATTRIBUTES processSA = NULL;		/* Default */
	LPSECURITY_ATTRIBUTES threadSA = NULL;		/* Default */
	BOOL shareRights = TRUE;					/* Default */	
	DWORD creationMask =	CREATE_NEW_CONSOLE;	/* Window per process */
	LPVOID environment = NULL;					/* Default */
	LPTSTR curDir = NULL;						/* Default */	
	STARTUPINFO startInfo;						/* Result */	
	PROCESS_INFORMATION processInfo;			/* Result */

	ZeroMemory(&startInfo,sizeof(startInfo));
	startInfo.cb = sizeof(startInfo);

	while(ifile>>process_name)
	{
		if(!CreateProcess(	lpApplicationName,	/* File name of executable */
							process_name,			/* Command line */
							processSA,			/* Process inherited security */
							threadSA,			/* Thread inherited security */
							shareRights,		/* Right propagation */
							creationMask,		/* Various creation flags */
							environment,		/* Environment variabkesr */
							curDir,				/* Child's current directory */
							&startInfo,
							&processInfo	 ))
		{
			fprintf(stderr,"CreatProcess failed on error %d\n",GetLastError());
			ExitProcess(1);
		}
		fprintf(stdout,"The Child Process's PID: %d.\n", processInfo.dwProcessId);
		fprintf(stdout,"The Parent Process finish.\n");
		Sleep(500);
		CloseHandle(processInfo.hProcess);
		CloseHandle(processInfo.hThread);
	}
	ifile.close();
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?