freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

windows進(jìn)程管理工具設(shè)計與實現(xiàn)(有源程序代碼(參考版)

2024-11-20 17:10本頁面
  

【正文】 [2] 美 Steven Holzner. Visual C++ 輕松進(jìn)階 [M].北京 :電子工業(yè)出版社 ,2020。 通過本次課題的研究 ,我不僅鞏固了以前所學(xué)的基本知識 ,更學(xué)到了軟件設(shè)計的基本方法、技巧和流程 ,這對以后的學(xué)習(xí)工作有很大的幫助。要卸載進(jìn)程模塊 ,需要將本程序的運行代碼注入要卸載的進(jìn)程代碼空間內(nèi) ,這是一個比較復(fù)雜的工作 ,我的能力和時間有限 ,今后還需進(jìn)一步學(xué)習(xí)和了解Windows 核心編程、對動態(tài)鏈接庫 DLL 的操作等知識。 結(jié) 論 本課題研究設(shè)計的進(jìn)程管理器實現(xiàn)了顯示進(jìn)程、線程模塊等信息 ,結(jié)束任務(wù) ,終止進(jìn)程的功能 ,操作簡單 ,能基本滿足用戶對 Windows 進(jìn)程管理 的需求。能正確顯示進(jìn)程及進(jìn)程模塊的信息 ,能對進(jìn)程進(jìn)行卸載 ,保存進(jìn)程列表信息為 HTML 文件 。cchBuff。 lpszSystemInfo tchBuffer2。 DWORD cchBuff 256。 UserName Temp。 ::GetUserNameTemp,amp。 unsigned long lLength20。 char Temp[20]。 獲取用戶名直接用 ::GetUserName 函數(shù)即可。 dwMinorVersion: 95 操作系統(tǒng)值為 0,98 操作系統(tǒng)則大于 0。 其中 dwPlatformId 可為以下值 : VER_PLATFORM_WIN32s:標(biāo)識為 Windows 。 //操作系統(tǒng) ID 號 TCHAR szCSDVersion[128]。 //操作系統(tǒng)的副版本號 DWORD dwBuildNumber。//指定該數(shù)據(jù)結(jié)構(gòu)的字節(jié)大小 DWORD dwMajorVersion。在 中定義了 OSVERSIONINFO結(jié)構(gòu) ,OSVERSIONINFO結(jié)構(gòu)包含了操作系統(tǒng)的版本信息 ,包括操作系統(tǒng)的主版本號、副版本號、創(chuàng)建號、以及操作系統(tǒng)平臺 ID 號和關(guān)于操作系統(tǒng)的其他信息。 //物理內(nèi)存總大小 //物理內(nèi)存可用數(shù) //虛擬內(nèi)存總大小 //虛擬內(nèi)存可用數(shù) 系統(tǒng)信息顯示 系統(tǒng)信息包括當(dāng)前操作系統(tǒng)名、用戶名、計算機名等。 GlobalMemoryStatusamp。 MEMORYSTATUS MemStat。 其他性能顯示 其他性能主要包括物理內(nèi)存、虛擬內(nèi)存和頁文件的使用情況。 圖形下面顯示的內(nèi)存使用情況也是用該函數(shù)獲得。 在循環(huán)調(diào)用中獲取 CPU 使用率 在析構(gòu)函數(shù)中停止計數(shù)器 繪制圖形主要是通過位圖繪制函數(shù)進(jìn)行繪制。在 Windows9x 中獲得 CPU 使用率與 WindowsNT 中不同 ,Windows9x 中要從注冊表的性能計數(shù)器中讀取 ,分為三步 : 因為所有的計數(shù)器缺省情況下是停止的 ,所以要在構(gòu)造函數(shù)中啟動所要的計數(shù)器。 系統(tǒng)性能頁面設(shè)計 該頁面主要顯示 CPU 使用率和內(nèi)存使用率的圖形 ,各種內(nèi)存的使用情況 ,如頁文件 ,虛擬內(nèi)存 ,物理內(nèi)存等 ,以及系統(tǒng)當(dāng)前信息 ,如系 統(tǒng)名、計算機名、當(dāng)前用戶名等。 //終止進(jìn)程 ::。fData。 HANDLE hProcessOpenProcessPROCESS_TERMINATE,FALSE, 。 圖 9 終止進(jìn)程 刪除文件 當(dāng)發(fā)現(xiàn)進(jìn)程列表中有不正常的程序 ,如病毒或木馬程序 ,我們不僅需要把它們結(jié)束了 ,還需要將對應(yīng)的文件刪除 ,使其不能再次運行。 TerminateProcesshProcess,1。要終止進(jìn)程先要用 OpenProcess 函數(shù)將進(jìn)程打開 ,然后用 TerminateProcess 函數(shù)結(jié)束進(jìn)程。當(dāng)它為 1 時 ,殺死進(jìn)程后 ,Windows 不會再喚醒該進(jìn)程。 參數(shù)hProcess 和 uExitCode 分別為進(jìn)程句柄和退出代碼。所以 ,通常只有在其他任何方法都無法迫使進(jìn)程退出時才會考慮使用TerminateProcess()去強制 結(jié)束進(jìn)程的。與 ExitProcess()不同 ,TerminateProcess()函數(shù)執(zhí)行后 ,被終止的進(jìn)程是不會得到任何關(guān)于程序退出的通知的。有鑒于 ExitProcess()函數(shù)的強制性和不安全性 ,在使用時一定要引起注意。雖然 ExitProcess()函數(shù)可以在結(jié)束進(jìn)程的同時通知與其相關(guān)聯(lián)的動態(tài)鏈接庫 ,但是由于它的這種執(zhí)行的強制性 ,使得 ExitProcess()函數(shù)在使用上將存在有安全隱患。其參數(shù) uExitCode 為進(jìn)程設(shè)置了退出代碼。 ExitProcess()函數(shù)即可在進(jìn)程中的某個線程中使用 ,并將立即終止本進(jìn)程的運行。這種進(jìn)程的終止方式是進(jìn)程的正常退出 ,進(jìn)程中的所有線程資源都能夠得到正確的清除。te32 //取得下一個線程信息 結(jié)束進(jìn)程 進(jìn)程只是提供了一段地址空間和內(nèi)核對象 ,其運行是通過在其地址空間內(nèi)的主線程來體現(xiàn)的。 Thread32First hThreadSnap, amp。me32 //取得第一個模塊信息 Module32Next hModuleSnap,amp。//創(chuàng)建指定進(jìn)程的模塊快照 MODULEENTRY32 me32。 獲取進(jìn)程模塊的過程如圖 8。 BOOL WINAPI Thread32FirstHANDLE hSnapshot,LPTHREADENTRY32 lpte。 BOOL WINAPI Module32NextHANDLE hSnapshot,LPMODULEENTRY32 lpme。 BOOL WINAPI Module32FirstHANDLE hSnapshot,LPMODULEENTRY32 lpme。直接通過 ToolHelp API 函數(shù)便可實現(xiàn)。 //進(jìn)程路徑 (如果是 9 98 或 ME系統(tǒng) ) GetModuleFileNameExAhProcess,NULL,cProcessName,sizeofcProcessName。pe32 //取得第一個進(jìn)程 ,返回給 pe32 Process32Next hProcessSnap, amp。//創(chuàng)建一個系統(tǒng)進(jìn)程快照 ,遍歷所有進(jìn)程。 圖 7 進(jìn)程信息的獲取 hProcessSnap CreateToolhelp32SnapshotTH32CS_SNAPPROCESS,0。 該函數(shù)取得快照中下一個進(jìn)程信息 ,參數(shù)同 Process32First 函數(shù)。 該 函 數(shù) 取 得 快 照 中 第 一 個 進(jìn) 程 信 息 ,hSnapshot 參 數(shù) 是CreateToolhelp32Snapshot函數(shù)返回的句柄 lppe參數(shù)是一個包含進(jìn)程信息的結(jié)構(gòu)體變量。如果該函數(shù)成功 ,則返回創(chuàng)建的快照句柄 ,否則返回 INVALID_HANDLE_VALUE。 主要用到 ToolHelp API 中的以下幾個函數(shù) : CreateToolhelp32SnapshotTH32CS_SNAPPROCESS,0。 圖 6 進(jìn)程信息 通過調(diào)用 ToolHelp API 函數(shù)可枚舉所有運行的進(jìn)程并取得進(jìn)程名 ,進(jìn)程ID,父進(jìn)程 ID,線程數(shù)和優(yōu)先級。同顯示任務(wù)列表一樣 ,我們將添加兩個列表控件 ,分別顯示所有進(jìn)程信息和當(dāng)前選擇的進(jìn)程的所以模塊信息 ,如圖 5。 SwitchToThisWindowhWnd,TRUE。 SwitchToThisWindow PROCSWITCHTOTHISWINDOW GetProcAddresshUser32,SwitchToThisWindow。 PROCSWITCHTOTHISWINDOW SwitchToThisWindow。 v
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1