有没有一种方法或事件可以在运行时检索命令行参数

时间:2020-04-27 22:33:35

标签: vb.net command-line-arguments media-player windows-explorer .net-4.6.1

因此,到目前为止,我正试图制作一个媒体播放器,目前处于最后阶段,我要发布供人下载的媒体播放器,我只是遇到了一个问题,我需要在运行时捕获命令行参数,到目前为止,我已经检查了仅运行该应用程序的一个实例,并且在使用Windows资源管理器中的“打开方式”时可以接收命令行参数,但是我需要做的是能够在运行时获取命令行参数,假设您您正在使用我的应用程序,正在听音乐,并且在PC的文件夹中找到了自己喜欢的音乐,因此您懒得切换到应用程序并使用打开文件按钮,只想双击歌曲并开始收听,现在,如果在双击歌曲时关闭了应用程序,它将毫无问题地播放,但是如果应用程序正在运行,它将不会播放窗口,只会切换到该应用程序。 所以问题是:如果在运行时将命令行参数传递给应用程序,是否有事件或方法可以捕获?

1 个答案:

答案 0 :(得分:0)

由于您已表示已将应用程序制成单个实例应用程序,因此很有可能正在使用VB的应用程序框架。该框架公开了StartupNextInstance Event。从该事件的文档中。

您必须使用e参数的CommandLine属性来访问参数,以便随后尝试启动单实例应用程序。

要为该事件添加处理程序,可以使用设计器通过“项目”菜单->“ PropjectName属性”->“应用程序”选项卡-“查看应用程序事件”按钮创建处理程序,或仅将以下内容复制到项目中的代码文件中。 / p>

Imports Microsoft.VisualBasic.ApplicationServices

Namespace My
  Partial Friend Class MyApplication
    Private Sub MyApplication_StartupNextInstance(sender As Object, e As StartupNextInstanceEventArgs) Handles Me.StartupNextInstance
      ' use e.CommandLine
    End Sub
  End Class
End Namespace