VB2008でシャットダウン への返答

投稿で使用できる特殊コードの説明。(別タブで開きます。)
本名は入力しないようにしましょう。
投稿した後で削除するときに使うパスワードです。返答があった後は削除できません。
返答する人が目安にします。相手が小学生か社会人かで返答の仕方も変わります。
最初の投稿が質問の場合、質問者が解決時にチェックしてください。(以降も追加書き込み・返信は可能です。)
※「過去ログ」について書くときはその過去ログのURLも書いてください。

以下の返答は逆順(新しい順)に並んでいます。

投稿者 Knyacky  (中学生) 投稿日時 2009/8/10 22:49:15
ありがとうございます。動きました。

>正確には、ログオフですね。
そうでした。MacにWindowsを入れてるので、用語がごっちゃになったようです。
投稿者 魔界の仮面弁士  (社会人) 投稿日時 2009/8/10 21:02:43
> ログアウト
正確には、ログオフですね。

それらは、System.Management.ManagementClass クラスで制御できます。

  終了は Win32_OperatingSystem の Shutdown メソッド、
 再起動は Win32_OperatingSystem の Reboot メソッド、
ログオフは Win32_OperatingSystem の Win32Shutdown メソッドに 0 を渡せば OK。

最後のサスペンドは… ManagementClass では出来ないようなので、こうかな。
Process.Start("rundll32.exe""powrprof.dll,SetSuspendState")



XP が相手なら、これでも良いかも。

'ログオフ 
Process.Start("LOGOFF.exe""Console")
'再起動 
Process.Start("SHUTDOWN.exe""-r -t 10")
'終了 
Process.Start("SHUTDOWN.exe""-s -t 10")
投稿者 トマト  (小学生) 投稿日時 2009/8/10 20:56:48
この中から探してみてください。
http://dobon.net/vb/dotnet/index.html#system
投稿者 Knyacky  (中学生) 投稿日時 2009/8/10 19:56:31

Windows XPを終了
        再起動
        ログアウト
                      サスペンドさせたいのですが、
どういう風にコードを書けばいいですか?