tagCANDY CGI VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板
VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板
[ツリー表示へ]  [ワード検索]  [Home]

タイトル Re^4: ネットワーク上の他PCのシャットダウン
投稿日: 2008/03/25(Tue) 12:04
投稿者でん
ありがとうございました。
いろいろ参考にして、下記のような関数を作成し実現することができました。

'/////////////////////////////////////////////////////////////////
'  [引数]
'    pComputerName :コンピュータ名 or IPアドレス
'    pUserName     :Administrator権限のユーザー名
'    pPassword     :ユーザーのパスワード
'    flg           :0:LogOff 1:Shutdown 2:Reboot 8:PowerOff
'  [戻り値]
'    0      :正常終了
'    1      :エラー
'/////////////////////////////////////////////////////////////////
Public Function RemoteShutdown(ByVal pComputerName As String, _
                ByVal pUserName As String, _
                               ByVal pPassword As String, _
                ByVal flg As Integer) As Integer

    Dim objOsSet As SWbemObjectSet
    Dim objOs As SWbemObject
    Dim objLocator As SWbemLocator
    Dim objService As Object
    
    On Local Error GoTo ErrorHandler:
    
    Set objLocator = CreateObject("WbemScripting.SWbemLocator")
    Set objService = objLocator.ConnectServer(pComputerName, _
                       "root\cimv2", _
                       pUserName, _
                        pPassword)
    Set objOsSet = objService.ExecQuery("Select * From Win32_OperatingSystem")
    
    For Each objOs In objOsSet
        RemoteShutdown = objOs.Win32Shutdown(flg)
    Next
    
    Set objOsSet = Nothing
    Set objOs = Nothing
    Set objService = Nothing
    Set objLocator = Nothing
    
    Exit Function
    
ErrorHandler:
    Err.Clear
    RemoteShutdown = 1
    
    Set objOsSet = Nothing
    Set objOs = Nothing
    Set objService = Nothing
    Set objLocator = Nothing
    
End Function

- 関連一覧ツリー をクリックするとツリー全体を一括表示します)

古いスレッドにレスはつけられません。