我想要获得当前运行程序的名称,即程序的可执行名称。在C/ c++中,你从args[0]中得到它。


当前回答

System.Reflection.Assembly.GetExecutingAssembly().ManifestModule.Name;

会给你应用的文件名,比如;“MyApplication.exe”

其他回答

试试这个:

System.Reflection.Assembly.GetExecutingAssembly()

这将返回一个System.Reflection.Assembly实例,其中包含您希望了解的有关当前应用程序的所有数据。我认为Location属性可能会得到你想要的。

如果您要在。net 6.0或更高版本中发布单文件应用程序,则可以使用Environment。ProcessPath

为什么没人建议这个,很简单。

Path.GetFileName(Application.ExecutablePath)

如果你正在寻找可执行文件的完整路径信息,可靠的方法是使用以下方法:

   var executable = System.Diagnostics.Process.GetCurrentProcess().MainModule
                       .FileName.Replace(".vshost", "");

这消除了中间dll、vshost等的任何问题。

这就足够了:

Environment.GetCommandLineArgs()[0];