在VB.NET下如何通过代码创建桌面和开始菜单快捷方式?

时间:2020-12-30 18:30:55
在VB.NET下如何通过代码创建桌面和开始菜单快捷方式?
谢谢专家。:-)

5 个解决方案

#1


介个,要通过.net的安装程序制作器了。

创建快捷方式
此步骤将为您的应用程序创建一个快捷方式,安装过程中,该快捷方式将放置到目标计算机的桌面上。

为 Windows 应用程序创建快捷方式 

在解决方案资源管理器中选择“我的记事本安装程序”项目。 
在“文件系统编辑器”中,选择“主输出来自‘我的记事本’”节点。 
在“操作”菜单上,选择“创建主输出来自‘我的记事本’的快捷方式”。 
这将添加一个“主输出来自‘我的记事本’的快捷方式”节点。 

将此快捷方式重命名为“我的记事本的快捷方式”。 
选择“我的记事本的快捷方式”,并将其拖到左窗格的“用户桌面”文件夹中。

#2


可用API、写入注册表的方法来实现。

#3


谢谢两位
我不是在安装时建立,而是要通过代码来建立。
to 3tzjq:对不起,我不懂API,:-(

#4


再问一下,
在VB.NET下如何通过代码创建桌面和开始菜单快捷方式?
如何对桌面快捷方式进行操作?比如改名、更改图标等等?
谢谢专家。:-)

#5



在解决方案中引用上点右键,选择添加引用 
在添加引用对话框中选择COM页
然后选择"Windows Scripting Host Object Model"并添加

Imports IWshRuntimeLibrary

    '==================================================================
    'Dim Dir As String = "c:\"
    'CreateShortCut(Dir)
    '==================================================================


    Public Function CreateShortCut(ByVal path As String)
        Try
            Dim WshShell As New WshShell
            Dim shortCut As IWshRuntimeLibrary.IWshShortcut
            shortCut = CType(WshShell.CreateShortcut(path & "\" & Process.GetCurrentProcess.ProcessName & ".lnk"), IWshRuntimeLibrary.IWshShortcut)
            With shortCut
                '.TargetPath = System.Reflection.Assembly.GetExecutingAssembly.Location()
                .TargetPath = Application.ExecutablePath
                .WindowStyle = 1
                '.Description = System.Reflection.Assembly.GetExecutingAssembly.FullName
                .Description = Application.ProductName
                '.WorkingDirectory = path
                .WorkingDirectory = Application.StartupPath
                .IconLocation = System.Reflection.Assembly.GetExecutingAssembly.Location() & ", 0"
                .Save()
            End With
            Return True
        Catch ex As System.Exception
            Return False
        End Try
    End Function

#1


介个,要通过.net的安装程序制作器了。

创建快捷方式
此步骤将为您的应用程序创建一个快捷方式,安装过程中,该快捷方式将放置到目标计算机的桌面上。

为 Windows 应用程序创建快捷方式 

在解决方案资源管理器中选择“我的记事本安装程序”项目。 
在“文件系统编辑器”中,选择“主输出来自‘我的记事本’”节点。 
在“操作”菜单上,选择“创建主输出来自‘我的记事本’的快捷方式”。 
这将添加一个“主输出来自‘我的记事本’的快捷方式”节点。 

将此快捷方式重命名为“我的记事本的快捷方式”。 
选择“我的记事本的快捷方式”,并将其拖到左窗格的“用户桌面”文件夹中。

#2


可用API、写入注册表的方法来实现。

#3


谢谢两位
我不是在安装时建立,而是要通过代码来建立。
to 3tzjq:对不起,我不懂API,:-(

#4


再问一下,
在VB.NET下如何通过代码创建桌面和开始菜单快捷方式?
如何对桌面快捷方式进行操作?比如改名、更改图标等等?
谢谢专家。:-)

#5



在解决方案中引用上点右键,选择添加引用 
在添加引用对话框中选择COM页
然后选择"Windows Scripting Host Object Model"并添加

Imports IWshRuntimeLibrary

    '==================================================================
    'Dim Dir As String = "c:\"
    'CreateShortCut(Dir)
    '==================================================================


    Public Function CreateShortCut(ByVal path As String)
        Try
            Dim WshShell As New WshShell
            Dim shortCut As IWshRuntimeLibrary.IWshShortcut
            shortCut = CType(WshShell.CreateShortcut(path & "\" & Process.GetCurrentProcess.ProcessName & ".lnk"), IWshRuntimeLibrary.IWshShortcut)
            With shortCut
                '.TargetPath = System.Reflection.Assembly.GetExecutingAssembly.Location()
                .TargetPath = Application.ExecutablePath
                .WindowStyle = 1
                '.Description = System.Reflection.Assembly.GetExecutingAssembly.FullName
                .Description = Application.ProductName
                '.WorkingDirectory = path
                .WorkingDirectory = Application.StartupPath
                .IconLocation = System.Reflection.Assembly.GetExecutingAssembly.Location() & ", 0"
                .Save()
            End With
            Return True
        Catch ex As System.Exception
            Return False
        End Try
    End Function