吳國年
(河南工業大學,河南 鄭州 450001)
關鍵詞:圖書館;公共查詢;檢索機;注冊表
摘要:圖書館公共檢索機在使用過程中,損壞率較高。在VB.Net 2005環境下,利用WebBrowser控件,通過屏蔽鍵盤功能鍵、修改系統注冊表等技術手段,實現對檢索機的智能化管理,可以有效地解決這一問題。本文對此進行了有益的探索。
中圖分類號:TP311
文獻標識碼:A
文章編號:1003-1588(2010)05—0099-03
圖書館的公共檢索機,是用來檢索本館的館藏中外文書刊的公共目錄,查詢讀者借閱情況、借閱權限等,免費使用,禁止做其它用途。由于讀者在使用過程中可能會移動、刪除操作系統或應用軟件中某些關鍵的程序文件.也可能修改系統和軟件中某些參數配置而造成檢索機系統的癱瘓,還有的讀者可能會在檢索機上進行與此不相關的操作而影響檢索機器的使用,因此對檢索機的安全保護就顯得非常重要。常用的檢索機管理維護方法主要有以下兩種:其一,修改注冊表。通過超級兔子等軟件工具或者組策略方式對windows系統和IE瀏覽器進行設置、修改,防止用戶上網、破壞軟件系統等,此法設置復雜,又易遭到用戶破解。其二,交換機限制。通過交換機劃分子網,采用物理地址和IP地址綁定的方式限制查詢機只能訪問OPAC網站。此法需要網絡硬件支持,因無法防止用戶隨意更改系統配置,所以還必須安裝硬盤保護卡【2】。
我們可以借鑒觸摸屏管理軟件的方式.定制一個專用瀏覽器。WebBrowser控件是微軟提供的瀏覽器控件,在VS 2005中,WebBrowser控件比先前的版本有更大的進步,按照要求,利用該控件可以做一個符合我們要求的專業瀏覽器.屏蔽鍵盤功能鍵可以通過底層的鉤子函數實現,其他功能則可以通過修改注冊表實現。下面從功能、實現方面來介紹檢索機管理軟件的開發流程。
1 檢索機管理軟件要實現的主要功能
為了能使查詢軟件能限制用戶只能上圖書館OPAC查詢系統,而不能對操作系統進行設置破壞,需要達到以下功能。(1)該軟件設置為啟動界面后,充滿屏幕,始終置于最前端,不能最大化、最小化,移動,也不能被關閉。(2)屏蔽鍵盤功能鍵Fl-F12,Tab,左右Win鍵等,但是保留輸入法切換鍵。(3)屏蔽Ctrl+Alt+Delete對應的任務管理器、注銷計算機,注銷等等。(4)屏蔽鼠標右鍵。(5)按F8安全模式登陸后,仍然以該軟件作為登陸界面。(6)設置只能瀏覽OPAC查詢主頁。
2檢索機管理軟件的實現和關鍵代碼
2.1 主窗體功能實現
新建一個form窗體,該form要去掉菜單欄,這樣就沒有了最大化、最小化和關閉按鈕,設置forml的屬性,代碼如下:
Me.topmost=true‘始終處于屏幕最頂端System.Windows Forms.FormBorderStyle.None‘無菜單欄SystemWindows Forms FormWindowState Maximized‘最大化充滿屏幕
2.2 webbrowser瀏覽器功能及屏蔽鼠標右鍵
在forml窗體中添加webbrowser控件.該控件相當于一個瀏覽器,再添加toolstrip控件到forml中,然后添加一系列前進、后退、主頁、刷新等功能按鈕,完善瀏覽器的功能。相關代碼如下:
WebBrowserllsWebBrowserContextMenuEnabled=False‘屏蔽鼠標右鍵
WebBrowserl.ScriptErrorsSuppressed=’rrUe‘忽略腳本錯誤
2.3屏蔽鍵盤功能鍵
鉤子(Hook)是Windows消息處理機制的一個平臺,用來監控消息流并且處理系統中尚未到達目的窗口的某一類型消息過程的機制。鉤子實際上是一個處理消息的程序段可以監視系統或進程中的各種事件消息,截獲發往目標窗口的消息并進行處理。這樣,我們就可以在系統中安裝自定義的鉤子.監視系統中特定事件的發生,完成特定的功能,比如截獲鍵盤、鼠標的輸入等。
通過調用底層的鍵盤鉤子函數可以屏蔽wm鍵(winxp,win2K等基于NT的系統才可以),可以調用盧培培所寫的底層鍵盤鉤子的動態鏈接庫文件maskey.dll,在vb6.0中調用maskey.dll生成maskey.exe,然后在form啟動時做為進程調用maskey.exe。
2.4相關注冊表項
2.4.1 禁用Ctrl+Alt+Delete對應的各項功能
鍵盤鉤子無法禁用Ctrl+Alt+Delete組合鍵,此時只要在注冊表里禁用該組合鍵對應的功能項即可.比如任務管理器、注銷、關機、更改密碼等。打開注冊表項,然后設置相關項的值,代碼如下:Dim hkcu As RegistryKey Registry.CurrentUserDim explorerl As RegistryKey=Policiesl.OpenSubKey(”explorer´’,True)