Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/opengl/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vb.net 如何从打开EXE的文件夹中打开文件。VB_Vb.net - Fatal编程技术网

Vb.net 如何从打开EXE的文件夹中打开文件。VB

Vb.net 如何从打开EXE的文件夹中打开文件。VB,vb.net,Vb.net,作为我正在制作的程序的一部分,我需要从打开程序的文件夹中打开一个文件(例如txt文件)。 其思想是,它可以被压缩并放在任何地方,而不必将文件放在特定的位置。 它必须是VisualBasic,我将非常感谢您的帮助 我已经在谷歌上搜索了这个,但是没有找到VB的任何内容。我对这门语言比较陌生 谢谢,Jack您可以使用此命令获取当前正在执行的程序集(即EXE)所在文件夹的路径: System.Reflection.Assembly.GetExecutingAssembly().Location.Subs

作为我正在制作的程序的一部分,我需要从打开程序的文件夹中打开一个文件(例如txt文件)。 其思想是,它可以被压缩并放在任何地方,而不必将文件放在特定的位置。 它必须是VisualBasic,我将非常感谢您的帮助

我已经在谷歌上搜索了这个,但是没有找到VB的任何内容。我对这门语言比较陌生


谢谢,Jack

您可以使用此命令获取当前正在执行的程序集(即EXE)所在文件夹的路径:

System.Reflection.Assembly.GetExecutingAssembly().Location.Substring(0, assembly.Location.LastIndexOf(System.IO.Path.DirectorySeparatorChar))

要打开文件,请执行以下操作:

Dim fileName as String = "yourfile.txt"
Dim appDir as String = System.IO.Path.GetDirectoryName( _
System.Reflection.Assembly.GetExecutingAssembly().CodeBase)

Process.Start(appDir & "\" & fileName)

如果您向这个方向移动,请注意,但是如果您最终将其作为程序安装在program Files文件夹中,则自Windows 2000以来,标准用户帐户没有对program Files文件夹的写入权限。出于某种原因,这仍然让程序员们一直感到惊讶。@JoelCoehoorn是的,谢谢。它将是一个独立的。因此,如果有人想打开另一个应用程序(例如iexplorer.exe或批处理文件),您会编辑文件名,而不是以字符串形式打开它吗?不用担心,我理解代码。它以名为file name的字符串形式打开文件,然后在底部打开。谢谢