vb.net qt5调用外部exe程序的问题

帮忙看下程序,调用外部exe程序等待问题_vb.net吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:4,572贴子:
帮忙看下程序,调用外部exe程序等待问题收藏
Dim mypros As System.Diagnostics.Process = New System.Diagnostics.Processmypros.StartInfo.FileName = "D:\MSC.Software\MD_Nastran\20101\bin\mdnastranw.exe"mypros.StartInfo.Arguments = "101.BDF notify=no"
mypros.Start()
mypros.WaitForExit()
MessageBox.Show("计算完成")----------------目的mdnastranw.exe后台运行完毕,提示计算完成,然后继续执行下面代码;可是,上面代码exe还在运行就提示计算完毕,mypros.WaitForExit()是不是没有起作用?如何更改,谢谢啊
福利不只是穿多穿少,还要有迷人的微笑!
WaitForExit 放到 start 前面去
登录百度帐号推荐应用
为兴趣而生,贴吧更懂你。或【模块、类模块或其它源码】这里是源码发布区,在本区只能发布源码,否则一律删除。
288 / 1603
讨论VB函数添加大师的使用经验用技术交流。大家如果发现VB函数添加大师的BUG或有好的建议,请到这里发帖。
Powered byVB.NET如何得到调用当前过程的方法名称和类名-程序设计-就爱阅读网
您还可以使用以下方式登录
当前位置:&>&&>&&>& > VB.NET如何得到调用当前过程的方法名称和类名
VB.NET如何得到调用当前过程的方法名称和类名
  本教程为大家介绍VB.NET如何得到调用当前过程的方法名称和类名称。  本文讲述VB.NET(VB 2008, VB 2005) 如何得到调用当前过程的方法名称(Calling method)和类(Calling Class) 的名称。  主要用到 System.Diagnostics.StackTrace 和 System.Diagnostics.StackFrame,以及 StackFrame的方法:GetFileName,GetFileLineNumber,GetMethod.Name, GetMethod.ReflectedType.Name。  示例代码  如下面示例代码所示,我们有两个类:Class1 和 Class2 ,Class1 的有一个方法(method)叫 LoadXmlFile调用 Class2 的 WriteToFile 方法。Imports System.XmlPublic Class Class1
