Vb.net 如何获取启动visual basic应用程序的文件名和位置?

Vb.net 如何获取启动visual basic应用程序的文件名和位置?,vb.net,filenames,parent,Vb.net,Filenames,Parent,我在Windows8上 我有一个播放mp3文件的visual basic 2010 express应用程序。它有一个按钮,可以打开一个OpenFile对话框来选择要播放的mp3。不过,我也将我的vb应用程序设置为mp3文件的默认打开程序。当我双击任何mp3时,它会打开我的vb应用程序。但到目前为止,我还没有办法告诉vb应用程序启动它的mp3文件的名称和路径。应用程序只是打开,但不播放mp3 我需要一种方法,让vb应用程序获得的文件名和mp3的路径,以便播放器将播放它。据我所知,mp3文件被认为是

我在Windows8上

我有一个播放mp3文件的visual basic 2010 express应用程序。它有一个按钮,可以打开一个OpenFile对话框来选择要播放的mp3。不过,我也将我的vb应用程序设置为mp3文件的默认打开程序。当我双击任何mp3时,它会打开我的vb应用程序。但到目前为止,我还没有办法告诉vb应用程序启动它的mp3文件的名称和路径。应用程序只是打开,但不播放mp3

我需要一种方法,让vb应用程序获得的文件名和mp3的路径,以便播放器将播放它。据我所知,mp3文件被认为是vb应用程序的父级,因为它导致了它的启动

我找到了这篇文章,它给了我一点帮助,但我仍然得到了一些奇怪的公共成员布尔错误,这让我大吃一惊


如果您能以任何方式提供帮助,将不胜感激。

如果您已正确设置了文件关联,则无需乱动进程名称。(此外,启动应用程序的过程将是Windows资源管理器,因为它可以处理双击文件并启动相关应用程序,因此获取进程名称对您没有帮助。) 文件名作为命令行参数传递给应用程序,因此您可以从那里检索它

您可以使用
Environment.GetCommandLineArgs()
执行此操作,它返回一个数组,其中包含传递给应用程序的所有命令行参数。数组的第一个元素(索引0)是应用程序的完整路径和文件名,索引1处的项是传递的第一个参数(应该是您的.mp3名称),等等


如果您没有正确设置文件关联以使其正常工作,您需要这样做。

一些奇怪的公共成员布尔错误-这将如何帮助任何人诊断您的问题?尝试发布实际的错误消息和生成错误消息的代码。我认为您所掌握的是命令行处理。但先读一读:对不起,你们都是对的。下次我会发得更好。幸运的是,肯的回答最终足以让我理清头绪。非常感谢肯,这帮了我。我使用vlc插件在VB中播放文件。只需在IDE外部构建exe,它在内部无论如何都无法工作,然后设置文件关联,文件打开时播放。
Dim TheFileName As String
Dim Vars As String()
Vars = Environment.GetCommandLineArgs
If Vars.Length > 1 Then
   TheFileName = Environment.GetCommandLineArgs(1)
   Me.Text = TheFileName    ' Just for demonstration
End If