能力值:
( LV4,RANK:40 )
|
-
-
2 楼
你发送 CTRL + C 是想?
|
能力值:
( LV6,RANK:90 )
|
-
-
4 楼
感谢两位回复:
发送 CTRL + C 是因为需要提交终止某些命令的执行。
对于 shmily云 提到的双进程,不是很明白,能不能解析下,谢谢。
|
能力值:
( LV3,RANK:30 )
|
-
-
5 楼
WriteConsoleInput
|
能力值:
( LV4,RANK:40 )
|
-
-
6 楼
哦 我一开始理解成复制了233-- 你试试 发送 ^C 管用么
|
能力值:
( LV2,RANK:10 )
|
-
-
7 楼
管道通信了,你还要用C+C作神马呢
|
能力值:
( LV2,RANK:10 )
|
-
-
8 楼
管道是半交互是shell,好像不能发送控制字符吧。可以用全交互式shell。
|
能力值:
( LV2,RANK:10 )
|
-
-
9 楼
向CMD传递/K参数就能自己结束,你发CTRL+C想做什么。结束了就可以继续执行了。
|
能力值:
( LV3,RANK:20 )
|
-
-
11 楼
管道传递 & exit 试试
|
能力值:
( LV2,RANK:10 )
|
-
-
12 楼
CreateProcess 满不满足你的需求呢 ?
STARTUPINFO si;
ZeroMemory(&si, sizeof(si));
si.cb = sizeof STARTUPINFO;
si.wShowWindow = SW_HIDE;
si.dwFlags = STARTF_USESHOWWINDOW | STARTF_USESTDHANDLES;
PROCESS_INFORMATION pi;
//没有 /c 貌似不会执行特定的动作
BOOL res = CreateProcess(NULL,"c:\\windows\\system32\\cmd.exe /c ping www.baidu.com", NULL, NULL, NULL,NORMAL_PRIORITY_CLASS | CREATE_NO_WINDOW, NULL, NULL, &si, &pi);
if (TRUE == res)
{
//等待进程执行完毕
WaitForSingleObject(pi.hProcess, INFINITE);
CloseHandle(pi.hProcess);
CloseHandle(pi.hThread);
}
|
能力值:
( LV2,RANK:10 )
|
-
-
13 楼
給CMD傳遞/c參數就能自己結束
|
|
|