24小时热门版块排行榜    

查看: 1099  |  回复: 3

wyp6356

新虫 (小有名气)

[交流] shell函数 已有2人参与

vb调用fluent执行journal文件,如何等待其结束再执行下一语句

发自小木虫Android客户端
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

jjdg

版主 (知名作家)

优秀版主


小木虫: 金币+0.5, 给个红包,谢谢回帖
vb用shell调用程序,等待其结束再继续往下执行 (2006-10-18 08:57:18)转载▼
分类: 编程
Private Const SYNCHRONIZE = &H100000
Private Const INFINITE = &HFFFFFFFF

Private Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long
Private Declare Function WaitForSingleObject Lib "kernel32" (ByVal hHandle As Long, ByVal dwMilliseconds As Long) As Long
Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long

Dim lngPId As Long
Dim lngPHandle As Long

lngPId = Shell("tmp.bat", vbHide)
lngPHandle = OpenProcess(SYNCHRONIZE, 0, lngPId)
If lngPHandle <> 0 Then
    Call WaitForSingleObject(lngPHandle, INFINITE) '无限等待,直到程式结束
    Call CloseHandle(lngPHandle)
End If
努力学习!以正当途径!获得需要的知识!
2楼2018-05-04 11:12:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wyp6356

新虫 (小有名气)

引用回帖:
2楼: Originally posted by jjdg at 2018-05-04 11:12:06
vb用shell调用程序,等待其结束再继续往下执行 (2006-10-18 08:57:18)转载▼
分类: 编程
Private Const SYNCHRONIZE = &amp;H100000
Private Const INFINITE = &amp;HFFFFFFFF

Private Declare Fun ...

试过这个了,  只改了这个 lngPId = Shell("E:\Program Files\ANSYS Inc\v150\fluent\ntbin\win64\fluent.exe -r15.0.0 3d -i F:\ppppp\oh.jou", vbHide),vb不会等待fluent结束
3楼2018-05-05 14:34:54
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zhaomaogen

银虫 (小有名气)

原程序引用的是一个批处理文件,你直接引用输入的内容不一定和批处理文件一致,检查下看看。
4楼2019-05-17 20:40:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 wyp6356 的主题更新
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见