Win7的當前IP比較預期IP
我做了一個腳本,通過註冊表改變我的代理設置一個小白,打開和關閉Internet Explorer,以強制代理設置生效,檢查我的公網IP,使確保代理設置工作,然後運行一個程序。我遇到問題,檢查是否發生變化。下面是部分:
function WAN_IP()
set http = createobject("Microsoft.XMLHTTP")
call http.open("get", "http://icanhazip.com/", false)
http.send()
IP = http.responsetext
set http = nothing
WAN_IP = trim(IP)
end function
myIP = WAN_IP()
theIP = "0.0.0.0"
IPCompare = StrComp(myIP, theIP, vbTextCompare)
if IPCompare = 0 then
Wscript.Echo "it worked!"
else
Wscript.Echo "something went wrong"
end if
注意,在我的實際腳本,theIP設置爲實際的代理IP,我試圖去檢查。我只是爲了安全而改變它。如果您正在測試此代碼,則必須將其更改爲您的公共IP。無論如何,問題是,IP和myIP會以同樣的字符串出現,但IPCompare會返回1,而不是像我所期望的那樣返回0。我測試每個變量通過執行在腳本副本以下:
Wscript.Echo theIP
返回的正確的IP地址
Wscript.Echo myIP
返回相同theIP
Wscript.Echo IPCompare
返回1(這意味着string1> string2)當我期望0(string1 = string2)
我唯一的猜測是無論是IP還是myIP都有尾隨或領先的空間或者我看不到的東西。
謝謝。完美工作! – Nutshell 2014-09-06 19:48:16
@Nutshell歡迎來到Stack Overflow!如果此答案有助於解決您的問題,請[考慮將其標記爲已接受](http://stackoverflow.com/help/someone-answers)。這是表示你的問題已經「解決」並且感謝幫助你的人的常規方式(另外,你們都會在聲譽上有所提升)。 – 2014-09-16 22:56:21