999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

Autoit腳本實現計算機等級考試修改考試用戶名

2010-01-01 00:00:00
電腦知識與技術 2010年3期

摘要:該文主要介紹了如何配置用于計算機等級考試的學生機,用Autoit語言實現模擬手動修改考試用戶名,簡單介紹了應用WMI服務命令和調用NetUserSetInfo API函數實現全自動修改考試用戶名,從而提高配置大量考試用機的工作效率和準確性。

關鍵詞:Autoit;WMI;API

中圖分類號:TP311文獻標識碼:A文章編號:1009-3044(2010)03-632-02

Autoit Realization the Calculator Grade Examination Modification User's Name

CHEN Xi

(Minjiang University, Fuzhou 350000, China)

Abstract: This text introduce how move the modification examination user's name with the Autoit language hand, introduce the applied WMI service order with adjust to carry out a full-automatic modification with the function of NetUserSetInfo API, raise the work efficiency and accuracy thus.

Key words: Autoit; WMI; API

自從計算機等級考試操作系統環境要求為Windows以來,考試學生機要求每臺機器名按順序編排(例如compt01、compt02、compt03……),并且Windows的登錄用戶名的順序號要與機器名相一致(例如ks01、ks02、ks03……)。現在學生機基本上配有硬盤還原卡,大多數還原卡所帶的驅動可以自動有序修改機器名,但是不能實現自動有序設置修改用戶名,如果是幾百臺計算機要人工手動修改計算機名的話,工作量是非常復雜、而且容易出錯,不利于學生考試。

因些要想自動、準確地配置好考試登錄用戶名,有兩種方案,第一種是每臺機從樣機同步復制系統后,刪除舊的用戶名,另外新建與計算機序號相同的用戶名;第二種是直接修改原用戶名,改成與計算機序號相同的用戶名。第一種方案,會出現新建立的用戶配置文件與樣機原用戶配置文件不同,會造成映射盤符不同、輸入法不同、用戶界面快捷方式等不同,與樣機調試好的考試環境有較大出入,而第二種方案完全保持樣機原用戶配置文件,與樣機調試好的考試環境完全相同,所以選擇第二種方案。

1 AutoIt 語言實現模擬手動修改用戶名

要實現第二種方案,可以考慮先從最簡單的模擬手動操作鍵盤、鼠標修改用戶名出發,而AutoIt語言是用以編寫并生成具有 BASIC 語言風格的腳本程序語言,它被設計用來在Windows GUI(用戶界面)中進行自動操作. 通過它可以組合使用模擬鍵擊,鼠標移動和窗口/控件操作等來實現自動化任務,而這是其它語言所無法做到或尚無可靠方法實現的, AutoIt 非常小巧,完全可以運行在目前流行的Windows操作系統上 , 并且不需要任何運行庫。

模擬手動修改用戶名的程序設計主要思路如下:先獲取機器名(例如compt02),截取機器名的后面兩位序號(例如02),再定義新修改的用戶名變量(例如 ks+序號02),通過調用計算機管理程序,再模擬鍵盤操作找到樣機原用戶名(例如ks01),再模擬鍵盤輸入新修改的用戶名(例如 ks02)。

程序主要代碼如下:

dim $str=@ComputerName; 獲取機器名

;Dim $var = \"ks\"StringRight($str,2); 取變量var為\"ks\"+機器名后兩位

