-
-
CMD 重定向到 socket,不能通过 socket发送命令让cmd执行
-
发表于:
2009-12-20 23:01
8711
-
CMD 重定向到 socket,不能通过 socket发送命令让cmd执行
程序的大体流程是这样的:
服务端server.exe 创建listen套接字,接收socket连接,并通过已建立的socket发送cmd命令给客户端,同时接收客户端返回的执行结果.
客户端test.exe利用 createprocess运行cmd程序,并把cmd的输入输出 通过管道重定向到socket.它将通过socket接收服务端发送过来的命令并通过管道传送给cmd执行,执行的结果经由管道到socket,再通过socket将执行结果发送到服务端.
实现过程中碰到一个问题 : 客户端cmd运行时开始的输出信息"Microsoft WindowsXp........G:\masm32"能顺利发送到服务端并显示,从服务端的发送的命令"dir+回车"能顺利被客户端接收并顺利通过管道输送至cmd,但是cmd并没有返回结果!!!不知道什么原因,请高手们帮帮小弟--!
目前猜测问题出现在服务器端发送的命令的结束符有问题, 再多一问:cmd判断命令结束的标识是什么?
整个源代码见附件!
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课