gpt4 book ai didi

c# - Windows 任务栏右键菜单中的标题

转载 作者:行者123 更新时间:2023-11-30 23:30:38 25 4
gpt4 key购买 nike

如何在运行时更改程序任务栏按钮右键单击上下文菜单中的标题?我的意思是这里用红色圈出的文字。

enter image description here

标题似乎是 taken from the assembly title .我需要通过代码在运行时动态更改标题。我有一个 EXE,用户将其“视为”许多不同的应用程序 - 它在运行时读取数据文件,然后大量自定义其外观,包括窗口标题。我还需要在此右键单击菜单中自定义标题。没有一个标题可以涵盖所有内容。如有必要,我愿意考虑对 Windows API 进行 P/Invoke 调用。

这是一个WinForms .Net 4.5.2程序,截图是Windows 7。

最佳答案

我有一个解决方案给你,但不确定它是否适合你

我会做出一些假设来插入我的解决方案

  1. 这是一个使用visual studio构建的winforms项目
  2. 您还没有修改您的原始 Program.cs 文件
  3. 所有的程序集属性都在 AssembyInfo.cs 中

Program.cs 通常看起来像这样

using System;
using System.Windows.Forms;

static class Program {
[STAThread]
static void Main() {
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}
}

处理它的一种方法是将您的应用程序构建为 类库 而不是 Program.cs,我们称它为 App.dll。然后将您的代码从 Program.csAssemblyInfo.cs(仅相关部分)合并到一个文件中,我们将其命名为 App.cs。您应该使用单独的脚本或通过 App.cs 本身自动生成 App.cs现在构建 App.cs 引用 App.dll 生成 App.exe。此 App.exe 的工作方式应与您当前的可执行文件完全一样。

一旦所有这些都建立起来,您就已经可以看到我们的发展方向了。

现在,当您的 App.exe 启动并读取配置以进行更改时,您应该使用不同的 AssemblyTitle 自动生成 App.cs,如下所示

[assembly: AssemblyTitle("MyAssembly")]

并生成 App-Flavor1.exe,生成该进程并退出 App.exe

关于c# - Windows 任务栏右键菜单中的标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34906482/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com