Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/21.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
在C#中,如何获取运行文件的名称?_C#_.net_Reflection_.net Assembly - Fatal编程技术网

在C#中,如何获取运行文件的名称?

在C#中,如何获取运行文件的名称?,c#,.net,reflection,.net-assembly,C#,.net,Reflection,.net Assembly,我想知道如何实用地获取运行文件的名称,不是程序集名称,而是C#NET中文件的名称 我试过了 System.Reflection.Assembly.GetEntryAssembly().GetName().Name 这给出了程序集的名称,但我正在查找exe文件的名称 谢谢大家! System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName 或 如果需要可执行文件: System.Reflection.Assembly.G

我想知道如何实用地获取运行文件的名称,不是程序集名称,而是C#NET中文件的名称

我试过了

System.Reflection.Assembly.GetEntryAssembly().GetName().Name
这给出了程序集的名称,但我正在查找exe文件的名称

谢谢大家!

 System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName

如果需要可执行文件:

System.Reflection.Assembly.GetEntryAssembly().Location
如果只需要文件*名称*而不需要路径,请使用:

Path.GetFileName(System.Reflection.Assembly.GetEntryAssembly().Location)

System.Windows.Forms.Application.ExecutablePath

获取启动应用程序的可执行文件的路径,包括可执行文件名


如果您知道您的程序集就是您正在运行的EXE(我推断,通过使用“GetEntryAssembly()”),您可以使用Process.GetCurrentProcess().ProcessName。这将返回程序的EXE名称。

看看这个数组中的第一个元素

 System.Environment.GetCommandLineArgs()[0];
您还可以在
main(字符串args[])

即使程序被重命名,此选项也应更改。

您可以使用:

System.Reflection.Assembly.GetExecutingAssembly().Location

您将如何使用这些信息?如果这是您已经设计的解决方案的中间步骤,我们可能会更好地了解总体目标是什么…可能的重复
System.Reflection.Assembly.GetExecutingAssembly().Location