
これは初心者からの意見ですので、どうかご容赦ください。
そこで、ドメインに接続されているコンピュータを毎日午後4時15分に自動的にシャットダウンしたいのですが、いろいろ調べて、shutdown.exeを使用してタスクスケジューラでこれを行うことができることがわかりました。
ここまでは順調ですが、現在そのクライアントにログインしているユーザーに、システムが 5 分ほどでシャットダウンすることを警告するかわいいメッセージを表示したい場合はどうでしょうか。私の調査によると、これは VB で可能です。問題は、それが何なのかまったくわからないことです。親切な方、それが一体何なのか説明していただけませんか?
ここまで読んでくださった方、ありがとうございます :)
答え1
VB は (Visual Basic Script) の略で、以下はタスクを実行するために VB を実行するコードです。コード参照
ステップ1) テキストエディタをダウンロードしてコードを入力します。ここをクリック
ステップ2) 以下のコードをコピーしてテキストエディタに貼り付けます
ステップ3) クリックファイルそれから名前を付けて保存-まだ保存をクリックしないでください
ステップ4) 次のことを確認してくださいファイルの種類に設定いろんなタイプ
ステップ5) 電話するファイル名 リモートシャットダウン.vbs-.vbs を忘れないでください!
ステップ6) クリックファイルそれから含まれているフォルダを開くクリック冒険者
ステップ 7) 作成したスクリプトをダブルクリックします。
ステップ8) スクリプトがあなたに尋ねたら「どのコンピューターでアクションを実行しますか?」制御したいネットワーク上のコンピュータの名前を入力します。
ステップ9) 次の質問に2と答えてください
ステップ10) VBScriptのコーディング方法を学べるウェブサイトを探すここから始める
以下はメモ帳++に入力するコードです
strComputer=InputBox("Perform action on what computer?","Enter Computer
Name",strComputer)
'if no computername is specified (blank), then quit
If strComputer = "" Then WScript.Quit
strComputer = UCase(strComputer)
RestartMode = InputBox("I would like to perform the following action on " &
strComputer & ":" & vbcrlf & vbcrlf _
& "0 - Restart " & strComputer & vbcrlf _
& "1 - Logoff " & strComputer & vbcrlf _
& "2 - Shutdown " & strComputer & vbcrlf _
& "3 - Do nothing " & vbcrlf _
& vbcrlf,"Restart action",RestartMode)
If RestartMode = "" Then
wscript.quit
ElseIf RestartMode < 0 or Restartmode > 3 Then
wscript.echo "You must select a valid option between 0 and 3. Script will now
exit."
wscript.quit
End If
'You could also remove the above lines and declare your variables like this:
' strComputer = "computername"
' RestartMode = 1
'0 = restart, 1 = logoff, 2 = shutdown, 3 = do nothing
'also, with a little work, you could easily make command-line arguments for this
Call RestartAction
Sub RestartAction
Dim OpSysSet, OpSys
Set OpSysSet = GetObject("winmgmts:{(Shutdown)}//"_
& strComputer & "/root/cimv2").ExecQuery("select * from Win32_OperatingSystem"_
& " where Primary=true")
'set PC to reboot
If RestartMode = 0 Then
For each OpSys in OpSysSet
opSys.Reboot()
Next
'set PC to logoff
ElseIf RestartMode = 1 Then
Const EWX_LOGOFF = 0
For each OpSys in OpSysSet
opSys.win32shutdown EWX_LOGOFF
Next
'set PC to shutdown
ElseIf RestartMode = 2 Then
For each OpSys in OpSysSet
opSys.Shutdown()
Next
'set PC to do nothing
ElseIf RestartMode = 3 Then
End If
End Sub