作成にあたって、
- 遠隔からVNCで入るときにIPアドレスを使用するのでアドレスが何番か知りたい。
- どのパソコンが再起動された知りたい。
と要望事項があったため、それぞれを表題と内容に記述した。
また、実行方法はスタートアップに入れた。
以下は作成したソースリスト そのままでは動作せず、環境に応じて書き換えが必要
また、メール送信にBASP21.DLLを利用しているので、そちらを事前にインストールしておく
必要がある
'//===========================================================================
'//【ソフト名】 IPAddress.vbs ver. 11.02.16 001
'//【対応環境】 Windows XP SP3 のみ検証済み
'//【注意事項】 動作には別途 BASP21 DLLが必要
'//===========================================================================
'*** 実行環境に応じて書き換えること ***
'書き方はBASP21のページを参照 http://www.hi-ho.ne.jp/babaq/basp21.html
CONST smtpServer = "" '<--送信メールサーバー
CONST mailTo = "" '<--送信先メールアドレス
CONST mailFrom = "" '<--送信元メールアドレス
'******************************ここまで
'IPアドレスを取得する(複数ある場合は改行コードで分けられる)
strComputer = "."
Set objWMIService = GetObject _
("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery _
("Select * From Win32_NetworkAdapterConfiguration " & _
"Where IPEnabled = True")
For Each objItem in colItems
For Each objAddress in objItem.IPAddress
If objAddress <> "0.0.0.0" Then
strIPAddress = strIPAddress & objAddress & vbcrlf
End If
Next
Next
'ドメイン名、コンピュータ名、ログインユーザー名を取得する
Set objNetWork = WScript.CreateObject("WScript.Network")
strUserDomain = objNetWork.UserDomain
strComputerName = objNetWork.ComputerName
strAccountInfo = objNetWork.UserName
'メールを送信する
strServer = smtpServer
strTo = mailTo
strFrom = mailFrom
strSub = strAccountInfo & "@" & strComputerName
strBody = strIPAddress
strFile =""
Set bobj = CreateObject("basp21")
result = bobj.SendMail(strServer,strTo,strFrom, strSub,strBody,strFile)

0 件のコメント:
コメントを投稿