$var = inputbox(\"用戶名修改為\",\"把當前用戶名修改為:\",@UserName); 輸入新修改的用戶名

BlockInput(1); 禁止用戶按鍵盤、鼠標,防止誤操作

Run(\"mmc%windir%\\system32\\compmgmt.msc\",@TempDir); 調用計算機管理程序

WinWait(\"計算機管理\"); 等待計算機管理程序窗口激活

Send(\"{DOWN 4}\"); 模擬鍵盤向下操作4次

Send(\"{RIGHT}\"); 模擬鍵盤向右操作1次

……

send($var); 模擬鍵盤輸入新修改的用戶名

……

WinClose (\"計算機管理\"); 關閉計算機管理程序

BlockInput(0); 恢復用戶按鍵盤、鼠標

模擬手動程序優點是比較直觀,讓用戶了解操作的每一步驟,但是缺點是實效性慢,因為新舊機器速度運行不一樣,延時快慢不好精確設置,另外,一些新的還原卡驅動(如增霸卡新驅動V2.3版)在樣機傳送完畢后,在更新計算機名時是會關閉鍵盤修改計算機用戶名的操作,所以這個程序比較適合考試過程中個別機器出現故障,需要換另外備用機器而臨時修改用戶名使用。

2 使用WMI服務命令自動修改用戶名

WMI是英文Windows Management Instrumentation的簡寫,WMI以CIMOM為基礎,CIMOM即公共信息模型對象管理器(Common Information Model Object Manager),是一個描述操作系統構成單元的對象數據庫,為MMC和腳本程序提供了一個訪問操作系統構成單元的公共接口。

有了WMI,工具軟件和腳本程序訪問操作系統的不同部分時不需要使用不同的API,工具軟件和WMI可以方便地讀寫WMI。它的功能主要是:訪問本地主機的一些信息和服務,可以方便地管理本地和遠程計算機。

目前主流的Windows都支持WMI,需要在計算機上安裝 WMI服務并啟動服務后,才能使用該命名空間中的管理功能。使用Autoit腳本編寫的程序,需要先判斷系統是否存在WMI服務,如果所需的服務名稱winmgmt不存在,則需要從 MSDN 下載并安裝 WMI,再啟動服務Winmgmt。

程序主要代碼如下:

; 設置服務winmgmt自動啟動

RunWait(@ComSpec ' /c sc config winmgmt start= auto', @SystemDir, @SW_HIDE)

; 啟動服務winmgmt

RunWait(@ComSpec ' /c sc start winmgmt', @SystemDir, @SW_HIDE)

;先修改用戶全名,注銷登錄界面顯示的是用戶全名,把樣機原用戶全名“考試ks01”修改為“考試ks”序號

RunWait(@COMSPEC \" /c WMIc useraccount where fullname='考試ks01' set fullname=考試ks%computername:~-2%\")

; 修改用戶名, 把樣機原用戶名“ks01”修改為“ks”序號

RunWait(@COMSPEC \" /c WMIc useraccount where name='ks01' call rename name=ks%computername:~-2%\")

使用WMI服務命令自動修改用戶名簡單方便,但是需要安裝并啟動WMI服務。

3 調用了Netapi32.dll中的NetUserSetInfo API函數自動修改用戶名

API的英文全稱(Application Programming Interface),WIN32 API也就是MicrosoftWindows32位平臺的應用程序編程接口。我們還可以調用Netapi32.dll中的NetUserSetInfo API函數,這個API函數很強大,可以設置用戶名或全名、密碼、用戶配置文件等,設置用戶的各種信息最終都會調用到這個API。

可以先定義函數使用NetUserSetInfo,例如:

Func _LsaLocalUserSetInfo($sUserName, $iLevel, $pBuffer, $sBufferType = \"ptr\", $sSystem = \"\")

Local $iResult

$iResult = DllCall(\"Netapi32.dll\", \"long\", \"NetUserSetInfo\", \"wstr\", $sSystem, _

\"wstr\", $sUserName, \"dword\", $iLevel, _

$sBufferType, $pBuffer, \"dword*\", 0)

Return SetError($iResult[0], 0, $iResult[0] = 0)

EndFunc

; 先改全名,找到用戶名\"ks01\",用戶全名修改為“考試ks”序號

_LsaLocalUserSetInfo(\"ks01\", 1011, '考試ks' StringRight(@ComputerName,2) , \"wstr*\")

; 再改用戶名,找到用戶名\"ks01\",用戶名修改為“ks”序號

_LsaLocalUserSetInfo(\"ks01\", 0, \"ks\" StringRight(@ComputerName,2), \"wstr*\")

4 結束語

以上是針對不同情況,采用Autoit腳本語言按計算機等級考試要求進行修改Windows登錄用戶名的幾種實現方法,可以大大地方便機房配置教學和考試用機,提高工作效率,本人程序拋磚引玉,需要不斷進行完善,請專家指正。

參考文獻:

[1] 王春海.非常網管——Windows腳本應用詳解[M].北京:人民郵電出版社,2008.

[2] 范文慶,周彬彬,安靖.精通Windows API:函數、接口、編程實例[M].北京:人民郵電出版社,2009.

[3] 冉林倉 Windows API編程[M].北京:清華大學出版社,2005.

[4] Policht M.WMI技術指南[M].北京:機械工業出版社,2002.

[5] NetUserSetInfo Function[EB/OL].http://msdn.microsoft.com/en-us/library/aa370659(VS.85).aspx.

[6] AUTOIT CN 論壇[EB/OL].http://www.autoit.net.cn/index.php.

主站蜘蛛池模板: 国产精品大白天新婚身材| 婷婷五月在线视频| 国产精品男人的天堂| 久久香蕉国产线看精品| 欧美午夜理伦三级在线观看| 国产亚卅精品无码| 深爱婷婷激情网| 欧美激情,国产精品| 玖玖精品视频在线观看| 亚洲第一综合天堂另类专| 国产玖玖视频| 国产农村精品一级毛片视频| 99精品伊人久久久大香线蕉 | 亚洲第一天堂无码专区| 亚洲第一中文字幕| 毛片基地视频| 国产日韩丝袜一二三区| 久久超级碰| 亚洲中文字幕23页在线| 亚洲精品自产拍在线观看APP| 国产微拍一区二区三区四区| 国产精品9| 全部免费毛片免费播放| 精品综合久久久久久97超人该| 高清免费毛片| 日韩天堂视频| 日韩欧美在线观看| 男人天堂亚洲天堂| 亚洲高清中文字幕在线看不卡| 99在线视频精品| 国产啪在线| 激情六月丁香婷婷| 亚洲欧美综合另类图片小说区| 激情五月婷婷综合网| 亚洲综合经典在线一区二区| 毛片在线看网站| 97超碰精品成人国产| 国产精品999在线| 亚洲国产精品无码久久一线| 26uuu国产精品视频| 免费视频在线2021入口| 欧美国产日韩在线| 亚洲日产2021三区在线| 毛片网站在线播放| 99精品一区二区免费视频| 国产午夜福利亚洲第一| 精品久久久无码专区中文字幕| 中文字幕在线不卡视频| 亚洲精品国产成人7777| 国产免费a级片| 国产精品2| 国产日韩欧美中文| 欧美精品另类| av天堂最新版在线| 久久久久久国产精品mv| 久久99国产精品成人欧美| 亚洲精品第1页| 国产91透明丝袜美腿在线| 国产av无码日韩av无码网站| 欧美成人看片一区二区三区 | 麻豆国产在线观看一区二区| 成年人免费国产视频| 91久久国产热精品免费| 中国一级毛片免费观看| 欧美日韩第三页| 暴力调教一区二区三区| 日本高清免费不卡视频| 欧美精品不卡| 欧洲日本亚洲中文字幕| 亚欧成人无码AV在线播放| 日本伊人色综合网| 国产美女在线观看| 日韩欧美中文字幕在线韩免费 | 欧美无遮挡国产欧美另类| 亚洲免费毛片| 色AV色 综合网站| 国产成人精品18| 国产极品美女在线观看| 成人日韩精品| 强奷白丝美女在线观看| 国产一级毛片高清完整视频版| 亚洲成人动漫在线观看|