| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2048 人关注过本帖, 2 人收藏
标题:关于VB的Shell同步执行问题
取消只看楼主 加入收藏
三断笛
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:31
帖 子:1621
专家分:1617
注 册:2007-5-24
结帖率:37.5%
收藏(2)
 问题点数:0 回复次数:0 
关于VB的Shell同步执行问题
又看到有朋友遇到这个问题,公布一个解决方法
   '标准模块中
  Public   Const   SYNCHRONIZE   =   &H100000   
  Public   Const   INFINITE   =   &HFFFFFFFF   
  Public   Const   WAIT_TIMEOUT   =   &H102&   
   
  Declare   Function   OpenProcess   Lib   "kernel32"   (ByVal   dwDesiredAccess   As   Long,   ByVal   bInheritHandle   As   Long,   ByVal   dwProcessId   As   Long)   As   Long   
  Declare   Function   CloseHandle   Lib   "kernel32"   (ByVal   hObject   As   Long)   As   Long   
  Declare   Function   WaitForSingleObject   Lib   "kernel32"   (ByVal   hHandle   As   Long,   ByVal   dwMilliseconds   As   Long)   As   Long   
  
sub RunExe(FileName as string)
          Dim   pId   As   Long,   pHnd   As   Long,   ret   
              pId   =   Shell(FileName,   vbNormalFocus)   
          pHnd   =   OpenProcess(SYNCHRONIZE,   0,   pId)   
          If   pHnd   <>   0   Then   
                                    Do   
                          ret   =   WaitForSingleObject(pHnd,   0)   
                          DoEvents   
                  Loop   While   ret   =   WAIT_TIMEOUT   
                  CloseHandle   pHnd   
                          End   If   
  End   Sub


'遇到要用Shell调用程序时换用Runexe函数执行
搜索更多相关主题的帖子: Shell 
2007-11-24 10:03
快速回复:关于VB的Shell同步执行问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020887 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved