![]() ![]() ![]() |
|
|
|
2010/02/09 10:03:24瀏覽1827|回應2|推薦4 | |
最近,有一個需求是要抓取 Client 端的Computer Name,所以參考了一個範例,其寫法如下圖: 但一開始就出師不利,IE在執行時,出現了一個驚嘆號,表示原始檔在 Set wshShell = CreateObject("WScript.Shell") 這一段就過不去。經好友 Pime的提醒,是為 IE 安全性的阻擋而造成。聽到這邊,突然想到可以把該網站加到 IE 的信任的網站中,並且將 ActiveX 相關設定啟動。 問題來了,雖說有解,但總不可能請 User 自己一台一台去更改設定吧!所以,接下來必須借重GPO的優點,先移除Windows 2003 Server 的 Internet Explorer Enhanced Security Configuration元件後,再到使用者設定 / Windows 設定 / Internet Explorer 維護 / 安全性 / 安全性區域與內容分級,把該內部網頁的設定設好,並強制 User 一登入網域就必套用此設定。果然,原本無法執行的 WScript.Shell 已經可以順利運行。 眼尖的朋友可能會發現,原寫法必須要按下頁面上的按鈕,該 VBScript 才會被觸發。但總不可能要使用者每次一進到網頁就一定要按個鈕才能使用,所以必須將 OnClick 改為 OnLoad 去觸發它,因而必須再將範例檔,改成底下的寫法: 如此一來,才正式搞定讓User連到該網頁時,主機端可以順利抓取 Client 端的 Computer Name去進行後續作業。 ![]() ![]() ![]() ![]() |
|
( 休閒生活|網路生活 ) |