码迷,mamicode.com
首页 > 其他好文 > 详细

CreateProcess函数诡异的表现

时间:2016-09-26 14:31:57      阅读:91      评论:0      收藏:0      [点我收藏+]

标签:

 场景:程序A使用CreateProcess函数去启动另一个程序(.exe)文件,在绝大部分情况下是可以成功启动的,但是在某些电脑上无效。

 

因为这“某些电脑”实在不好找,终于有一天借到一台这样的电脑。

 

经过多次实验发现,CreateProcess返回值总为-1,也就是成功创建了进程,而且我是用showPrompt,弹窗打印的该值,如果弹窗,就能创建进程。

 

最后猜想可能是因为CreateProcess之后,随即程序退出了,并不会等程序B创建完成,会不会太快了,导致电脑没反应过来。最后加了一个Sleep(5000); Delphi,程序B就能启动了。

 

查看了一下msdn,第一句话是这样的:The new process runs in the security context of the calling process.不知道是否与此有关。

 

如有知晓者,请解答,谢谢。

CreateProcess函数诡异的表现

标签:

原文地址:http://www.cnblogs.com/huoqs/p/5908837.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!