vb.net

2016-10-05 7 views
0

にリモートでシャットダウンコンピュータにしようとすると、私はvb.net

Process.Start("shutdown", "-s -m \\COMPUTER NAME") 

リモートでシャットダウンしようとしたとき、私は何も起こらないプログラムを実行したときに、ここに私続いてコード化され、マスターのを支援します。.. 私は私の符号化が正しくないと思いますまたは私は何かが欠けている。

+0

http://www.visual-basic-tutorials.com/form/Shutdown%20Utility.htm – romulus001

答えて

2

シャットダウンコマンドはいくつかの理由で失敗する可能性がありますが、成功を確認することはできません。代わりにこれを試して、エラーを参照してください。

Dim proc = Process.Start("shutdown", "/s /m \\COMPUTER_NAME") 
    proc.WaitForExit() 
    If proc.ExitCode <> 0 Then 
     MsgBox("Failed - Code = " & proc.ExitCode) 
    Else 
     MsgBox("Success") 
    End If 

注:アプリケーションを昇格プロセスとして実行する必要がある場合があります。


アプリケーションをテストする前に、コマンドプロンプトからそのコマンドが機能することをテストする必要があります。

  • オープンcmd
  • 実行shutdown /s /m \\COMPUTER_NAME
  • は、出力を確認し、それが働いたことを確認してください。アクセス拒否エラーが発生すると思われます。その場合はcmdを右クリックし、Launch as administratorを選択してください。それからこれを繰り返し、それが動作することを確認します。
  • これでうまくいかない場合は、プログラムも実行されません。 Google shutdown access deniedとトラブルシューティングのヒントのいくつかを介して動作します。
+0

いいアイデアですが、私は「ExitCode」プロパティをチェックすることは考えていませんでした! –

+0

コードのおかげで、私が得る終了コードは "5"で、あなたの助けを借りて感謝の意を知ることができません –

+0

終了コードが "5"になると、アクセスが拒否されました。拒否されたアクセスを削除する方法ですので、リモートでPCをシャットダウンすることができます –