VB关于Shell函数的返回值

Shell函数的返回值为所打开程序的进程ID我的系统是Win764位的,用这个函数打开大部分程序都没问题,比如notepad.exe、calc.exe等这个都没错,但是用... Shell函数的返回值为所打开程序的进程ID
我的系统是Win7 64位的,用这个函数打开大部分程序都没问题,比如notepad.exe、calc.exe等这个都没错,但是用它打开系统的资源管理器pid=Shell("explorer.exe"),这个返回值就不是进程的ID了,这是怎么回事? 求大神告知:如何获得自己打开的这个资源管理器的进程ID啊?
展开
 我来答
网海1书生
科技发烧友

2013-11-11 · 擅长软件设计、WEB应用开发、小程序
网海1书生
采纳数:12311 获赞数:26228

向TA提问 私信TA
展开全部
explorer只有在首次运行的时候才返回它自身的PID,再次运行的时候返回的就是它调用的资源的PID。如果你想在VB中获得explorer本身的PID,就要通过API函数把explorer这个进程杀掉(这时候桌面就消失了),然后再用shell打开。
阳光上的桥
2013-11-11 · 知道合伙人软件行家
阳光上的桥
知道合伙人软件行家
采纳数:21423 获赞数:65813
网盘是个好东东,可以对话和传文件

向TA提问 私信TA
展开全部
explorer.exe是不允许重复运行的,你pid=Shell("explorer.exe")调用实际上会出错,出错的时候返回值不是PID,需要查找现有explorer.exe进程的PID需要使用其它方法。
追问
但是pid=Shell("explorer.exe C:")这句又能成功运行啊? 那这个返回值是什么呢?
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式