更改装配标题

时间:2011-12-19 05:32:57

标签: c# file-association

我将WPF应用程序的程序集标题从“Name1”更改为“Name2”。

扩展名为“.sct”的文件与此应用程序相关联。

我使用RegistryKey。每次运行应用程序时,我都会将文件扩展名与应用程序关联起来:

private void Window_Loaded(object sender, RoutedEventArgs e)
{
    ...
    RegistryKey key = Registry.CurrentUser.OpenSubKey("Software\\Classes", true);
    key.CreateSubKey("." + extension).SetValue(string.Empty, extension + "_auto_file");

    key = key.CreateSubKey(extension + "_auto_file");
    key.CreateSubKey("DefaultIcon").SetValue(string.Empty, icon);

    key = key.CreateSubKey("Shell");
    key.SetValue(string.Empty, "Open");

    key = key.CreateSubKey("Open");

    key.CreateSubKey("Command").SetValue("", "" + applicationExecutablePath + " %1");
    ...
}

现在,当我在默认目录中安装应用程序并打开.sct文件属性时,我看到旧应用程序名称“Name1”而不是“Name2”。

但是,如果我将应用程序安装在另一个目录中,则文件属性中的应用程序名称将更改为“Name2”。

为什么会这样?

1 个答案:

答案 0 :(得分:-1)

  

我将WPF应用程序的程序集标题从“Name1”更改为“Name2”。

那是一个装配TITLE?名称?

  

我使用RegistryKey。每次运行应用程序时,我都会将文件扩展名与应用程序关联起来:

我们走了,初学者的错误和最糟糕的做法。您的prgoram可能没有权利。这应该仅由安装程序级别完成,而不是由执行pgogram的用户完成。

  

现在,当我在默认目录中安装应用程序并打开.sct文件属性时,我看到旧的   应用程序名称“Name1”而不是“Name2”。

重启后?请注意,注册表可能已缓存,您不必从安装程序运行它。你会看到过时的价值观。尝试重新启动计算器。