加载快捷键然后自动关闭表单

时间:2013-08-26 04:58:59

标签: vb6

我希望在快捷链接运行时实现...表单自动关闭,顺便提一下我对vb编码很新,所以任何帮助都会非常感激,这是我的代码到目前为止

Private Sub Form_Load()

Set ss = CreateObject("WScript.Shell")
ss.Run Chr(34) & ss.specialfolders("Desktop") & "\app\SOMEGAME.lnk" & Chr(34)

End Sub

1 个答案:

答案 0 :(得分:1)

假设您正在使用VB6(这是您的代码的样子),您可以通过调用

来关闭表单
Unload Me

Form_Load事件处理程序的末尾。

但是,您无需使用表单来启动快捷方式 - 您可以向项目添加模块(右键单击您的项目,选择Add - > Module)和然后只需调用ShellExecute()函数即可启动快捷方式:

'Declare the ShellExecute() API function
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

Private Const SW_SHOWNORMAL As Long = 1

'Entry point of your program
Public Sub Main()

    Dim sPath As String

    sPath = "C:\app\SOMEGAME.lnk"
    ShellExecute 0, vbNullString, sPath, vbNullString, "C:\", SW_SHOWNORMAL

End Sub

要完成此项工作,请将项目属性下的Startup Object设置为Sub Main

使用这种方法,您没有表单 - 您的程序只是从命令行(或从其自己的快捷方式)运行。如果您的程序不需要它,通常最好不要创建/显示表单,因为表单使用额外的资源。

话虽如此,你应该尝试使用VB.Net或C#为Windows编写程序 - VB6是旧技术,没有支持,它无法处理许多新技术。如果您还不了解VB6,那么现在学习它几乎没有意义 - 通过学习VB.Net / C#可以更好地利用您的时间。