希望陈辉当API版主,随便问个简单的问题
我想在VB中 执行一个lnk文件
代码一:
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
Call ShellExecute(hwnd, "open ", "c:\510037.lnk ", , , 1)
Call ShellExecute(hwnd, "start ", "c:\510037.lnk ", , , 1)
后面两个参数我提问题时是有的,删了
执行 没有任何反应
代码二:
Shell "start C:\510037.lnk ", 0
提示 [文件不存在]
但这个文件确实是有的
求助
[解决办法]
首先谢谢这位兄弟的支持~~~
请问兄弟是??
你要得答案我给出一种简单的方法
先引用Windows Script Host Model然后使用下面函数获取LNK的真实路径然后再用Shell或者是ShellExecute就可以了
Private Function GetLnkPath(ByVal strLnkPath As String) As String
Dim objShell As New WshShell
Dim obkShortcut As New WshShortcut
Set obkShortcut = objShell.CreateShortcut(strLnkPath)
GetLnkPath = obkShortcut.TargetPath
End Function