私は現在、レジストリを使用してファイルの関連付けを設定するプログラムを持っています (これは .NET 2.0 であるため、レジストリ メソッドを実行する必要があります)。問題は、HKCR に書き込もうとしているため、(他のマシンで) 管理上の問題が発生する可能性があることです。HKCUまたは管理者権限を必要としない他の方法を使用するなど、ファイルの関連付けを設定するより普遍的な方法(.NET 2.0の場合)はありますか?
string keyName = "Class";
string keyValue = "Class File";
string apppath = Application.ExecutablePath.ToLower() + " \"%1\"";
RegistryKey key;
key = Registry.ClassesRoot.CreateSubKey(keyName);
key.SetValue("", keyValue);
RegistryKey iconkey;
key = Registry.ClassesRoot.CreateSubKey(keyName);
iconkey = key.CreateSubKey("DefaultIcon");
iconkey.SetValue("", Environment.CurrentDirectory + "\\resources\\musicfile.ico");
key = key.CreateSubKey("shell");
key = key.CreateSubKey("open");
key = key.CreateSubKey("command");
key.SetValue("", apppath);