




免費預(yù)覽已結(jié)束,剩余45頁可下載查看
下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
XX大學(xué)計算機(jī)學(xué)院操作系統(tǒng)課程設(shè)計報告XX大學(xué)課程設(shè)計報告課程設(shè)計題目: Windows系統(tǒng)資源管理器與任務(wù)管理器 學(xué) 院: 專業(yè)班級: 年 級: 2008級 姓 名: 學(xué) 號: 完成時間: 2012 年 7 月 3 日成 績: 指導(dǎo)教師: 教務(wù)處IV課程設(shè)計指導(dǎo)教師評定成績表項目分值優(yōu)秀(100x90)良好(90x80)中等(80x70)及格(70x60)不及格(x60)評分參考標(biāo)準(zhǔn)參考標(biāo)準(zhǔn)參考標(biāo)準(zhǔn)參考標(biāo)準(zhǔn)參考標(biāo)準(zhǔn)學(xué)習(xí)態(tài)度15學(xué)習(xí)態(tài)度認(rèn)真,科學(xué)作風(fēng)嚴(yán)謹(jǐn),嚴(yán)格保證設(shè)計時間并按任務(wù)書中規(guī)定的進(jìn)度開展各項工作學(xué)習(xí)態(tài)度比較認(rèn)真,科學(xué)作風(fēng)良好,能按期圓滿完成任務(wù)書規(guī)定的任務(wù)學(xué)習(xí)態(tài)度尚好,遵守組織紀(jì)律,基本保證設(shè)計時間,按期完成各項工作學(xué)習(xí)態(tài)度尚可,能遵守組織紀(jì)律,能按期完成任務(wù)學(xué)習(xí)馬虎,紀(jì)律渙散,工作作風(fēng)不嚴(yán)謹(jǐn),不能保證設(shè)計時間和進(jìn)度技術(shù)水平與實際能力25設(shè)計合理、理論分析與計算正確,實驗數(shù)據(jù)準(zhǔn)確,有很強的實際動手能力、經(jīng)濟(jì)分析能力和計算機(jī)應(yīng)用能力,文獻(xiàn)查閱能力強、引用合理、調(diào)查調(diào)研非常合理、可信設(shè)計合理、理論分析與計算正確,實驗數(shù)據(jù)比較準(zhǔn)確,有較強的實際動手能力、經(jīng)濟(jì)分析能力和計算機(jī)應(yīng)用能力,文獻(xiàn)引用、調(diào)查調(diào)研比較合理、可信設(shè)計合理,理論分析與計算基本正確,實驗數(shù)據(jù)比較準(zhǔn)確,有一定的實際動手能力,主要文獻(xiàn)引用、調(diào)查調(diào)研比較可信設(shè)計基本合理,理論分析與計算無大錯,實驗數(shù)據(jù)無大錯設(shè)計不合理,理論分析與計算有原則錯誤,實驗數(shù)據(jù)不可靠,實際動手能力差,文獻(xiàn)引用、調(diào)查調(diào)研有較大的問題創(chuàng)新10有重大改進(jìn)或獨特見解,有一定實用價值有較大改進(jìn)或新穎的見解,實用性尚可有一定改進(jìn)或新的見解有一定見解觀念陳舊論文(計算書、圖紙)撰寫質(zhì)量50結(jié)構(gòu)嚴(yán)謹(jǐn),邏輯性強,層次清晰,語言準(zhǔn)確,文字流暢,完全符合規(guī)范化要求,書寫工整或用計算機(jī)打印成文;圖紙非常工整、清晰結(jié)構(gòu)合理,符合邏輯,文章層次分明,語言準(zhǔn)確,文字流暢,符合規(guī)范化要求,書寫工整或用計算機(jī)打印成文;圖紙工整、清晰結(jié)構(gòu)合理,層次較為分明,文理通順,基本達(dá)到規(guī)范化要求,書寫比較工整;圖紙比較工整、清晰結(jié)構(gòu)基本合理,邏輯基本清楚,文字尚通順,勉強達(dá)到規(guī)范化要求;圖紙比較工整內(nèi)容空泛,結(jié)構(gòu)混亂,文字表達(dá)不清,錯別字較多,達(dá)不到規(guī)范化要求;圖紙不工整或不清晰指導(dǎo)教師評定成績:指導(dǎo)教師簽名: 年 月 日重慶大學(xué)本科學(xué)生課程設(shè)計任務(wù)書課程設(shè)計題目Windows系統(tǒng)資源管理器與任務(wù)管理器學(xué)院計算機(jī)專業(yè)網(wǎng)絡(luò)工程年級09已知參數(shù)和設(shè)計要求:(1) 熟悉操作系統(tǒng)資源管理原理,掌握編程接口,能夠使用高級語言調(diào)用編程接口,設(shè)計并實現(xiàn)Windows操作系統(tǒng)資源管理器的全部功能(包括:菜單、圖標(biāo)、右鍵菜單),實現(xiàn)軟件資源和數(shù)據(jù)資源的管理。(2) 掌握操作系統(tǒng)任務(wù)與進(jìn)程概念,熟悉任務(wù)與進(jìn)程管理的方法,通過高級語言編程接口設(shè)計并實現(xiàn)Windows操作系統(tǒng)任務(wù)管理器的全部功能(包括:菜單、右鍵菜單、應(yīng)用程序管理、進(jìn)程管理、性能顯示、聯(lián)網(wǎng)狀態(tài)和用戶信息)。學(xué)生應(yīng)完成的工作:(1) 了解Windows操作系統(tǒng)的發(fā)展歷史(2) 了解Windows XP的體系結(jié)構(gòu)(3) 掌握Windows系統(tǒng)API的調(diào)用方法(4) 設(shè)計并實現(xiàn)Windows操作系統(tǒng)資源管理器的全部功能(包括:菜單、圖標(biāo)、右鍵菜單),實現(xiàn)軟件資源和數(shù)據(jù)資源的管理。(5) 設(shè)計并實現(xiàn)Windows操作系統(tǒng)任務(wù)管理器的全部功能(包括:菜單、右鍵菜單、應(yīng)用程序管理、進(jìn)程管理、性能顯示、聯(lián)網(wǎng)狀態(tài)和用戶信息)。目前資料收集情況(含指定參考資料):(1) 在互聯(lián)網(wǎng)上收集相關(guān)資料(2) William Stallings,Operating Systems Internals and Design Principles,6th Edition,電子工業(yè)出版社,2010年課程設(shè)計的工作計劃:(1) 第1第3天:查詢、收集資料,學(xué)習(xí)相關(guān)知識;(2) 第4天:熟悉掌握API函數(shù)使用;(3) 第5第9天:設(shè)計、實現(xiàn)程序;(4) 第10天:編寫課程設(shè)計報告;(5) 第11天:檢查程序;(6) 第12天:修改完善程序與課程設(shè)計報告。任務(wù)下達(dá)日期2012年6月18日完成日期2012年7月7日目錄摘要1第一章課程設(shè)計要求2第二章設(shè)計概要32.1功能設(shè)計32.2程序系統(tǒng)功能模塊32.2.1 Windows任務(wù)管理器功能模塊32.2.2 Windows資源管理器功能模塊423功能分析42.3.1 Windows任務(wù)管理器功能流程圖42.3.2 Windows資源管理器功能流程圖52.3.3 Windows任務(wù)管理器界面截圖62.3.4 Windows資源管理器界面截圖82.3.5 程序主要功能說明11第三章調(diào)試分析與測試結(jié)果343.1 Windows任務(wù)管理器343.1.1基本界面343.1.2 進(jìn)程狀態(tài)查看353.1.3 CPU狀態(tài)查看363.1.4 進(jìn)程管理功能363.2 Windows資源管理器393.2.1 基本界面393.2.2 剪切功能的實現(xiàn)413.2.3 復(fù)制功能的實現(xiàn)423.2.4 刪除功能的實現(xiàn)43第四章設(shè)計總結(jié)44第五章參考文獻(xiàn)45摘 要操作系統(tǒng)是一個介于軟件和硬件之間的特殊硬件,一方面分配硬件資源另一方面支持軟件在它上面的實現(xiàn),如何實時地監(jiān)控和掌握系統(tǒng)軟硬件工作的狀態(tài)、資源分配和使用的情況,對計算機(jī)用戶而言十分重要,于是就有了任務(wù)管理器這樣的實時監(jiān)控窗口;同理,我們也需要掌握計算機(jī)硬件設(shè)備的工作狀態(tài),掌握其如何存儲文件、分配硬盤資源等,這也是我們做資源管理器的初衷。我們的電腦需要我們?nèi)チ私馑倪\行狀況,掌握和管理它的進(jìn)程,并對其異常情況給予操作和控制,任務(wù)管理器就像是我們了解和控制自己電腦運作的一個窗口,通過這個窗口我們可以了解到電腦所有進(jìn)程運行狀況,并對運行的進(jìn)程加于管理和控制,正如在本實驗中,啟動進(jìn)程管理器后,可以通過”獲取進(jìn)程”功能來獲得本計算機(jī)啟動的進(jìn)程,以及與該進(jìn)程相關(guān)的信息,其中包括的信息有:進(jìn)程映像名稱,進(jìn)程開啟的線程數(shù),進(jìn)程的PID以及進(jìn)程的優(yōu)先數(shù),我們可以通過這些信息來了解計算機(jī)中每個進(jìn)程的使用狀況。同時我們可以在進(jìn)程管理器上選中一個要終止的的進(jìn)程,點擊“終止進(jìn)程”功能按鈕,該進(jìn)程被終止執(zhí)行并退出進(jìn)程列表,其中還包括了自動刷新的功能,此按鈕實現(xiàn)的功能正如我們電腦任務(wù)管理器的“進(jìn)程”功能,當(dāng)電腦執(zhí)行程序不能通過關(guān)閉窗口進(jìn)行正常的關(guān)閉時,可以借助此辦法來關(guān)閉進(jìn)程。我們還可以通過這個進(jìn)程管理器來啟動新的進(jìn)程,當(dāng)我們要在進(jìn)程管理器里啟動新的進(jìn)程時,只要點擊“啟動新進(jìn)程”按鍵,則會彈出“打開進(jìn)程”對話框,我們可以通過對話框里的“瀏覽”窗口選擇要打開的新進(jìn)程,這是任務(wù)管理器里沒有實現(xiàn)的功能,通過這個功能我們在管理計算機(jī)時變得更加靈活方便,也使進(jìn)程管理的功能更加完善。在退出此進(jìn)程管理器時候,只要選擇“退出”功能按鈕則可關(guān)閉進(jìn)程管理器,快速退出管理器的界面。本管理器設(shè)計比較簡潔,操作靈活,使用簡單,可以為我們管理和控制計算機(jī)的進(jìn)程提供了一個簡便的方法,是我們控制本計算機(jī)進(jìn)程和了解計算機(jī)進(jìn)程情況的良好助手。關(guān)鍵詞:任務(wù)管理器 資源管理器 操作系統(tǒng)第一章 課程設(shè)計要求題目名稱:Windows系統(tǒng)資源管理器與任務(wù)管理器題目類型:設(shè)計型課程設(shè)計目的:熟悉操作系統(tǒng)資源管理原理,掌握編程接口,能夠使用高級語言調(diào)用編程接口,設(shè)計并實現(xiàn)Windows操作系統(tǒng)資源管理器和任務(wù)管理器的全部功能。已知參數(shù)和設(shè)計要求:(3) 熟悉操作系統(tǒng)資源管理原理,掌握編程接口,能夠使用高級語言調(diào)用編程接口,設(shè)計并實現(xiàn)Windows操作系統(tǒng)資源管理器的全部功能(包括:菜單、圖標(biāo)、右鍵菜單),實現(xiàn)軟件資源和數(shù)據(jù)資源的管理;(4) 掌握操作系統(tǒng)任務(wù)與進(jìn)程概念,熟悉任務(wù)與進(jìn)程管理的方法,通過高級語言編程接口設(shè)計并實現(xiàn)Windows操作系統(tǒng)任務(wù)管理器的全部功能(包括:菜單、右鍵菜單、應(yīng)用程序管理、進(jìn)程管理、性能顯示、聯(lián)網(wǎng)狀態(tài)和用戶信息)。實驗內(nèi)容:(6) 了解Windows操作系統(tǒng)的發(fā)展歷史;(7) 了解Windows XP的體系結(jié)構(gòu);(8) 掌握Windows系統(tǒng)API的調(diào)用方法;(9) 設(shè)計并實現(xiàn)Windows操作系統(tǒng)資源管理器的全部功能(包括:菜單、圖標(biāo)、右鍵菜單),實現(xiàn)軟件資源和數(shù)據(jù)資源的管理;(10) 設(shè)計并實現(xiàn)Windows操作系統(tǒng)任務(wù)管理器的全部功能(包括:菜單、右鍵菜單、應(yīng)用程序管理、進(jìn)程管理、性能顯示、聯(lián)網(wǎng)狀態(tài)和用戶信息)。第二章 設(shè)計概要2.1功能設(shè)計本項目是為了實現(xiàn)模擬Windows系統(tǒng)任務(wù)管理器和資源管理器。項目的分析及功能設(shè)計要求如下:(1) 編程模擬實現(xiàn)Windows系統(tǒng)任務(wù)管理器和資源管理器兩個應(yīng)用程序;(2) 服務(wù)器端可以對文件進(jìn)行管理,包括上傳,下載,刪除文件,重命名等;(3) 客服端可以實現(xiàn)文件的上傳、下載以及查看服務(wù)器下默認(rèn)目錄的文件列表;(4) 在程序中應(yīng)用多線程來實現(xiàn)多個客戶端同時對一個服務(wù)器端進(jìn)行請求操作。2.2程序系統(tǒng)功能模塊關(guān)機(jī)查看選項文件功能設(shè)計當(dāng)前用戶狀態(tài)內(nèi)存使用狀態(tài)CPU狀態(tài)進(jìn)程、應(yīng)用程序狀態(tài)進(jìn)程數(shù)實時狀態(tài)監(jiān)控Windows任務(wù)管理器新建、切換進(jìn)程、關(guān)閉進(jìn)程關(guān)于關(guān)機(jī)、注銷立即刷新、小圖標(biāo)、詳細(xì)列表總在最前新建任務(wù)、退出管理器進(jìn)程幫助2.2.1 Windows任務(wù)管理器功能模塊圖2.1文件功能設(shè)計文件類型文件大小目錄樹資源狀態(tài)顯示W(wǎng)indows資源管理器2.2.2 Windows資源管理器功能模塊文件名修改時間新建、打開、保存、另存為、最近的文件、退出關(guān)于幫助視圖撤銷、剪切、粘貼、復(fù)制編輯工具欄和停靠窗口應(yīng)用程序外觀狀態(tài)欄圖2.223功能分析2.3.1 Windows任務(wù)管理器功能流程圖圖 Windows資源管理器功能流程圖顯示數(shù)據(jù)控件消息鼠標(biāo)事件消息資源數(shù)據(jù)資源文件用戶操作鼠標(biāo)顯示操作效果資源管理器控制系統(tǒng)鼠標(biāo)事件處理圖 Windows任務(wù)管理器界面截圖整體界面不同狀態(tài)顯示的截圖2.3.4 Windows資源管理器界面截圖1、 整體界面:2、功能界面展示:“文件”功能展示“編輯”功能展示“視圖”功能展示“幫助”功能展示2.3.5 程序主要功能說明一、Windows任務(wù)管理器主要功能代碼實現(xiàn):獲得進(jìn)程代碼實現(xiàn)Public Sub ListProcess()On Error Resume Next Dim i As Long, j As Long, n As Long Dim proc As PROCESSENTRY32 Dim snap As Long Dim exename As String 應(yīng)用程序名 Dim item As ListItem Dim lngHwndProcess As Long Dim lngModules(1 To 200) As Long Dim lngCBSize2 As Long Dim lngReturn As Long Dim strModuleName As String Dim pmc As PROCESS_MEMORY_COUNTERS Dim WKSize As Long Dim strProcessName As String Dim strComment As String 裝載進(jìn)程注釋的字符串 Dim ProClass As String 程序的類名 開始進(jìn)程循環(huán)snap = CreateToolhelpSnapshot(TH32CS_SNAPall, 0) proc.dwSize = Len(proc)theloop = ProcessFirst(snap, proc) i = 0 n = 0 While theloop 0 i = i + 1 打開指定的進(jìn)程序,并得到進(jìn)程的句柄lngHwndProcess = OpenProcess(PROCESS_QUERY_INFORMATION Or PROCESS_VM_READ, 0, proc.th32ProcessID) If lngHwndProcess 0 Then 枚舉系統(tǒng)中正在運行的進(jìn)程模板lngReturn = EnumProcessModules(lngHwndProcess, lngModules(1), 200, lngCBSize2) If lngReturn 0 Then 返回特定數(shù)目空格的strModuleName = Space(MAX_PATH) 獲取一個已裝載模板的完整路徑名稱lngReturn = GetModuleFileNameExA(lngHwndProcess, lngModules(1), strModuleName, 500)strProcessName = Left(strModuleName, lngReturn)strProcessName = CheckPath(Trim$(strProcessName) If strProcessName Then 判斷ITEM是否已經(jīng)存在 j = HaveItem(proc.th32ProcessID) If j = 0 Then 如果沒有該進(jìn)程 獲取短文件名exename = Dir(strProcessName, vbNormal Or vbHidden Or vbReadOnly Or vbSystem) If exename = hh.exe Then MsgBox SetProClass(proc.th32ProcessID, IDLE_PRIORITY_CLASS) End If 添加進(jìn)程item Set item = List1.ListItems.Add(, ID: & CStr(proc.th32ProcessID), exename) 進(jìn)程IDitem.SubItems(1) = proc.th32ProcessID 內(nèi)存使用 pmc.cb = LenB(pmc) 獲得進(jìn)程的內(nèi)存信息,在這里就是計算該進(jìn)程占用內(nèi)存多少lret = GetProcessMemoryInfo(lngHwndProcess, pmc, pmc.cb) n = n + pmc.WorkingSetSize WKSize = pmc.WorkingSetSize / 1024item.SubItems(3) = WKSize & K 進(jìn)程序IP號item.SubItems(2) = GetProClass(proc.th32ProcessID) 進(jìn)程圖標(biāo)將獲取的圖標(biāo)加到IMAGE控件中IM1.ListImages.Add , strProcessName, GetIcon(strProcessName) item.SmallIcon = IM1.ListImages.item(strProcessName).Key Else 如果已經(jīng)有該進(jìn)程 pmc.cb = LenB(pmc) 獲得進(jìn)程的內(nèi)存信息,在這里就是計算該進(jìn)程占用內(nèi)存多少lret = GetProcessMemoryInfo(lngHwndProcess, pmc, pmc.cb) n = n + pmc.WorkingSetSize WKSize = pmc.WorkingSetSize / 1024 計算占用內(nèi)存 If CLng(List1.ListItems.item(j).SubItems(3) WKSize Then List1.ListItems.item(j).SubItems(3) = WKSize & K 獲得進(jìn)程的類名 ProClass = GetProClass(proc.th32ProcessID) If ProClass List1.ListItems.item(j).SubItems(5) Then List1.ListItems.item(j).SubItems(5) = ProClass End If End If End If End Iftheloop = ProcessNext(snap, proc) Wend CloseHandle snap 顯示總進(jìn)程數(shù) Label3 If i ProCount Then Label3.Caption = 進(jìn)程數(shù): & i ProCount = i End If If n RamUse Then 這里的130是后來加上去的.是為了和系統(tǒng)自帶的數(shù)值一樣 Label5.Caption = Val(FormatLng(n) + 130 & MB RamUse = n For i = 950 To Val(FormatLng(n) + 400 Step -90 rampic.Line (0, i)-Step(1200, 20), &HFF00&, BF Next i End IfEnd Sub調(diào)用系統(tǒng)的關(guān)于窗Private Sub about_Click()On Error Resume Next ShellAbout Me.hwnd, App.Title, 譚建&文程&張源, ByVal 0&End Sub退出本程序員Private Sub close_Click() tmrRefresh.Enabled = False Unload MeEnd SubPrivate Sub CloseSystem_Click() tmrRefresh.Enabled = False Unload MeEnd Sub應(yīng)用程序切換程序Private Sub cmdSwitch_Click() Dim hwnd As Long Dim X As Long Dim lngWW As Long If LstApp.ListIndex 0 Then Beep: Exit Subhwnd = LstApp.ItemData(LstApp.ListIndex) 取得窗口的結(jié)構(gòu)信息lngWW = GetWindowLong(hwnd, GWL_STYLE) If lngWW And WS_MINIMIZE Then控制窗口的可見性 X = ShowWindow(hwnd, SW_RESTORE) End If 指定一個窗口新的位置 第2個參數(shù):將窗口置于Z序列的頂部. X = SetWindowPos(hwnd, HWND_TOP, 0, 0, 0, 0, _ SWP_NOMOVE Or SWP_NOSIZE Or SWP_SHOWWINDOW)End Sub 保持當(dāng)前位置或保持當(dāng)前大小或顯示窗口彈出新建任務(wù)窗Private Sub Command1_Click()frmnew.Show vbModalEnd Sub結(jié)束應(yīng)用程序還有就是在如果列表中沒有活動程序,點擊結(jié)束程序會退出本身Private Sub Command3_Click() On Error Resume Next If LstApp.ListCount = 0 Then 應(yīng)用程序的類名,和程序的標(biāo)題 Dim lpclassname As String, lpcaption As String 程序的句柄號 Dim Handle As Long Dim Retval As Long 先是打開要關(guān)閉的程序,其它就是將該程序顯示成當(dāng)前程序 Shell LstApp.Text, 1lpclassname = LstApp.Textlpcaption = LstApp.Text 獲得程序的句柄號 Handle = FindWindow(vbNullString, lpcaption) 用函數(shù)關(guān)閉應(yīng)用程序 PostMessage Handle, WM_Close, 0&, 0& 所了和列表控件一至,在這里刪除列表中的該進(jìn)程名 LstApp.RemoveItem LstApp.ListIndex LstApp.refresh 刷新 FindAllAppsEnd Sub結(jié)束指定進(jìn)程功能代碼實現(xiàn)Private Sub Command4_Click()On Error Resume Next Dim i As Long, hand As Long, id As Long If MsgBox(確定要結(jié)束進(jìn)程 & List1.SelectedItem.Text & 嗎?, vbExclamation + vbOKCancel) = vbCancel Then Exit Subid = CLng(List1.SelectedItem.SubItems(1) If id 0 Then EndPro id End If ListProcessEnd SubPrivate Sub Command5_Click() Dim AboutRet As Long AboutRet = ExitWindowsEx(EWX_LOGOFF, 0)End Sub注銷用戶功能實現(xiàn)Private Sub Command6_Click() Dim AboutRet As Long AboutRet = ExitWindowsEx(EWX_LOGOFF, 0)End Sub切換至功能實現(xiàn)Private Sub cutoverto_Click() cmdSwitch_Click Me.WindowState = 1End Sub 改變進(jìn)程顯示方式Private Sub Detailed_Click() List1.View = lvwReportEnd Sub結(jié)束應(yīng)用程序功能實現(xiàn)Private Sub endprograme_Click() Command3_ClickEnd Sub 關(guān)機(jī)功能實現(xiàn)Private Sub Exit_Click()frmclose.Show vbModalEnd SubCPU效率監(jiān)視CpuPicture(0).ScaleMode = vbPixelsCpuPicture(1).ScaleMode = vbPixels Set QueryObject = New CCpuwatch對象初始化 QueryObject.Initialize打開時間控件 tmrRefresh.Enabled = True調(diào)用刷新過程 tmrRefresh_Timer*獲得所有系統(tǒng)進(jìn)程 ListProcess 窗體總在前 SetTop Me, front.Checked*獲得系統(tǒng)的當(dāng)前用戶cnt& = 199s$ = String$(200, 0)dl& = GetUserName(s$, cnt) Set item = ListView3.ListItems.Add(, , s$, , 2) item.SubItems(2) = 正在運行.item.SubItems(1) = WorkstationID 設(shè)置系統(tǒng)托盤 If WindowState = vbMinimized Then LastState = vbNormal Else LastState = WindowState End If AddToTray Me, TrayEnd SubPrivate Sub Form_Resize() Select Case WindowState Case vbMinimized Me.Visible = False Case vbMaximized Me.Visible = True End Select If WindowState vbMinimized Then LastState = WindowState Me.Visible = True End IfEnd SubPrivate Sub Form_Unload(Cancel As Integer) RemoveFromTray 關(guān)閉托盤 tmrRefresh.Enabled = False Unload MeEnd SubPrivate Sub front_Click() front.Checked = Not front.Checked SetTop Me, front.CheckedEnd SubPrivate Sub jsjc_Click() Command4_ClickEnd SubPrivate Sub List1_ColumnClick(ByVal ColumnHeader As MSComctlLib.ColumnHeader)On Error Resume Next With List1 設(shè)置 Sorted 為 True 以將列表排序。 If (ColumnHeader.Index - 1) = .SortKey Then .SortOrder = (.SortOrder + 1) Mod 2 .Sorted = True Else .Sorted = False .SortOrder = 0 .SortKey = ColumnHeader.Index - 1 .Sorted = True End If End WithEnd Sub右擊菜單;,并初使化進(jìn)程的優(yōu)先級別Private Sub List1_MouseDown(Button As Integer, Shift As Integer, X As Single, y As Single)On Error Resume Next Dim j As Long, i As Long If Button = 2 Then If List1.HitTest(X, y) Is Nothing Then Exit Sub j = List1.HitTest(X, y).IndexList1.ListItems(j).Selected = True For i = 0 To 5mnuSetProClassSub(i).Checked = False Next Select Case List1.SelectedItem.SubItems(2) Case 實時: mnuSetProClassSub(0).Checked = True Case 高: mnuSetProClassSub(1).Checked = True Case 較高: mnuSetProClassSub(2).Checked = True Case 標(biāo)準(zhǔn): mnuSetProClassSub(3).Checked = True Case 較低: mnuSetProClassSub(4).Checked = True Case 低: mnuSetProClassSub(5).Checked = True End Select PopupMenu you End IfEnd SubPrivate Sub log_Click()frmclose.Show vbModalEnd Sub雙擊切換到另一個程序Sub lstApp_DblClick() cmdSwitch.Value = TrueEnd Sub任務(wù)窗Function TaskWindow(hwCurr As Long) As Long Dim lngStyle As Long 調(diào)用函數(shù)得到指定窗口的信息第一個參數(shù)是指定窗口的句柄,第二個是窗口的樣式lngStyle = GetWindowLong(hwCurr, GWL_STYLE) If (lngStyle And IsTask) = IsTask Then TaskWindow = TrueEnd Function設(shè)置進(jìn)程優(yōu)先級Public Function SetProClass(ByVal PID As Long, ByVal ClassID As Long)On Error Resume Next Dim hwd As Long 在這里得到一個句柄hwd = OpenProcess(PROCESS_SET_INFORMATION, 0, PID) 調(diào)用這個函數(shù)設(shè)置進(jìn)程的優(yōu)先級 SetProClass = SetPriorityClass(hwd, ClassID)End Function右鍵菜單Private Sub LstApp_MouseDown(Button As Integer, Shift As Integer, X As Single, y As Single) If Button = 2 Then PopupMenu Application End IfEnd Sub在這里設(shè)置進(jìn)程優(yōu)先級Private Sub mnuSetProClassSub_Click(Index As Integer)On Error Resume Next Dim PID As Long, rtn As Long PID = CLng(List1.SelectedItem.SubItems(1) 得到進(jìn)程PID If mnuSetProClassSub(Index).Checked = True Then Exit Sub Select Case Index Case 1: rtn = SetProClass(PID, HIGH_PRIORITY_CLASS) 高 Case 2: rtn = SetProClass(PID, 32768) 較高 Case 3: rtn = SetProClass(PID, NORMAL_PRIORITY_CLASS) 標(biāo)準(zhǔn) Case 4: rtn = SetProClass(PID, 16384) 較低 Case 5: rtn = SetProClass(PID, IDLE_PRIORITY_CLASS) 低 End Select If rtn = 0 Then MsgBox 無法為進(jìn)程 & List1.SelectedItem.Text & 設(shè)置優(yōu)先級。, vbCriticalEnd Sub彈出新建任務(wù)窗Private Sub newfile_Click()frmnew.Show vbModalEnd SubPrivate Sub plaseago_Click() cmdSwitch_ClickEnd SubPrivate Sub refresh_Click()frmclose.Show vbModalEnd Sub刷新Private Sub refresh1_Click() FindAllAppsEnd SubPrivate Sub showago_Click() showago.Checked = Not showago.Checked SetTop Me, showago.CheckedEnd SubPrivate Sub small_Click() List1.View = Index + 2 List1.Sorted = TrueEnd SubPrivate Sub SSTab1_DblClick()End SubPrivate Sub Timer3_Timer() Dim X As Long Call GlobalMemoryStatus(minfo) 總的內(nèi)存量 X = -minfo.dwTotalPhys / 1024Label2(0).Caption = Str$(Int(X) 可用的內(nèi)存量 X = minfo.dwAvailPhys / 1024Label2(1).Caption = Str$(Int(X) 系統(tǒng)緩存Label2(2).Caption = -(Val(Label2(0) - Val(Label2(1) - 500) 虛擬內(nèi)存總數(shù) X = minfo.dwTotalVirtual / 1024Label7(0).Caption = Str$(Int(X / 1024) & M 可用虛擬內(nèi)存 X = minfo.dwAvailVirtual / 1024Label7(1).Caption = Str$(Int(X / 1024) & MEnd SubPrivate Sub Timer4_Timer() Line14.X2 = Line14.X2 - 20 Line14.X1 = Line14.X1 - 20 If Line14.X1 = 0 Then Timer4.Enabled = False Else Timer4.Enabled = True End IfEnd SubPrivate Sub Timer6_Timer() FindAllAppsEnd SubCPU效率監(jiān)視Private Sub tmrRefresh_Timer() Dim Ret As Integer Dim cnt As Integer Dim i As Integer 返回CPU狀態(tài) Ret = QueryObject.Querycnt = Int(Ret / 10 + 1) CpuPicture(0).Cls 清除窗口中的內(nèi)容 If Ret -1 Then For i = 0 To cnt - 1 用PIC控件的LINE方法在PIC上畫圖,用以顯示CPU的占用率CpuPicture(0).Line (2, 70 - (5 + i * 6)-(79, 70 - (5 + i * 6 + 2), &HFF00&, BF Next i ShiftPointsGraphPoints(UBound(GraphPoints) = RetCpuPicture(1).Cls For cnt = LBound(GraphPoints) To UBound(GraphPoints) - 1CpuPicture(1).Line (cnt, 80 - GraphPoints(cnt)-(cnt + 1, 80 - GraphPoints(cnt + 1), &HFF00& Next cnt CpuLabel.Caption = CStr(Ret) + % Label4.Caption = CPU 使用: &CStr(Ret) + % 托盤顯示CPU使用率 SetTrayTip CPU 使用: &CStr(Ret) + %End IfEnd SubCPU效率監(jiān)視Sub ShiftPoints() Dim cnt As Integer For cnt = LBound(GraphPoints) To UBound(GraphPoints) - 1GraphPoints(cnt) = GraphPoints(cnt + 1) Next cntEnd Sub判斷item是否存在Public Function HaveItem(ByVal itemID As Long) As LongOn Error GoTo zbb HaveItem = List1.ListItems(ID: & CStr(itemID).IndexExit Functionzbb: HaveIt
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 銀發(fā)經(jīng)濟(jì)趨勢2025:老年旅游市場細(xì)分需求與個性化產(chǎn)品開發(fā)報告
- 水利工程施工合同書
- 醫(yī)藥企業(yè)2025年研發(fā)外包(CRO)模式下的研發(fā)項目管理信息化建設(shè)與實施案例報告
- 員工基本信息及在職狀況證明(7篇)
- 寵物食品加工設(shè)備市場細(xì)分需求預(yù)測報告:2025年創(chuàng)新產(chǎn)品技術(shù)革新
- 2025年有色金屬行業(yè)資源循環(huán)利用產(chǎn)業(yè)鏈產(chǎn)業(yè)鏈產(chǎn)業(yè)鏈產(chǎn)業(yè)鏈優(yōu)化升級報告
- 2025年教育行業(yè)數(shù)字化教材開發(fā)與網(wǎng)絡(luò)信息安全研究報告
- 2025年房地產(chǎn)區(qū)域分化與投資策略:關(guān)注智慧社區(qū)市場研究報告
- 檢驗科微生物室血培養(yǎng)瓶質(zhì)控記錄表
- 2025-2030中國閃蒸罐裝置行業(yè)經(jīng)營策略與前景趨勢預(yù)測報告
- 液氨的管理及應(yīng)急救援處置
- 工程質(zhì)量驗收報告和竣工驗收報告
- 2022-2023學(xué)年內(nèi)蒙古赤峰市數(shù)學(xué)高一下期末統(tǒng)考模擬試題含解析
- 江西省建筑工程竣工備案表
- 幼兒園三年發(fā)展規(guī)劃第一年實施績效自評報告
- 中醫(yī)醫(yī)院中醫(yī)師帶徒協(xié)議模板范文
- GB/T 9081-2008機(jī)動車燃油加油機(jī)
- GB/T 17626.27-2006電磁兼容試驗和測量技術(shù)三相電壓不平衡抗擾度試驗
- GB/T 1185-2006光學(xué)零件表面疵病
- 2023年人社所半年工作總結(jié)
- 工業(yè)管道工程工程量清單項目設(shè)置及計價
評論
0/150
提交評論