Public Sub LoadXmlFile()
Dim filePath As String = &C:a.xml&  
Dim xdoc As New Xml.XmlDocument
xdoc.Load(filePath)  
Catch ex As Exception  
Dim log As New Class2  
log.WriteToFile(&Error. Load XML File failed&)  
End SubEnd ClassImports System.DiagnosticsPublic Class Class2
Public Sub WriteToFile(ByVal Log As String)
Dim clsName As String = &&  
Dim mtdName As String = &&  
Dim lnNo As String = &&  
Dim codeFilePath As String = &&
Dim st As New StackTrace(True)  
If st.FrameCount & 1 Then  
Dim sf As StackFrame = st.GetFrame(1)  
mtdName = sf.GetMethod.Name  
Debug.WriteLine(mtdName)
clsName = sf.GetMethod.ReflectedType.Name  
Debug.WriteLine(clsName)
lnNo = sf.GetFileLineNumber.ToString  
Debug.WriteLine(lnNo)
codeFilePath = sf.GetFileName  
Debug.WriteLine(codeFilePath)  
End SubEnd Class  在 Class2里面,我们写了一些代码得到调用它的 Class1的名称,所在文件路径,调用方法的名称,以及调用文件里执行调用的行数。  要点  1. 要 Imports System.Diagnostics。  2. 要用到 StackTrace (System.Diagnostics.StackTrace) 和 StackFrame (System.Diagnostics.StackFrame)。  3. 要用到 StackTrace.GetFrame(1)。  4. StackFrame.GetMethod.Name 得到调用当前过程的方法 (calling method name)。  5. StackFrame.GetMethod.ReflectedType.Name 得到调用当前过程的类的名称 (calling class name)。  6. StackFrame.GetFileLineNumber.ToString 得到调用当前过程的语句在文件里的行数。  7. StackFrame.GetFileName 得到调用当前过程的文件路径。
您可能也喜欢这些.NET(11)
Imports System.Runtime.InteropServices
Imports System.Text
Public Class RunAs
Private Const LOGON_WITH_PROFILE = 1
Private Const LOGON_NETCREDENTIALS_ONLY = 2
Private Const CREATE_DEFAULT_ERROR_MODE = &H4000000
Private Const CREATE_NEW_CONSOLE = &H10
Private Const CREATE_NEW_PROCESS_GROUP = &H200
Private Const CREATE_SEPARATE_WOW_VDM = &H800
Private Const CREATE_SUSPENDED = &H4
Private Const CREATE_UNICODE_ENVIRONMENT = &H400
Private Const ABOVE_NORMAL_PRIORITY_CLASS = &H8000&
Private Const BELOW_NORMAL_PRIORITY_CLASS = &H4000&
Private Const HIGH_PRIORITY_CLASS = &H80&
Private Const IDLE_PRIORITY_CLASS = &H40&
Private Const NORMAL_PRIORITY_CLASS = &H20&
Private Const REALTIME_PRIORITY_CLASS = &H100&
&StructLayout(LayoutKind.Sequential, CharSet:=CharSet.Unicode)& _
Private Structure STARTUPINFO
Public cb As Integer
Public lpReserved As String
Public lpDesktop As String
Public lpTitle As String
Public dwX As Integer
Public dwY As Integer
Public dwXSize As Integer
Public dwYSize As Integer
Public dwXCountChars As Integer
Public dwYCountChars As Integer
Public dwFillAttribute As Integer
Public dwFlags As Integer
Public wShowWindow As Short
Public cbReserved2 As Short
Public lpReserved2 As Integer
Public hStdInput As Integer
Public hStdOutput As Integer
Public hStdError As Integer
End Structure
&StructLayout(LayoutKind.Sequential, CharSet:=CharSet.Unicode)& _
Private Structure PROCESS_INFORMATION
Public hProcess As IntPtr
Public hThread As IntPtr
Public dwProcessId As Integer
Public dwThreadId As Integer
End Structure
&DllImport(&Advapi32&, _
SetLastError:=True, _
CharSet:=CharSet.Unicode, _
EntryPoint:=&CreateProcessWithLogonW&, _
CallingConvention:=CallingConvention.StdCall)& _
Private Shared Function CreateProcessWithLogon( _
ByVal lpUsername As String, _
ByVal lpDomain As String, _
ByVal lpPassword As String, _
ByVal dwLogonFlags As Integer, _
ByVal lpApplicationName As String, _
ByVal lpCommandLine As String, _
ByVal dwCreationFlags As UInteger, _
ByVal lpEnvironment As Integer, _
ByVal lpCurrentDirectory As String, _
ByRef lpStartupInfo As STARTUPINFO, _
&Out()& ByRef lpProcessInfo As PROCESS_INFORMATION) As Boolean
End Function
&DllImport(&kernel32.dll&, _
SetLastError:=True, _
CharSet:=CharSet.Ansi)& _
Private Shared Function CloseHandle(ByVal handle As Integer) As Boolean
End Function
Public Shared Sub BootUpToMcad(ByVal strExeFilepath As String)
&'CommandLine
Dim strCommandLine As String = mandLine
If strCommandLine && && Then
strCommandLine = & & & strCommandLine
Dim lResult As Boolean
Dim StartInfo As STARTUPINFO = New STARTUPINFO
Dim ProcessInfo As PROCESS_INFORMATION = New PROCESS_INFORMATION
StartInfo.cb = Marshal.SizeOf(StartInfo)
StartInfo.dwFlags = 0
lResult = CreateProcessWithLogon(&UserAccount&, &&, &UserPassword&, _
LOGON_WITH_PROFILE, strExeFilepath, strCommandLine, _
CREATE_DEFAULT_ERROR_MODE Or CREATE_NEW_CONSOLE Or CREATE_NEW_PROCESS_GROUP, _
0, Nothing, StartInfo, ProcessInfo)
If (Not lResult) Then
Throw ponentModel.Win32Exception()
CloseHandle(ProcessInfo.hThread)
CloseHandle(ProcessInfo.hProcess)
Catch ex As Exception
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:16858次
排名:千里之外
原创:13篇
(1)(4)(1)(1)(3)(5)vb-process-PASSED vb.net2012调用外部程序,监测 是否关闭,解决端口占用的思路,经测试通过。
247万源代码下载-
&文件名称: vb-process-PASSED& & [
& & & & &&]
&&所属分类:
&&开发工具: Visual Basic
&&文件大小: 1 KB
&&上传时间:
&&下载次数: 0
&&提 供 者:
&详细说明:vb.net2012调用外部程序,监测外部程序是否关闭,解决端口占用的思路,经测试通过。-vb.net2012 call an external program, monitor the external program is closed, resolve the port occupied by the idea, after the test.
文件列表(点击判断是否您需要的文件,如果是垃圾请在下面评价投诉):
&&调用和监视外部进程.txt
&输入关键字,在本站247万海量源码库中尽情搜索:

我要回帖

更多关于 delphi 调用外部exe 的文章

 

随机推荐