我想在程序中执行另外一个可执行文件,不知用什么函数?另外哪位有没有监控某个程序是否正在运行,如果没有运行则自动启动的程序或源代码?
解决方案 »
- 请问,解一个n元一次方程组,一定有解,如何求解?急
- 关于字符串加密保存,然后解密取出来,用什么函数能实现,求教?
- 怎样实现 像window的 “查找文件" 那样有两个窗格(左右两个)???
- 使用DataRport打印的时候,如果不和数据源相联就会给出提示,而我只rptLabel打印文字,和数据库无关,怎么能去掉那个提示?
- rsform 问题(vb)
- 用MSComm控件,当设置PortOpen=True时,怎么知道指定串口上是否已连接有设备。
- lianghong(寂寞水手)上笔账我结了.怎样响应Api创建成的菜单单击事件呢?
- vb与sqlsever 的连接问题,各位大哥请多指教有奖的
- dimn aaa as new adoob.connection 和 dim aa as adodb.connection有何区别?
- 大苯瓜只最菜的问题。
- 求教急:如何解决Excel的错误信息:"0x6dde20e5"
- 如何让data控件支持sql数据库?
API函数:
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
Const SW_SHOWNORMAL = 1
Private Sub Form_Load()
ShellExecute Me.hwnd, vbNullString, "c:\1.exe", vbNullString, "", SW_SHOWNORMAL
End Sub
====================
Private Declare Function WinExec Lib "kernel32" (ByVal lpCmdLine As String, ByVal nCmdShow As Long) As Long
Private Sub Form_Load()
WinExec "Explorer.exe c:\", 10
End Sub
Dim winname1, winname2 As String * 256
Dim apppath As String * 256Private Sub Form_Load()
Dim nLength As Long
winname1 = Space$(256)
winname2 = Space$(256)
nLength = GetPrivateProfileString("", "winname1", "KTVPLAY", winname1, 255, "ClientDll.ini")
winname1 = Left$(winname1, nLength)
nLength = GetPrivateProfileString("", "winname2", "Reboot", winname2, 255, "ClientDll.ini")
winname2 = Left$(winname2, nLength)
nLength = GetPrivateProfileString("", "AppPath", "D:\abc\abc.exe", apppath, 255, "ClentDll.ini")
apppath = Left$(apppath, nLength)
interval = GetPrivateProfileInt("", "timer", 3000, "ClientDll.ini")
Timer1.interval = interval
Label1.Caption = "启动程序中......"
Dim ret As Long
ret = Shell(apppath, vbMaximizedFocus)执行到这里就提示:无效的过程调用或参数.
我是新手,大家帮我看看上面读INI文件有没有什么问题
'在d盘根目录新建 aaa.ini文件'模拟程序
'模块中
Option Explicit'-------------------------
'声明
Declare Function WritePrivateProfileString Lib "kernel32" Alias "WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpString As Any, ByVal lpFileName As String) As Long
Declare Function GetPrivateProfileString Lib "kernel32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Long, ByVal lpFileName As String) As Long'获得设置
Public Function MyGetSetting(Section As String, KeyName As String, DefaultValue As String) As String Dim X As Long
Dim Holder As String * 255 X = GetPrivateProfileString(Section, KeyName, DefaultValue, Holder, 254, "d:\aaa.ini")
MyGetSetting = Left$(Holder, InStr(Holder, Chr$(0)) - 1)End Function'保存设置
Public Sub MySetSetting(Section As String, KeyName As String, KeyValue As String) Dim X As Long X = WritePrivateProfileString(Section, KeyName, KeyValue, "d:\aaa.ini")End Sub'窗体中
Private Sub Command1_Click()
'保存变量
MySetSetting "服务器名", "服务器名", "Myserver"
MySetSetting "用户名", "用户名", "sa"
MySetSetting "密码", "密码", "aaaa"
MySetSetting "数据库名", "数据库名", "Mydatabase"
MsgBox "保存成功"
End SubPrivate Sub Command2_Click()
'取出变量
MsgBox MyGetSetting("服务器名", "服务器名", "")
MsgBox MyGetSetting("用户名", "用户名", "")
MsgBox MyGetSetting("密码", "密码", "")
MsgBox MyGetSetting("数据库名", "数据库名", "")
End Sub
Private Sub Form_Load()
'Execute explorer.exe
WinExec "Explorer.exe c:\", 10
End Sub
' normal size and gives it the focus.
Dim RetVal
RetVal = Shell("C:\WINDOWS\CALC.EXE", 1) ' Run Calculator.