VBS和UAC用戶帳戶控制實現(xiàn)代碼
雖然很多人覺得這個功能很雞肋,但是以VBS的角度來看,UAC還是多多少少有點用的。在UAC的限制下,直接雙擊VBS文件只能在標準用戶權(quán)限下運行,很多事情是做不了的,比如復(fù)制自身到windows文件夾,或者寫入注冊表的開機啟動項等等。在XP下非常猖獗的暴風(fēng)一號病毒,放到Win7下也就只能改改文件夾屬性為隱藏罷了,其他什么都做不了。當(dāng)然了,一些不明真相的同學(xué)喜歡把UAC功能關(guān)掉,然后裝個叫什么359還是361的所謂安全軟件。我也不好多說什么,不然會遭到圍觀的。
雙擊VBS文件系統(tǒng)不會自動彈出UAC窗口是一個很大的問題,因為這大大限制了VBS的功能,很多事情都做不了,怎么解決呢?請看下面的代碼
For Each objOS in GetObject("winmgmts:").InstancesOf("Win32_OperatingSystem")
If InStr(objOS.Caption,"XP") = 0 Then
If WScript.Arguments.length = 0 Then
Dim objShell
Set objShell = CreateObject("Shell.Application")
objShell.ShellExecute "wscript.exe", Chr(34) & _
WScript.ScriptFullName & Chr(34) & " uac", "", "runas", 1
Else
Call Main()
End If
Else
Call Main()
End If
Next
Sub Main()
MsgBox "UAC demon"
End Sub
這是我根據(jù)這個網(wǎng)站的代碼改寫的,判斷系統(tǒng)版本,如果是XP(普通用戶一般都是XP,如果是2003的話請自己改寫)則直接運行代碼,否則調(diào)用Shell.Application對象的ShellExecute方法,以管理員權(quán)限運行腳本。這樣,我們的VBS程序在Vista/Win7系統(tǒng)下也可以像在XP系統(tǒng)那樣為所欲為了。
原文:http://demon.tw/programming/vbs-uac-elevation.html
您可能感興趣的文章
- 01-10下載文件到本地運行的vbs
- 01-10VBS中的正則表達式的用法大全 <font color=red>原創(chuàng)&
- 01-10VBS中SendKeys的基本應(yīng)用
- 01-10VBScript教程 第十一課深入VBScript
- 01-10用VBSCRIPT控制ONSUBMIT事件
- 01-10VBScript語法速查及實例說明
- 01-10VBS中Select CASE的其它用法
- 01-10VBScript教程 第七課使用條件語句
- 01-10vbscript 可以按引用傳遞參數(shù)嗎?
- 01-10VBScript教程 第二課在HTML頁面中添加VBscript代碼


閱讀排行
本欄相關(guān)
- 01-10下載文件到本地運行的vbs
- 01-10飄葉千夫指源代碼,又稱qq刷屏器
- 01-10SendKeys參考文檔
- 01-10什么是一個高效的軟件
- 01-10VBS中的正則表達式的用法大全 &l
- 01-10exe2swf 工具(Adodb.Stream版)
- 01-10VBS中SendKeys的基本應(yīng)用
- 01-10用VBSCRIPT控制ONSUBMIT事件
- 01-10VBScript教程 第十一課深入VBScript
- 01-10VBScript語法速查及實例說明
隨機閱讀
- 01-10delphi制作wav文件的方法
- 08-05織夢dedecms什么時候用欄目交叉功能?
- 01-11Mac OSX 打開原生自帶讀寫NTFS功能(圖文
- 04-02jquery與jsp,用jquery
- 01-10C#中split用法實例總結(jié)
- 01-11ajax實現(xiàn)頁面的局部加載
- 01-10使用C語言求解撲克牌的順子及n個骰子
- 01-10SublimeText編譯C開發(fā)環(huán)境設(shè)置
- 08-05dedecms(織夢)副欄目數(shù)量限制代碼修改
- 08-05DEDE織夢data目錄下的sessions文件夾有什