アセンブリのタイトルを変更する

WPF-applicationのアセンブリタイトルを "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ファイルのプロパティを開くと、 "Name2"の代わりに古いアプリケーション名 "Name1"が表示されます。

しかし、別のディレクトリにアプリケーションをインストールすると、ファイルプロパティのアプリケーション名が "Name2"に変わります。

それはなぜ起こるのですか?

0

1 答え

WPF-applicationのアセンブリタイトルを「Name1」から「Name2」に変更しました。

それはアセンブリのタイトルですか?名?

RegistryKeyを使用します。アプリケーションを実行するたびにファイル拡張子をアプリケーションに関連付けます。

ここでは、初心者のミスと最悪の練習に行きます。あなたのプロゴラムにはその権利がないかもしれません。これは、インストーラ・レベルでのみ実行する必要があり、ユーザーがpgogramを実行するのではありません。

これでデフォルトのディレクトリにアプリケーションをインストールし、.sctファイルのプロパティを開くと古い   "Name2"の代わりにアプリケーション名 "Name1"。

また、再起動後?レジストリはキャッシュされていて、インストーラから実行しないでください。あなたは時代遅れの値を見ます。コンピュアを再起動してみてください。

1
追加された
1. "AssemblyInfo.cs"でアセンブリのタイトルを変更します。あなたは正しいです。私はインストーラレベルでファイル拡張子を関連付ける必要があります。 3.私は再起動しようとしますが、それは助けになりません。
追加された 著者 Diana,