11

我想让我的可执行文件的进程被称为 ABC。我怎么能做到这一点?我尝试将我的项目名称定义为 ABC,但随后我将拥有一个 ABC.vshost。

4

5 回答 5

22

您可以在项目的属性页面中进行设置。在应用程序选项卡上设置程序集名称将设置生成的编译程序集的名称(即 ABC.exe)。

.vshost.exe 是Visual Studio 调试过程,由 Visual Studio 在调试时使用。您可以通过取消选中项目属性的调试选项卡上的“启用 Visual Studio 托管进程”复选框来关闭它(Visual Studio 不需要它来调试)。

于 2009-06-28T23:05:01.897 回答
7

单独更改“程序集名称”对我没有帮助。在 AssemblyInfo.cs 文件中更改程序集标题帮助我更改进程名称。

于 2015-07-23T12:43:54.520 回答
5

您可以做的最好的事情是将属性页(解决方案资源管理器中的属性节点)中的程序集名称设置为您希望的任何内容。C# 编译器自动使用程序集名称作为进程名称(生成的 EXE 的文件名),所以这应该为您完成这项工作。请注意,程序集名称完全独立于项目名称和根命名空间。

您当然可以在生成 EXE 后更改它的文件名(这将使程序集名称保持不变),尽管我认为没有真正的原因。

注意:我假设您特别指的是 Visual Studio,尽管它可能无关紧要。

于 2009-06-28T23:04:04.270 回答
2

它似乎取自 .EXE 的版本信息资源;具体来说,“FileDescription”属性。要以编程方式执行此操作,我想您需要一个单独的程序来更新您要更改其描述的 .EXE 中的版本信息资源。(我不知道 C#,但在 C++ 中,UpdateResource 用于此目的。)

于 2010-08-08T02:46:14.453 回答
0

任务管理器中的进程名称基于图像名称,即可执行文件(正如已经指出的程序集名称设置在 VS.Net 中定义的那样)。

应用程序名称基于窗口标题,因此只能通过图形应用程序更改(除非通过对不太稳定的控制台进行肮脏的黑客攻击)。

请注意,您可以让多个可执行文件都在共享 dll 中执行一个通用的 main 方法,因此如果有帮助,您可以以不同的方式“命名”本质上相同代码的不同实例。

于 2009-06-28T23:15:11.737 回答