Win2000 システムでは、Wscript.Shell オブジェクトの Exec メソッドを通じてコマンドを実行できます。
簡単なコードは次のとおりです。
<% Response.Buffer = true %>
<%
URL = " www.topronet.com "
set objWShell = CreateObject("WScript.Shell")
set objCmd = objWShell.Exec("ping " & url)
strPResult = objCmd.StdOut.Readall()
set objCmd = nothing: set objWShell = nothing
strStatus = "オフライン"
if InStr(strPResult,"TTL=")>0 then strStatus = "オンライン"
response.write url & "ステータスは次のとおりです: " & strStatus
response.write ".<br>" & replace(strPResult,vbCrLf,"<br>")
response.write "<br><hr>Ci Qinqiang が執筆しました。
<a href='http://blog.csdn.net/cqq' target='_blank'>
http://blog.csdn.net へようこそ。 /cqq</a>"
%>
XP システムまたは Windows.NET Server システムでは、WMI を使用してこれを実現できます。
コードは次のとおりです。
<%
URL = " www.topronet.com "
WMI = "winmgmts:{impersonationLevel=impersonate}"
wqlQuery = "Win32_PingStatus WHERE アドレスからステータスコードを選択" & _
" = '" & URL & "'"
set PingResult = GetObject(WMI).ExecQuery(wqlQuery, "WQL", 48)
Response.write URL & "ステータス"
PingResult の For Each 結果
clng(result.StatusCode)>0 の場合
応答.write "オフライン"
それ以外
応答.write "オンライン"
終了する場合
次
%>
もちろん、対応するコンポーネントを自分で作成したり、既製のコンポーネントを使用してそのような機能を実現したりすることもできる
ので、ここでは詳しく説明しません。