gpt4 book ai didi

c# - clickonce 从哪里从 regedit 获取 DisplayName 中使用的值?

转载 作者:可可西里 更新时间:2023-11-01 11:49:30 26 4
gpt4 key购买 nike

clickonce 从哪里获取寄存器 HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\XXXXXXXXDisplayName 中使用的值?我尝试在 VS 上更改应用程序标题和程序集名称(项目 -> 属性 -> 应用程序 -> 程序集信息),但这两个更改都没有更改 DisplayName 值中使用的名称。

我需要这个,因为我想避免在这段代码上硬编码我的应用程序名称,这会在添加/删除程序时更改我的应用程序的卸载图标

RegistryKey myUninstallKey = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Uninstall");
string[] mySubKeyNames = myUninstallKey.GetSubKeyNames();

for (int i = 0; i < mySubKeyNames.Length; i++)
{
RegistryKey myKey = myUninstallKey.OpenSubKey(mySubKeyNames[i], true);
object myValue = myKey.GetValue("DisplayName");
if (myValue != null && myValue.ToString() == applictionName) /* this must be the same used by clickonce to set DisplayName value */
{
myKey.SetValue("DisplayIcon", iconSourcePath);
break;
}
}

最佳答案

From where clickonce get the value used in DisplayName from regedit?

要为 ClickOnce 应用设置显示名称,您可以在发布之前在 Visual Studio 的发布选项中指定它。这会更新 ClickOnce list - 有关 ClickOnce 应用程序的信息。此信息更为重要,并且基本上否决您可能在组装信息中指定的任何详细信息。

<项目>。Properties.Publish.Options

enter image description here

此外,对于 ClickOnce 应用程序,无需在 Windows 注册表 中乱搞。这样做可能会阻止自动更新。

关于c# - clickonce 从哪里从 regedit 获取 DisplayName 中使用的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33575870/

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