2010-11-18 19 views
1

C#コードで電源オプションのショートカットを作成するにはどうすればよいですか?C#コードでデスクトップに「電源オプション」ショートカットを作成するにはどうすればよいですか?

これは私のコードです:

WshShellClass wshShell = new WshShellClass(); 
IWshRuntimeLibrary.IWshShortcut MyShortcut; 

MyShortcut = (IWshRuntimeLibrary.IWshShortcut)wshShell.CreateShortcut(@"C:\user\Administrator\power options.lnk"); 

MyShortcut.TargetPath = ???????; 

MyShortcut.IconLocation = Application.StartupPath + ??????; 
MyShortcut.Save(); 
+2

私はこの質問を間違って読んで、自分の悪意のある目的のために宇宙の勢力を解き放つためのショートカットを作りたがっていると思いました。 –

答えて

2

ビル(ノ・ムヒョン)ジュースからの回答については、以下を試してください。

 WshShell shell = new WshShell(); 
     string app = Path.Combine(Environment.SystemDirectory, "powercfg.cpl"); 
     string linkPath = @"C:\PowerLink.lnk"; 
     IWshShortcut link = (IWshRuntimeLibrary.IWshShortcut)shell.CreateShortcut(linkPath); 
     link.TargetPath = app; 
     link.IconLocation = string.Format("{0},2", app); 
     link.Save(); 
+0

私は - 'パワーオプション' - ショートカットを作成する方法を尋ねました –

+0

あなたの質問を誤って読んで謝罪します。私は必要なコードを提供するために私の答えを編集しました。 – Tony

+0

+1 for 'Environment.SystemDirectory' –

1

コントロールパネル内のアイテムが.cpl拡張子でC:\windows\system32に保存されています。したがって、あなたの目標は、電源オプションのために、次のようになります。

C:\windows\system32\powercfg.cpl

注:が適切にディレクトリを検索するEnvironment.SystemDirectoryを使用して、私はここで使用しているハードコードされた文字列を使用しないでください。

+0

これは、Windowsフォルダが "Windows"と呼ばれていない場合や、ローカライゼーションのようなその他のケースでは破損します。 –

+0

あなたはもちろん正しいです。私は少し速い答えを叩いた:) –