using Microsoft.Win32;
private void AddFileContextMenuItem(string itemName, string associatedProgramFullPath)
{
//創(chuàng)建項:shell
RegistryKey shellKey = Registry.ClassesRoot.OpenSubKey(@"*\shell",true);
if (shellKey == null)
{
shellKey = Registry.ClassesRoot.CreateSubKey(@"*\shell");
}
//創(chuàng)建項:右鍵顯示的菜單名稱
RegistryKey rightCommondKey = shellKey.CreateSubKey(itemName);
RegistryKey associatedProgramKey= rightCommondKey.CreateSubKey("command");
//創(chuàng)建默認值:關聯的程序
associatedProgramKey.SetValue(string.Empty, associatedProgramFullPath);
//刷新到磁盤并釋放資源
associatedProgramKey.Close();
rightCommondKey.Close();
shellKey.Close();
}
private void AddDirectoryContextMenuItem(string itemName, string associatedProgramFullPath)
{
//創(chuàng)建項:shell
RegistryKey shellKey = Registry.ClassesRoot.OpenSubKey(@"directory\shell", true);
if (shellKey == null)
{
shellKey = Registry.ClassesRoot.CreateSubKey(@"*\shell");
}
//創(chuàng)建項:右鍵顯示的菜單名稱
RegistryKey rightCommondKey = shellKey.CreateSubKey(itemName);
RegistryKey associatedProgramKey = rightCommondKey.CreateSubKey("command");
//創(chuàng)建默認值:關聯的程序
associatedProgramKey.SetValue("", associatedProgramFullPath);
//刷新到磁盤并釋放資源
associatedProgramKey.Close();
rightCommondKey.Close();
shellKey.Close();
}