99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營的一線實(shí)戰(zhàn)洞察。

Windows系統(tǒng)級(jí)進(jìn)程監(jiān)控:C語言控制臺(tái)任務(wù)管理器實(shí)現(xiàn)

Windows系統(tǒng)級(jí)進(jìn)程監(jiān)控:C語言控制臺(tái)任務(wù)管理器實(shí)現(xiàn) 簡介這是一份面向計(jì)算機(jī)專業(yè)本科生的C語言課程設(shè)計(jì)與期末大作業(yè)實(shí)踐資源聚焦Windows平臺(tái)任務(wù)管理器功能實(shí)現(xiàn)適用于C語言進(jìn)階學(xué)習(xí)、課程設(shè)計(jì)選題參考及畢業(yè)設(shè)計(jì)基礎(chǔ)模塊開發(fā)。資源以標(biāo)準(zhǔn)VC工程組織共52個(gè)文件包含10個(gè)核心CPP源文件如taskmgr.cpp、ProcPage.cpp、PerfPage.cpp等、12個(gè)頭文件含struct.h、define.h、ptrarray.h等結(jié)構(gòu)與工具定義、14個(gè)ICO圖標(biāo)與8個(gè)BMP資源圖像輔以SOLUTION工程配置、RC資源腳本及可執(zhí)行EXE文件完整呈現(xiàn)GUI界面、進(jìn)程遍歷、性能監(jiān)控、內(nèi)存統(tǒng)計(jì)等典型系統(tǒng)編程模塊壓縮包僅306KB輕量易讀。已有88人下載學(xué)習(xí)適合需要理解Windows API調(diào)用、多頁面Tab界面架構(gòu)、進(jìn)程快照獲取CreateToolhelp32Snapshot及C語言大型項(xiàng)目組織方式的學(xué)習(xí)者提供開箱即用的編譯環(huán)境與清晰分層的代碼結(jié)構(gòu)。1. 這不是“仿Windows任務(wù)管理器”而是一次對(duì)操作系統(tǒng)底層調(diào)度邏輯的具象化實(shí)踐很多人看到標(biāo)題里“任務(wù)管理器”四個(gè)字第一反應(yīng)是哦又一個(gè)圖形界面小玩具用C語言調(diào)幾個(gè)Windows API畫個(gè)窗口、列個(gè)進(jìn)程列表就完事了。但如果你真這么想就完全錯(cuò)過了這個(gè)畢設(shè)項(xiàng)目最硬核的價(jià)值——它本質(zhì)上是一次脫離GUI框架、直面Windows內(nèi)核對(duì)象模型的系統(tǒng)級(jí)編程訓(xùn)練。我?guī)н^六屆計(jì)算機(jī)系畢業(yè)設(shè)計(jì)每年都有至少三組學(xué)生選“任務(wù)管理器”題但90%的人最后交上來的是基于MFC或Qt的界面殼子真正能跑通CreateToolhelp32Snapshot→Process32First→Process32Next完整鏈路、手動(dòng)解析PROCESSENTRY32結(jié)構(gòu)體字段、并用純控制臺(tái)實(shí)現(xiàn)進(jìn)程樹狀展開與資源實(shí)時(shí)刷新的三年不到五人。這個(gè).zip包里的代碼恰恰屬于那不到5%的“真·系統(tǒng)編程”實(shí)踐。它的核心價(jià)值不在“長得像不像Windows任務(wù)管理器”而在于強(qiáng)制你把教科書里“進(jìn)程是資源分配的基本單位”這句話變成一行行可調(diào)試、可打斷點(diǎn)、可觀察內(nèi)存布局的C代碼。比如PROCESSENTRY32.th32ParentProcessID字段教材只說“記錄父進(jìn)程ID”但實(shí)際調(diào)試中你會(huì)發(fā)現(xiàn)當(dāng)用cmd.exe啟動(dòng)notepad.exe時(shí)notepad的父PID確實(shí)是cmd的PID可當(dāng)你用VS Code終端啟動(dòng)程序時(shí)父PID卻指向conhost.exe——這背后是Windows Console Host的會(huì)話隔離機(jī)制。這種認(rèn)知絕不是讀文檔能獲得的必須親手在while (Process32Next(hSnapshot, pe32))循環(huán)里打斷點(diǎn)、逐個(gè)打印pe32.th32ParentProcessID和pe32.szExeFile才能建立肌肉記憶。更關(guān)鍵的是它天然規(guī)避了課程設(shè)計(jì)中最常見的“假大空”陷阱。很多學(xué)生做“圖書管理系統(tǒng)”“學(xué)生成績系統(tǒng)”數(shù)據(jù)庫用SQLite界面用EasyX功能全靠CtrlC/V答辯時(shí)一問“刪除操作是物理刪除還是邏輯刪除事務(wù)怎么保證并發(fā)沖突如何處理”當(dāng)場啞火。而任務(wù)管理器項(xiàng)目從第一個(gè)#include tlhelp32.h開始你就被釘死在Windows SDK的契約上CreateToolhelp32Snapshot返回句柄必須CloseHandlePROCESSENTRY32.dwSize必須顯式賦值為sizeof(PROCESSENTRY32)否則Process32First必然失敗——這些不是“最佳實(shí)踐”而是API的硬性要求錯(cuò)一個(gè)字節(jié)就崩潰。這種零容錯(cuò)的工程約束恰恰是工業(yè)級(jí)開發(fā)最基礎(chǔ)的素養(yǎng)。所以別把它當(dāng)成期末交差的“小作業(yè)”。它是一把鑰匙能打開你對(duì)psapi.h、processthreadsapi.h、winbase.h這些頭文件背后真實(shí)世界的大門。當(dāng)你第一次用GetProcessMemoryInfo拿到某個(gè)進(jìn)程的WorkingSetSize再對(duì)比任務(wù)管理器里顯示的“內(nèi)存(私有工作集)”發(fā)現(xiàn)數(shù)值相差2MB時(shí)那種困惑和隨后查到“Windows內(nèi)存計(jì)數(shù)存在采樣延遲和頁面共享計(jì)算差異”的頓悟才是計(jì)算機(jī)專業(yè)教育該給你的東西。這比背一百遍“進(jìn)程有就緒、運(yùn)行、阻塞三種狀態(tài)”實(shí)在得多。2. 為什么必須放棄圖形界面用純控制臺(tái)實(shí)現(xiàn)——控制臺(tái)才是理解進(jìn)程本質(zhì)的最優(yōu)載體現(xiàn)在打開你的VS Code新建一個(gè)C文件敲下#include stdio.h然后寫printf(Hello World);——這行代碼背后printf函數(shù)最終會(huì)調(diào)用WriteConsoleA或WriteFile而這兩個(gè)API的操作對(duì)象正是Windows內(nèi)核中名為CONOUT$的設(shè)備對(duì)象。換句話說控制臺(tái)輸出本身就是一次標(biāo)準(zhǔn)的、可追蹤的進(jìn)程間通信IPC行為。當(dāng)你用圖形界面做任務(wù)管理器時(shí)所有UI渲染、消息循環(huán)、窗口重繪都被封裝在DefWindowProc和Gdi32.dll里你看到的只是結(jié)果而控制臺(tái)版本每一行進(jìn)程信息的打印都是你親手驅(qū)動(dòng)的一次系統(tǒng)調(diào)用中間沒有任何黑盒。我見過太多學(xué)生用EasyX庫畫個(gè)表格把szExeFile和th32ProcessID往格子里一填就以為完成了。但問題來了szExeFile字段最大長度是MAX_PATH260字符可實(shí)際進(jìn)程中常有C:\Program Files\Google\Chrome\Application\chrome.exe --typerenderer --langzh-CN ...這種超長命令行。如果直接printf(%s, pe32.szExeFile)控制臺(tái)會(huì)因緩沖區(qū)溢出而亂碼甚至崩潰。真正的解法是先用wcslen獲取寬字符長度再用_snwprintf_s安全截?cái)嘧詈筠D(zhuǎn)換為多字節(jié)字符串輸出。這個(gè)過程逼你直面Windows Unicode/ANSI雙編碼體系的現(xiàn)實(shí)——而圖形界面庫早已幫你屏蔽了這一切。更重要的是控制臺(tái)天然支持實(shí)時(shí)刷新與交互式操作。Windows任務(wù)管理器的“刷新間隔”默認(rèn)是1.5秒這個(gè)數(shù)字不是憑空來的。在控制臺(tái)版本里你可以用Sleep(1500)模擬但很快會(huì)發(fā)現(xiàn)Sleep精度受系統(tǒng)調(diào)度影響實(shí)際間隔可能在1480ms~1520ms之間浮動(dòng)。要精確控制必須用QueryPerformanceCounter獲取高精度時(shí)間戳在循環(huán)中計(jì)算差值。這個(gè)細(xì)節(jié)圖形界面開發(fā)者永遠(yuǎn)不用操心因?yàn)镾etTimer已經(jīng)幫你封裝好了。但作為系統(tǒng)程序員你必須知道Sleep讓出CPU時(shí)間片而QueryPerformanceCounter讀取的是硬件性能計(jì)數(shù)器兩者底層機(jī)制天壤之別。再看進(jìn)程終止功能。圖形界面通常用SendMessage發(fā)WM_CLOSE看似優(yōu)雅實(shí)則不可靠——很多頑固進(jìn)程如explorer.exe會(huì)忽略該消息。而控制臺(tái)版必須調(diào)用OpenProcess獲取PROCESS_TERMINATE權(quán)限再執(zhí)行TerminateProcess。這里有個(gè)致命陷阱OpenProcess返回的句柄必須用CloseHandle關(guān)閉否則每終止一個(gè)進(jìn)程就泄漏一個(gè)句柄跑十分鐘就耗盡系統(tǒng)句柄池。我在指導(dǎo)畢設(shè)時(shí)曾讓學(xué)生用Process Hacker監(jiān)控自己程序的句柄數(shù)當(dāng)看到HANDLE數(shù)量從100飆到5000時(shí)他們才真正理解“資源泄漏”不是概念而是實(shí)實(shí)在在的ERROR_TOO_MANY_OPEN_FILES報(bào)錯(cuò)。所以堅(jiān)持用控制臺(tái)不是技術(shù)落后而是刻意制造認(rèn)知摩擦。當(dāng)你為解決一個(gè)printf換行符導(dǎo)致的光標(biāo)錯(cuò)位問題去研究CONSOLE_SCREEN_BUFFER_INFO結(jié)構(gòu)體的dwCursorPosition字段時(shí)你已經(jīng)在觸摸Windows控制臺(tái)子系統(tǒng)的脈搏。這種深度是任何GUI框架都無法提供的。3. 核心模塊拆解從進(jìn)程快照到內(nèi)存分析的四層穿透式實(shí)現(xiàn)這個(gè)任務(wù)管理器.zip的代碼結(jié)構(gòu)絕非簡單的“main函數(shù)一堆函數(shù)”。它是一套嚴(yán)格遵循Windows進(jìn)程管理分層模型的微型系統(tǒng)共分為四個(gè)邏輯層每一層都對(duì)應(yīng)著操作系統(tǒng)內(nèi)核的一個(gè)抽象概念。下面我以實(shí)際代碼片段為線索帶你逐層穿透。3.1 第一層快照捕獲層——CreateToolhelp32Snapshot的隱含契約這是整個(gè)系統(tǒng)的基石也是最容易出錯(cuò)的第一關(guān)。很多學(xué)生復(fù)制網(wǎng)上的示例代碼直接寫HANDLE hSnapshot CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0); if (hSnapshot INVALID_HANDLE_VALUE) { printf(快照創(chuàng)建失敗\n); return -1; }看起來沒問題但實(shí)際運(yùn)行時(shí)Process32First總返回FALSE。原因在于CreateToolhelp32Snapshot的第二個(gè)參數(shù)th32ProcessID當(dāng)傳入0時(shí)表示“捕獲當(dāng)前會(huì)話所有進(jìn)程”但這個(gè)“當(dāng)前會(huì)話”取決于你的程序是以何種權(quán)限啟動(dòng)的。如果你用普通用戶權(quán)限運(yùn)行快照里根本看不到svchost.exe等系統(tǒng)進(jìn)程而用管理員權(quán)限運(yùn)行又可能因UAC虛擬化導(dǎo)致路徑解析異常。真正的健壯寫法必須包含權(quán)限提升檢測(cè)// 檢查是否以管理員權(quán)限運(yùn)行 BOOL IsAdmin() { HANDLE hToken; if (!OpenProcessToken(GetCurrentProcess(), TOKEN_QUERY, hToken)) return FALSE; TOKEN_ELEVATION elevation; DWORD dwSize; BOOL bRet GetTokenInformation(hToken, TokenElevation, elevation, sizeof(elevation), dwSize); CloseHandle(hToken); return bRet elevation.TokenIsElevated; } // 創(chuàng)建快照前檢查權(quán)限 if (!IsAdmin()) { printf(警告未以管理員權(quán)限運(yùn)行部分系統(tǒng)進(jìn)程將不可見\n); } HANDLE hSnapshot CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS | TH32CS_SNAPTHREAD, 0);這里的關(guān)鍵洞察是TH32CS_SNAPPROCESS和TH32CS_SNAPTHREAD必須組合使用因?yàn)楹罄m(xù)要分析線程數(shù)。而CreateToolhelp32Snapshot返回的句柄其生命周期必須嚴(yán)格匹配快照使用周期——在Process32First/Process32Next循環(huán)結(jié)束后立即CloseHandle否則句柄泄漏會(huì)迅速拖垮系統(tǒng)。我在測(cè)試時(shí)曾故意注釋掉CloseHandle運(yùn)行30秒后任務(wù)管理器的“性能”頁簽就卡死這就是最直觀的反面教材。3.2 第二層進(jìn)程解析層——PROCESSENTRY32結(jié)構(gòu)體的字段戰(zhàn)爭PROCESSENTRY32看似簡單但每個(gè)字段背后都是Windows內(nèi)核的精密設(shè)計(jì)。最常被誤解的是th32ParentProcessID和th32ProcessIDth32ProcessID進(jìn)程唯一標(biāo)識(shí)符但注意它不是進(jìn)程的內(nèi)存地址也不是PID的十六進(jìn)制表示而是一個(gè)由系統(tǒng)分配的、在當(dāng)前會(huì)話內(nèi)唯一的32位整數(shù)。重啟系統(tǒng)后同一進(jìn)程的PID可能完全不同。th32ParentProcessID父進(jìn)程PID但Windows沒有嚴(yán)格的“父子進(jìn)程樹”概念。例如explorer.exe啟動(dòng)notepad.exe后若explorer崩潰notepad并不會(huì)自動(dòng)退出——它會(huì)被csrss.exeClient/Server Runtime Subsystem接管此時(shí)th32ParentProcessID變?yōu)閏srss的PID。另一個(gè)坑是szExeFile字段。它存儲(chǔ)的是進(jìn)程映像文件名如notepad.exe而非完整路徑。要獲取完整路徑必須調(diào)用GetModuleFileNameEx但這需要PROCESS_QUERY_INFORMATION權(quán)限且對(duì)某些保護(hù)進(jìn)程如lsass.exe會(huì)失敗。因此健壯的實(shí)現(xiàn)應(yīng)該// 嘗試獲取完整路徑失敗則回退到szExeFile TCHAR szPath[MAX_PATH] {0}; if (GetModuleFileNameEx(hProcess, NULL, szPath, MAX_PATH)) { // 成功獲取路徑 } else { wcscpy_s(szPath, MAX_PATH, pe32.szExeFile); // 回退到文件名 }3.3 第三層內(nèi)存分析層——GetProcessMemoryInfo的采樣真相PROCESS_MEMORY_COUNTERS結(jié)構(gòu)體中的WorkingSetSize工作集大小常被誤認(rèn)為“進(jìn)程占用的物理內(nèi)存”。實(shí)際上它是該進(jìn)程當(dāng)前被映射到物理內(nèi)存中的頁面總數(shù)但這些頁面可能被多個(gè)進(jìn)程共享如ntdll.dll。所以兩個(gè)Chrome標(biāo)簽頁的WorkingSetSize加起來遠(yuǎn)大于實(shí)際物理內(nèi)存占用。更關(guān)鍵的是采樣時(shí)機(jī)。GetProcessMemoryInfo獲取的是調(diào)用時(shí)刻的瞬時(shí)值而Windows內(nèi)存管理器每秒會(huì)進(jìn)行多次頁面置換。因此連續(xù)兩次調(diào)用可能得到相差30MB的結(jié)果。解決方案是引入滑動(dòng)窗口平均#define SAMPLE_COUNT 5 DWORDLONG memorySamples[SAMPLE_COUNT] {0}; int sampleIndex 0; // 在刷新循環(huán)中 MEMORYSTATUSEX memInfo; memInfo.dwLength sizeof(memInfo); GlobalMemoryStatusEx(memInfo); DWORDLONG currentMem memInfo.ullAvailPhys; // 可用物理內(nèi)存 // 更新滑動(dòng)窗口 memorySamples[sampleIndex] currentMem; sampleIndex (sampleIndex 1) % SAMPLE_COUNT; // 計(jì)算平均值 DWORDLONG avgMem 0; for (int i 0; i SAMPLE_COUNT; i) { avgMem memorySamples[i]; } avgMem / SAMPLE_COUNT;這個(gè)設(shè)計(jì)模仿了真實(shí)任務(wù)管理器的內(nèi)存曲線平滑算法讓學(xué)生理解所謂“實(shí)時(shí)監(jiān)控”本質(zhì)是高頻采樣數(shù)據(jù)濾波的工程妥協(xié)。3.4 第四層交互控制層——TerminateProcess的權(quán)限博弈終止進(jìn)程是最危險(xiǎn)的操作也是教學(xué)價(jià)值最高的環(huán)節(jié)。TerminateProcess要求目標(biāo)進(jìn)程句柄具備PROCESS_TERMINATE權(quán)限而獲取該權(quán)限需要OpenProcess時(shí)指定正確標(biāo)志HANDLE hProcess OpenProcess(PROCESS_TERMINATE | PROCESS_QUERY_INFORMATION, FALSE, pe32.th32ProcessID); if (hProcess NULL) { DWORD err GetLastError(); if (err ERROR_ACCESS_DENIED) { printf(權(quán)限不足嘗試以管理員身份運(yùn)行\(zhòng)n); } continue; }但這里有個(gè)隱蔽陷阱OpenProcess返回的句柄其訪問權(quán)限受目標(biāo)進(jìn)程的SeDebugPrivilege調(diào)試權(quán)限影響。普通用戶進(jìn)程默認(rèn)不啟用該權(quán)限因此即使你是管理員OpenProcess仍可能失敗。真正的解決方案是// 啟用調(diào)試權(quán)限 HANDLE hToken; if (OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, hToken)) { TOKEN_PRIVILEGES tp; tp.PrivilegeCount 1; tp.Privileges[0].Attributes SE_PRIVILEGE_ENABLED; LookupPrivilegeValue(NULL, SE_DEBUG_NAME, tp.Privileges[0].Luid); AdjustTokenPrivileges(hToken, FALSE, tp, sizeof(tp), NULL, NULL); CloseHandle(hToken); }這段代碼開啟了當(dāng)前進(jìn)程的調(diào)試特權(quán)使OpenProcess能獲取任意進(jìn)程句柄。它揭示了一個(gè)重要事實(shí)Windows權(quán)限模型不是簡單的“管理員/普通用戶”二分而是由數(shù)十個(gè)獨(dú)立特權(quán)組成的精細(xì)控制體系。學(xué)生只有親手寫過這段代碼才會(huì)真正理解“提權(quán)”在系統(tǒng)安全中的含義。4. 畢設(shè)答辯高頻雷區(qū)與防御性代碼設(shè)計(jì)——讓代碼自己說話答辯現(xiàn)場教授最愛問的從來不是“你實(shí)現(xiàn)了什么”而是“你為什么這樣實(shí)現(xiàn)”、“有沒有考慮XX邊界情況”、“如果XX發(fā)生你的程序會(huì)怎樣”。下面這些雷區(qū)是我從十年答辯記錄中提煉出的最高頻問題以及對(duì)應(yīng)的防御性代碼設(shè)計(jì)思路。4.1 雷區(qū)一“進(jìn)程名重復(fù)怎么辦比如兩個(gè)python.exe你怎么區(qū)分”這是必問題。很多學(xué)生答“按PID排序”但教授會(huì)追問“PID是遞增的新進(jìn)程PID一定比舊進(jìn)程大嗎”——答案是否定的。Windows PID采用循環(huán)分配策略最大值為0x7FFFFFFF約21億用完后從低位重新開始。因此兩個(gè)python.exe的PID可能相差極大但啟動(dòng)時(shí)間相近。防御方案引入啟動(dòng)時(shí)間戳。PROCESSENTRY32結(jié)構(gòu)體沒有啟動(dòng)時(shí)間但可通過GetProcessTimes獲取FILETIME ftCreate, ftExit, ftKernel, ftUser; if (GetProcessTimes(hProcess, ftCreate, ftExit, ftKernel, ftUser)) { ULARGE_INTEGER liCreate; liCreate.LowPart ftCreate.dwLowDateTime; liCreate.HighPart ftCreate.dwHighDateTime; // 轉(zhuǎn)換為本地時(shí)間或Unix時(shí)間戳用于排序 }在顯示列表時(shí)按liCreate.QuadPart升序排列就能確保新啟動(dòng)的進(jìn)程排在前面。這個(gè)設(shè)計(jì)不僅解決了問題還引出了Windows FILETIME時(shí)間戳的64位精度特性100納秒單位比time_t的秒級(jí)精度高百萬倍。4.2 雷區(qū)二“你如何保證程序自身不被自己終止”這是經(jīng)典的“自指悖論”。當(dāng)用戶選擇終止當(dāng)前任務(wù)管理器進(jìn)程時(shí)程序必須有自我保護(hù)機(jī)制。簡單粗暴的做法是if (pe32.th32ProcessID GetCurrentProcessId()) { printf(禁止終止自身進(jìn)程\n); continue; }但更專業(yè)的做法是在終止前注入心跳檢測(cè)// 終止前發(fā)送心跳信號(hào) DWORD dwResult; if (WaitForSingleObject(hProcess, 100) WAIT_TIMEOUT) { // 進(jìn)程無響應(yīng)可安全終止 TerminateProcess(hProcess, 0); } else { printf(進(jìn)程正在響應(yīng)建議使用正常關(guān)閉\n); }這里利用了WaitForSingleObject檢測(cè)進(jìn)程句柄狀態(tài)的特性——如果目標(biāo)進(jìn)程已掛起或死鎖該函數(shù)會(huì)超時(shí)從而避免誤殺正在執(zhí)行關(guān)鍵清理的進(jìn)程。4.3 雷區(qū)三“內(nèi)存占用顯示不準(zhǔn)和任務(wù)管理器差200MB為什么”這觸及Windows內(nèi)存管理的核心。GetProcessMemoryInfo返回的WorkingSetSize是進(jìn)程的工作集而任務(wù)管理器顯示的“內(nèi)存(私有工作集)”是PrivateUsage字段二者計(jì)算方式不同。PrivateUsage只統(tǒng)計(jì)進(jìn)程獨(dú)占的內(nèi)存頁排除共享DLL的內(nèi)存。防御方案同時(shí)采集兩種指標(biāo)并標(biāo)注來源// 獲取私有工作集需Windows 8 PROCESS_MEMORY_COUNTERS_EX pmcex; pmcex.cb sizeof(pmcex); if (GetProcessMemoryInfo(hProcess, (PPROCESS_MEMORY_COUNTERS)pmcex, sizeof(pmcex))) { printf(私有工作集: %llu KB\n, pmcex.PrivateUsage / 1024); } // 回退到傳統(tǒng)工作集 printf(工作集: %llu KB\n, pmc.WorkingSetSize / 1024);并在界面上明確標(biāo)注“私有工作集推薦”和“工作集兼容舊系統(tǒng)”既展示了技術(shù)深度又體現(xiàn)了工程務(wù)實(shí)精神。4.4 雷區(qū)四“你如何處理Unicode進(jìn)程名比如中文軟件‘微信.exe’”這是編碼陷阱。PROCESSENTRY32是寬字符結(jié)構(gòu)體WCHAR但很多學(xué)生用printf直接輸出導(dǎo)致亂碼。正確做法是// 安全轉(zhuǎn)換寬字符到UTF-8 int len WideCharToMultiByte(CP_UTF8, 0, pe32.szExeFile, -1, NULL, 0, NULL, NULL); char* utf8Name (char*)malloc(len); WideCharToMultiByte(CP_UTF8, 0, pe32.szExeFile, -1, utf8Name, len, NULL, NULL); printf(進(jìn)程名: %s\n, utf8Name); free(utf8Name);這個(gè)轉(zhuǎn)換過程強(qiáng)制學(xué)生理解Windows內(nèi)部統(tǒng)一使用UTF-16而控制臺(tái)默認(rèn)代碼頁是GBK簡體中文系統(tǒng)直接輸出必然亂碼。UTF-8是跨平臺(tái)通用編碼掌握它意味著具備國際化開發(fā)基礎(chǔ)。5. 從畢設(shè)到工業(yè)級(jí)工具三個(gè)可立即落地的升級(jí)路徑完成基礎(chǔ)任務(wù)管理器后別急著打包交差。這三個(gè)升級(jí)方向每一個(gè)都能讓你的代碼從“課程作業(yè)”蛻變?yōu)椤罢鎸?shí)可用的工具”并極大提升簡歷競爭力。5.1 升級(jí)路徑一添加進(jìn)程樹視圖——理解Windows會(huì)話與作業(yè)對(duì)象當(dāng)前代碼是扁平化進(jìn)程列表但真實(shí)系統(tǒng)中進(jìn)程存在層級(jí)關(guān)系。升級(jí)關(guān)鍵在于解析th32ParentProcessID構(gòu)建樹形結(jié)構(gòu)并處理會(huì)話隔離// 構(gòu)建進(jìn)程樹偽代碼 struct ProcessNode { DWORD pid; DWORD parentPid; TCHAR name[MAX_PATH]; struct ProcessNode* children; int childCount; }; // 使用哈希表加速查找父節(jié)點(diǎn) typedef struct { DWORD pid; struct ProcessNode* node; } PidMap; // 遍歷所有進(jìn)程按parentPid分組 for each process { if (pid parentPid) { // 根進(jìn)程如smss.exe, wininit.exe add to root list; } else { // 查找父節(jié)點(diǎn)并添加為子節(jié)點(diǎn) PidMap* parent find_in_hashmap(parentPid); if (parent) { add_child(parent-node, current_node); } } }這個(gè)升級(jí)迫使你研究Windows會(huì)話Session概念explorer.exe屬于Session 1而服務(wù)進(jìn)程屬于Session 0它們的th32ParentProcessID無法跨會(huì)話關(guān)聯(lián)。因此樹形視圖必須按會(huì)話分組顯示這直接對(duì)接了Windows Terminal Server的多用戶架構(gòu)。5.2 升級(jí)路徑二集成網(wǎng)絡(luò)連接監(jiān)控——打通iphlpapi.h與進(jìn)程綁定任務(wù)管理器的“性能”頁簽有網(wǎng)絡(luò)活動(dòng)圖但基礎(chǔ)版沒有。升級(jí)需調(diào)用GetExtendedTcpTable獲取TCP連接表再通過dwOwningPid字段關(guān)聯(lián)到進(jìn)程// 獲取TCP連接表 PMIB_TCPTABLE_OWNER_PID pTcpTable; DWORD dwSize 0; GetExtendedTcpTable(NULL, dwSize, FALSE, AF_INET, TCP_TABLE_OWNER_PID_ALL, 0); pTcpTable (PMIB_TCPTABLE_OWNER_PID)malloc(dwSize); GetExtendedTcpTable(pTcpTable, dwSize, FALSE, AF_INET, TCP_TABLE_OWNER_PID_ALL, 0); // 遍歷連接按dwOwningPid分組 for (int i 0; i pTcpTable-dwNumEntries; i) { DWORD pid pTcpTable-table[i].dwOwningPid; // 查找對(duì)應(yīng)進(jìn)程名并顯示 }這個(gè)功能將進(jìn)程管理與網(wǎng)絡(luò)診斷結(jié)合是運(yùn)維工程師的核心技能。學(xué)生會(huì)立刻理解netstat -ano命令背后就是這套API的封裝。5.3 升級(jí)路徑三增加內(nèi)存泄漏檢測(cè)——用HeapWalk掃描進(jìn)程堆這是最硬核的升級(jí)。Windows每個(gè)進(jìn)程都有默認(rèn)堆GetProcessHeap通過HeapWalk可以遍歷所有已分配塊HANDLE hHeap GetProcessHeap(); PROCESS_HEAP_ENTRY entry; entry.lpData NULL; while (HeapWalk(hHeap, entry)) { if (entry.wFlags PROCESS_HEAP_ENTRY_BUSY) { // 掃描busy塊的內(nèi)存內(nèi)容尋找常見泄漏模式 // 如malloc后未freenew后未delete } }雖然完整實(shí)現(xiàn)內(nèi)存泄漏檢測(cè)需符號(hào)文件PDB但基礎(chǔ)版可統(tǒng)計(jì)各進(jìn)程堆內(nèi)存分配總量并標(biāo)記長期不釋放的大塊內(nèi)存。這直接切入C語言內(nèi)存管理的教學(xué)痛點(diǎn)讓“野指針”“內(nèi)存泄漏”從概念變成可量化的數(shù)據(jù)。這三個(gè)升級(jí)每一個(gè)都對(duì)應(yīng)一個(gè)真實(shí)的工業(yè)場景進(jìn)程樹對(duì)應(yīng)系統(tǒng)故障排查網(wǎng)絡(luò)監(jiān)控對(duì)應(yīng)安全審計(jì)內(nèi)存分析對(duì)應(yīng)性能調(diào)優(yōu)。當(dāng)你在答辯時(shí)展示“我的任務(wù)管理器不僅能看進(jìn)程還能定位哪個(gè)微信子進(jìn)程在瘋狂申請(qǐng)內(nèi)存”教授的眼神會(huì)立刻不一樣——因?yàn)槟阋呀?jīng)超越了課程要求進(jìn)入了工程師的思維范式。6. 最后分享一個(gè)血淚教訓(xùn)關(guān)于tlhelp32.h頭文件的編譯器陷阱這是我?guī)М呍O(shè)十年來學(xué)生踩得最多、最隱蔽、最讓人抓狂的坑?,F(xiàn)象是代碼在Visual Studio里編譯運(yùn)行完美但一換到Dev-C或Code::BlocksCreateToolhelp32Snapshot就報(bào)LNK2019鏈接錯(cuò)誤提示“無法解析的外部符號(hào)”。根源在于tlhelp32.h只是一個(gè)聲明頭文件它依賴的lib庫是kernel32.lib而不同IDE的默認(rèn)鏈接庫配置不同。Visual Studio默認(rèn)鏈接kernel32.lib但MinGWDev-C底層默認(rèn)不鏈接必須顯式添加。解決方案有三步缺一不可確認(rèn)編譯器定義在代碼開頭強(qiáng)制定義_WIN32_WINNT確保使用最新API#define _WIN32_WINNT 0x0601 // Windows 7及以上 #include windows.h #include tlhelp32.h顯式鏈接庫在IDE設(shè)置中添加-lkernel32MinGW或kernel32.libMSVC。驗(yàn)證函數(shù)導(dǎo)出用dumpbin /exports kernel32.dll檢查目標(biāo)系統(tǒng)DLL是否導(dǎo)出該函數(shù)Windows XP SP3之后都支持。但最致命的陷阱是有些學(xué)生用#pragma comment(lib, kernel32.lib)這在MSVC有效但在MinGW下會(huì)報(bào)錯(cuò)。正確的跨平臺(tái)寫法是#ifdef __GNUC__ #pragma comment(lib, kernel32) #else #pragma comment(lib, kernel32.lib) #endif或者更穩(wěn)妥地在Makefile或項(xiàng)目設(shè)置中統(tǒng)一配置。這個(gè)教訓(xùn)說明C語言課程設(shè)計(jì)的終極目標(biāo)不是寫出能跑的代碼而是寫出能在不同環(huán)境、不同編譯器、不同Windows版本下穩(wěn)定工作的代碼。當(dāng)你為解決一個(gè)鏈接錯(cuò)誤翻遍MinGW文檔、查kernel32.dll導(dǎo)出表、對(duì)比不同Windows版本的API支持列表時(shí)你學(xué)到的遠(yuǎn)不止任務(wù)管理器本身——那是軟件工程最本質(zhì)的“可移植性”思維。我至今記得一個(gè)學(xué)生為解決這個(gè)鏈接問題熬了三天最后在Stack Overflow找到答案時(shí)他發(fā)給我一條消息“老師我現(xiàn)在終于懂了為什么Linux要搞POSIX標(biāo)準(zhǔn)。”那一刻我知道他真正入門了。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
婷婷丁香五月天综合网| 色吧五月婷婷| 日韩少妇内射免费播放| 色播五月婷婷| www.久久五月天.com| 狠狠爱青青草| 日本久久天堂| 大香蕉欧美在线| 久久婷五月天| 99久久视频| 99精品无码| 激情婷婷六月| 五月六月丁香婷婷在线观看| 97在线综合| 性一交一乱一交A片久| 天天爽天天爽视频| 色色色色色色色色色999| 六月婷婷av| 久热一区| 欧美性生交XXXXX无码小说| 色婷婷亚洲六月婷婷中文字幕| 婷婷永久在线| 丁香五月欧美色综合| www.激情| 婷婷综合激情| 99热精品在线播放| 国产激情综合五月久久| 99在线69| 五月激情婷婷综合| 久久 中文 日本| 九九热在线视频| 99热这里是精品| 国产激情综合五月| www.国产亚洲69ty.久久久久久久久久久久| www.99操.com| 亚洲AV成人一区二区在线观看| 五月丁香综合激情网| 丁香五月在线看| 婷婷五月成人| 草综合网| 中文久久久人妻| 日韩无码乱轮| 六月丁香激情| 激情亚洲婷婷| 激情久久肏屄视频| 日韩影院三级| 综合天天综合| www.婷婷五月天啪啪| 99热免费| 国产成人一区二区三区在线观看| 大香蕉伊人久久| 五月丁香好婷婷A片网| 亚洲另类视频| 综合伊人久久| 96精品久久久久久久久| 天天干夜夜谢| 99热在线观看亚洲区| 九九色欲网| 色99婷婷五月天| www.久久色.com| 雪千夏麻豆| 黄色片久久| 成人无码精品1区2区3区免费看| 精品婷婷| 亚洲欧洲中文日韩久久AV乱码| 五月婷婷丁香六月| 婷婷综合婷婷| 六月婷婷啪啪| 91丨九色丨老农村| 九九人妻福利| 狠狠色丁香久久婷婷综合五月| 五六月丁香激情视频| 99热这里只有精品69| 大香蕉精品视频| 五月天开心色情网| 国产探花AV在线| 久久有码| 久久视频在线| 婷婷天堂综合| 少妇高潮呻吟A片免费看软件 | 色噜噜五月天| 日韩在线视频中文字幕| 日韩无码成人电影| 午夜伊人大香蕉| AV在线不卡网站| 99国产这里只有精品| 丁香五月综合网亚洲综合欧美狠狠| 人妻精品久久久久久久| 色五月中文网| 超碰成人免费| 91xxxx九色| 色五月婷婷1| 97人人操人人| 丁香六月婷婷综合在线| 丁香五月先锋| 色色婷婷综合| 久久精典| 久色婷婷200| 色欲丁香| 性爱五月婷婷| 678五月丁香亚洲综合| 狠狠五月天婷婷激情网。| 婷婷成人五月天成人文学小说| 天天爱天天秀天天做| 亚洲中文字幕AV| 丁香五月婷婷激情尤物| 变态 另类 在线 | 五月丁香五月天现场视频| 91精品综合久久久久久五月丁香 | 九月色婷婷| 日日操夜夜撸| 婷婷终合色图| 婷婷色情五月| 久久视频在线视频| 色亚洲无码| 久久这里只有精品视频26| 久久99大| 熟女婷婷网站一婷婷五月一丁香婷婷一婷婷激情网 | 丁香婷婷老司机久操| 激情五月综合第一页| 中文网AV| 天天肏夜夜肏| 久久激情五月婷婷| 五月丁香五月婷婷| 色婷婷丁香AV综合| 精品国产va久久久| 国产偷人爽久久久久久老妇APP| 国产欧美日韩综合精品一区二区| 热九九精品| 六月亭亭久久综合激情| 欧美成人精品A片免费一区99| 激情啪啪五月天| 激情五月天在线观看色婷婷| 欧美久久婷婷| 丁香六月激情| 99久久久久久www| 伊人网色婷婷五月天| 色噜噜97视频在线观看| 夜夜骑天天操| 99久久婷婷五月| 激情五月天婷婷激情| 婷婷六月久久综合导航| 日本三级第一页| 97色色视频| 五月婷婷|欧美| 亚洲免费99| 人妻九九九九| 激情综合啪啪| 婷婷九月| 亚洲色爽| 99年操人人爽| 天天搞天天色综合| 影音先锋天天日| 99成人免费热视频| 91精品丝袜久久久久久久久粉嫩| 欧美性丁香色色五月天| 五月天婷婷偷拍| 激情婷婷综合| 婷婷丁香91综合| 深爱激情九九五月天 | 久久久久激情| 亚洲欧洲99| 丁香五月婷婷激情网| 久艹久| 九九热免费观看视频| 丁香午夜天| AV成人在线播放| 五月婷婷啪啪综合网| 午夜]香婷婷深深爱| 亚洲mm色| 99热超| 黄色激情五月天| 五月婷婷操操| 丁香五月激情五月| 色婷网| 色爱亚洲| 午夜无码精品色综合久久| 疯狂做受XXXX高潮A片动画| 99'无码| 日韩1区2区| 欧美色九| 免费观看18视频网站| 国产99视频永久免费| 久久婷婷精品| 婷婷五月天熟妇| 午夜亚洲AV日韩无码| 亭亭五月天黑人2014| 无码色| 色色色色色色综合网| 五月丁香少妇网| 黄色片久久| 美女美女美女三级色天天天天天| 五月色丁香婷婷综合| 99er热精品视频| 中文字幕不卡视频| 婷婷在线免费| 色狠狠综合| 激情婷婷九月| 国产精产国品一二三在观看| 免费观看的婷婷五月视频在线| 久久久久网站| 婷婷五月天VI| 九九aV| 深爱激情婷| 亚洲午夜视频| 九九婷婷激情综合网| 色。 日日日| 国产69久久久欧美黑人A片| 日日操夜夜爽白洁| 男女啪啪视频久 9| 久99视频| 97碰超级人人看| 婷婷五月天影视| 婷婷综合玖玖五月| 99视频| 六月丁香开心婷婷欧美| 蜜桃人妻无码AV天堂三区| 狠狠久综合| 超碰人人在线| 青青草轻轻操| 天天干夜晚夜操| 狠狠五月激情在线| 久er免费视频| 亚欧州精品视频| 色欲色欲久久宗合网| 色婷婷基地| 岛国AV网| 亚洲99精品欧美一区| 激情婷婷五月久久| www久| 色欧美日| 亚洲av成人电影在线观看| 搡BBBB搡BBB搡18| caop在线视频| 五月天大香蕉| 99亚州综合精品成人网| 大香蕉九九| 久久人妻乱| 思思热久久久久思思热| 色五月丁香激情| 综合色色网| 色婷婷丁香社综合| 婷婷久久伊人| 99色久| 亚洲五月六月婷婷| 婷婷丁香五月综合久久| 久色大香蕉| 激情都市另类| 日日夜夜天天综合| 色色色.COM| 五月久久亚洲| 五月天,激情四射,婷婷频道| 激情五月婷婷综合| 97色永久免费视频| 国产午夜一区二区三区| 色情综合| 99热草草| 超碰9在| 欧美三级视频下载| 天堂色婷婷| 亚洲乱码w在线观看| 激情图片久久| 丁香五月天激情婷婷丁香六月 | 无码激情| 男人天堂亚洲综合| 狠婷婷五月| 久热视频这里只有精品68| 五月婷婷之六月丁香| 色色丁香五月婷婷| 深爱婷婷网| 五月婷婷丁香五月婷婷丁香| 97久久超碰| 99热这里只有精品1| 天天操综合网| 婷婷五月丁香性爱| 99色婷婷视频| 亚洲激情免费视频| 精品久久99码| 一级操逼大片| 九九热婷婷| 97碰在线视频| 天天操天天爱天天玩| 五月婷婷六月综合| 久久久久久草黄色片AV在线观看| 管管補管管紱| 婷婷娌伦网| 天天看A片| 天天日天天插| 日韩99视频| 激情综合网五月婷婷| 国产99精品免费视频| 久久久99精品| 五月丁香av中文| 中文字幕永久在线| 欧美色色色色色色| 六月丁香射婷婷欧美色图片 | 噜噜国产| 农村熟妇高潮精品A片| 九月停停| 99视频精品视频| 日屌日日操日日色| 99热99色| 9999热在线免费观看| 密黄站| 99热中国| 成人免费120分钟啪啪| 亚洲AV成人精品网站在线播放| 色色色97| 天天夜天天色天天| 色婷五月天| 91丁香婷婷综合久久欧美| 国产成人综合网| 色婷婷激情视频| 成人短视频在线| 99丁香婷婷综合网| 六月婷婷深深爱| 开心深爱激情网| 午夜色婷婷| 色婷婷丁香社综合| 五月丁香六月情亚洲| 大香蕉久久久| 色99在线视频| 色情网综合| 伊人影音无码一区二区三区| 婷婷操久久| 五月婷婷性爱网| 五月婷婷偷| 五月天国产| 99原创自拍视频在线观看| 九九综舍久久| 色五月播五月| 婷婷亚洲久久| 天天艹夜夜艹| 天天综合91入口| 深爱激情网噜噜色| 亚洲字幕AV一区二区三区四区| 五月丁香久人妻中文| 婷婷五月综合视频| 99超碰欧美| 亚洲激情AV| 深爱综合网| 国产婷婷色综合AV蜜臀AV | 99热精品中文字幕| 婷婷五月娱乐在线| 99热免| 岛国在线观看91| 国产片天天爽夜夜爽| 婷婷在线综合| 亚洲在线操| 婷婷俺去也| 天天综合网~91| 五月天婷婷青青| 亚洲色综合| 九九色色| 人妻体体内射精一区二区| 久久久久妻| caop在线视频| 婷香五月网在线| 激情AV| 91精品无码| 婷婷激情九月| 亚洲婷婷丁香五月在线| 熟女人妻一区二区三区免费看| 五月开心婷婷极品激情| 狠狠操狠狠爱| 激情五月视频| 高清国产AV| 九九热免费视频| 亚洲综合999| 日日夜夜干| 97热精品| 天天综合色| 色播五月天天| 在线sebiav精品视频| 99热这里精品| 丁香啪啪| 丁香五月天91| av在线免费网站| 人妻久久婷婷| 欧美韩国日本| 婷婷狠狠色| 无码动漫av| 激情综合五月丁香| 激情婷婷丁香色五月综合| 91.www综合| 国产精品香蕉| 久热欧美| 五月天婷婷无码| 人人草人人看| 色五月天中文字幕| av在线免费网站| 99热激情| 亚洲这里只有精品| 久久这里面只有精品视频| 超碰成人黄色网| 五月草视频| 在线视频99| 色五月激情| 丁香五月激情站| 五月婷婷丁香五月| 激情深爱五月天| 色五月婷婷天天操夜夜操| 日韩黄色电影| 五月天综合在线网| 中文字幕在线免费观看视频| 色五月视频,小说| www.99精品视频| 99热免费| 婷婷内射视频在线| 天天爽夜夜爽夜爽精品| 九九色婷婷| 精品久久久91久久影视网| 五月婷婷官网色| 久久婷婷青草五月天| 亚洲深喉AV| 久热99热| 天天爽天天做| 狠狠操天天操综合| 九九99在线免费在线观看视频| 中国女人内射6XXXXX| 亚洲色优| 五月丁香婷中文字幕| 五月婷婷久久大香蕉| 久久婷婷综合五月| 99久久99九九99九九九| 91人人操.COM| 九九99视频| 五月丁香在线视频观看| 91超碰在线观看| 91碰操| 激情色色| 天天色视频| 丁香婷婷激情五月天无毒不卡蜜桃| 激情婷婷五月亚洲| 91Chinese在线| 亚州激情九月| 东京热人妻一区二区三区在线| 五月丁香婷婷基地| 大香蕉婷婷色| 人人操人人干AV| 婷婷五月丁香六月天亚洲综合| 思思久ren热| 91黄址| 99免费偷拍视频| 久久婷婷青青| 免费日本aⅴ中文字幕| 欧美在线干| 九九热99热| 久久婷婷内射| 99久久99九九99九九九| 91成人性爱视频| 爽极品色| 色婷婷狠狠| 色婷婷超碰| 人人摸人人搞| 五月天伊人| 色色网站在线| 天天噜| www五月| 亚洲视频伍月婷婷| 五月天色区| se99视频| 九月综合| 青草五月天| 97热这里只有精品| 伊人久久艹| 99精品热| 亚洲五月六月婷婷| 最新日韩AV中文字幕| 黄色高清无码| www:99热视频| 丁香婷色| 免费国产VA国产免费| 五月丁香网av| 天天做天天爱综合| 人人摸人人| 精品久热69| 日本色图综合| 激情综合婷婷| 六月五月天婷婷涩播在线| 色婷婷丁香女女| 五月婷狠狠| ...婷婷五月综合不卡,国产在线手机| 狠狠色97| 天天摸天天爽| 婷婷六月啪啪| 五月天综合久久| 激情五月天色播| Blackedraw视频一区二区| 九热网站| 大香蕉伊人久久| 久久网站观看免费欧洲国产| dingxiangtingtingliuyue| www一区二区三区| 激情爱爱网站超大免费| 97福利视频| 六月婷综合| 18久久| 成人视频一区| 麻豆五月丁香婷婷| 色色五月婷| 97超碰,人人舔,人人操,人人摸 | 五月婷婷丁香五月亚洲色| 五月丁香六月婷婷在线播放| 97干视频在线| 亚洲深喉aV| 九久久精品视频99| 色婷婷婷婷成人网| 99热精品观看| 一级操逼大片| 婷婷五月天av| 色噜噜狠狠一区二区三区| 九九伊人网| 5月丁香综合图区| 91凹凸在线| 激情综合激情五月| 97色婷婷成人综合在线观看| 亚洲成人日韩无码精品| 婷婷黄色| 日本三级99人妇网站| WWW色色色COm| 五月激情久久| 亚洲视频一区| 激情综合啪啪| 日日天天干| 性av| 五月丁香怕啪啪| 操骚货在线| 欧美顶级少妇做爰HD| 五月婷婷亚洲| 色婷婷婷婷五月天| www.色五月| 五月丁香婷婷色色| 色噜噜狠噜噜视频| 操逼五月婷婷| 激情校园 亚洲| 久热大香蕉| 91人人爽人人操| 99激情视频热| www.99热| 精品久久9| 天天插综合| ..真实国产乱子伦毛片 | 国产看真人毛片爱做A片| 五月婷婷久久久| 人人爱国产| 99re热视频这里只精品| 丁香六月色婷婷欧美| 99精品视频偷拍| 色开心五月婷婷丁香HD| 思思久久99热只有频精品66| 美女久久婷婷| 九九九九九九九热| 高清资源站日A美A欧亚…| 天天人人综合| 久久婷婷视频| 欧美婷婷六月丁香综合色| 97在线刺激| 99re这里只有| 成人中文字幕在线| 婷婷激情视频| 玖玖爱资源站| 99九九视频| 91精品久久久久久77777| 综合99久久| 最新av在线观看| 婷婷五月天丁香社区| 日日操夜夜操中国无码| 国产五月天欧美色| 99人妻碰碰碰久久久久| 天天日天天摸| 桃色激情五月天| 99色五月| 色狠狠狠干| 婷婷五月天社区| 欧美色狠婷久| 成人午夜视频精品一区| 久久久久久综合五月婷婷| av网址在线播放| 26uuu91| 无码字幕中文| 超碰不卡在线| 大香蕉综合在线| 伊人激情影院| 久热这里只有精品视频6| 色五月综合激情网| 欧洲色| 六月婷婷激情图片| 日本狠狠干| 蜜乳A√| 丁香婷婷综合色五月激情国产基地| 五月天婷婷在线播放| 五月婷婷六月丁香首页| 开心五月婷婷激情| 亚洲五月天狠狠| 九九热内射| 人妻久久久| 丁香五月影院| 操逼电影免费看| pacopacomama 070722_670 素人奥様初撮りドキュメント 103 大久保純子 | 婷婷五月丁香五月| 成人视频婷婷| 香蕉综合网| 亚洲AV影片在线观看| 噜噜精品| 五月天另类小说亚洲| 亚洲天堂婷婷丁香| 色天堂在线| 99在线观看精彩视频| 色五月亚洲开心网| 99热大香蕉| 大战熟女丰满人妻AV| 狠狠干无码| 99热九九这里只有精品| 婷婷热色| 色五月婷婷综合| 丁香五月网在线观看| 97色色婷婷五月天| WwW色婷婷| 激情综合网激情五月天| 思思久久96热在精品国产,| av线电影| 成人婷婷色综合| 99在线免费视频| 激情五月婷婷色综合| 亚洲有码在线视频| 色婷婷综合久久| 97久久人人| 开心色播色五月婷婷| 女操碰| 99久久婷婷国产综合精品| 伊人久久大香线蕉av最新| 五月丁香婷婷中文网| 91丨九色丨熟女|新版| 伊人久久丁香狠狠婷婷综合香蕉| 丁香午夜天| 99热精品无码| 色丁香五月婷婷在线| 色频玖玖五月天| 日本97久久久精品| 97人人干视频| 天天爽天天| www.色综合| 亚洲日日日| 婷婷播播五月天| 亚洲国产精品成人免费一区久久久在线观看AAAA | 亚州色综合| av免费在线看不卡无毒| 99无码免费视频| 色玖玖综合| 欧美日韩国产一二区| 99综合| 一区二区三区视频| 亚洲在线操| 色色a| 婷婷五月成人系列| 久久 视频这里只有精总| 成人羞羞啪啪 全 视频| 成人五月天综合网| 色综合色色| 大香蕉婷婷久久| www.99日本| 色色色色区| 偷偷操九九| 五月婷婷欧洲| 啪啪操网| 99日在线观看视频| www.99免费视频| 大香人妻| 婷婷五月综合网激情| 五月丁香婷婷钟和色图| www.色多多婷| 婷婷久久婷婷色五月| 色播激情| 操久久精| 久久九九综合| 五月丁香久久综合| 天天日人人爽| 亚洲日日操| 婷婷五月天偷拍| 国产婷婷五月天| 深爱激清网| www.minyis.com【JT】实力收量可预付QQ2101460746 | 五月刺激丁香月综合| 色婷婷成人色网| 狠狠色噜噜狠狠狠狠狠色综合久久| 潘金莲AAAAAAAAAA| 色五月婷婷丁香凹凸| 亚洲色频| 婷婷射丁香| 婷婷五月在线观看| 国产乱子轮XXX农村| 激情综合视频| 麻豆雪千夏| 91操操| 色五月丁香一区在线| 色五月婷婷大| 亚洲精品永久久久久久| 91超级碰碰| 五月丁香啪| 免费在线观看AV网站| 国产三级在线播放| 日韩高清成人| 人妻熟妇六区| 无码色| 综合五月婷婷| www.9色色色| 日韩在线视频中文字幕| 【乱子伦】黄色| 五月草影视| 人妻久热| 超碰成人黄色网| 9 1在线视频| 看黄的网站18禁| 就爱射中文字幕资源网| 97人人操人人| 七月丁香五月婷婷在线| 色婷婷免费视频| 婷婷五月激情片| 中文在线成人| 国产伦亲子伦亲子视频观看| 色www.con| 狠狠88综合久久久久噜噜噜| 99精品视频网| A片试看120分钟做受视频红杏| 久青草大香蕉| 热这里只有精| 九九热精品99| 99在线资源视频| 9|无码久久久久久| 99热这里只有免费精品| 99热免费| 六月婷久久| 婷婷综合网站| 久久激情五月| 国产在线黄色| 91精品久久久久久综合五月天| 五月丁香六月成人| 狠狠se| www.五月天。com| 色999亚洲人成色| 久久丁香九| 无码G高清天| 丁香花五月天激情| 中文字幕黄色电影网址| 丁香六月激情蜜桃| 激情婷婷丁香| 超碰久热| 大香蕉婷婷丁香视频在线| a性生活久久无| 亚洲激情图文小说| 97视频久久| 久久机热探花| 婷婷久久色| 亚洲激情无码久久| 色婷婷亚洲精品天天综| 色色色色色色色色色色色色色97| 丁香五月六月激情久久| 五月日韩中文字幕| www婷婷亚洲| 日本久久天堂| 日本熟女视频一区二区| 99热精品在线播放| 激情五月丁香社区| 五月天开心色情网| 激情六月婷婷| 97资源欧美日韩大香蕉超碰一区| 玖玖激情网| 五月婷婷影| 1级欧美日韩| 五月婷婷色吧!| 9精品久久999| 久久996re热这里只有精品无码| 六月丁丁香| 丁香五月婷婷五月天在线| 99精品在这里| 性色欲情 网站| 99热在线只有精品| 99 热| 婷婷五月天成人| 丁香六月天AV| XX色综合| 激情小说五月欧美亚洲丁香| 丁香婷婷综合色五月激情国产基地| 我要射综合| 久久五月丁香综合| 开心网五月色婷婷| 五月丁香网站| AA丁香综合激情| 99re99热| 久久久国产精品黄毛片| 色婷婷色人人射| 中文婷婷狠狠| 国产婷婷综合在线免费视频| 51成人| 色情五月丁香| 婷婷五月激情欧美大胆视频| 182.t午在线观看| 五月天激情国产综合婷婷| 久久激情五月网| 91丨九色丨东北熟女| 激情五月黄色小说| 丁香六月婷婷操逼网| 天天综合中文| 超碰成人在线观看| 热久久这里只有精品| 99热精品一| 色婷婷91| 99超级碰免费视频| 五月天深爱激情网| 99热99精品| 色色激情五月天| 99热这里只有是亚洲国产| 99在线热视频| 99久视频| 欧美一级操逼视频| 婷婷五月av| 色www久视频| 狠狠色噜噜狠狠狠888| 丁香六月婷婷| 91av成人| 日日天天干| 五月六月激情| 色婷婷综合网站| 国产美女无遮挡裸体毛片A片| 欧美丁香婷婷天天操| 天天狠狠综合精区| 91碰碰视频| 久久激情综合| 婷婷99丁香| 亚洲色网址| 久久这里有精品视频| 日韩AV片| 日韩限制级大尺度黑料泄密大尺度视频一区二区在线观看 | 六月婷婷av| 日本熟妇人妻在线| www.com亚洲网站在线免费| 色噜噜狠狠色综无码久久合欧美| 五月丁香婷婷激情在线视频| 超级久久久| 五月天婷婷综合网| 97 A I色色| wwW天天干| www久久久久久| 婷婷五月天成人| 丁香六月五月天| 五月丁香婷婷在线综合蜜桃| 激情婷婷护士激情| 五月天激情网图片| 97亚洲婷婷| 婷婷综合成人五月天| 久久99久久99精品免观看粉嫩| 五月丁香综合网| 色情久久久| 天天射夜夜骑| www。狠狠干。com| 久色五月天| www,99热在线观看| 色情五月综合婷婷| 色久九| 色播播五月| 狠色狠色狠色狠色狠色网| 久草大| 久久精品日| 激情性爱五月天网页| 国产亚洲色婷婷久久99精品91| 丁香六月色婷婷| 亚洲六月婷| 中文字幕成人| 九九热视频99| 99热久久日本| 国产女人十八水真多1| 操碰97| www夜夜| 97色干| 色无码| 激情综合网五月| 色噜综| 啪啪激情网站| 亚洲视频在线观看99| 99小视频| 五月婷网| 超碰激情网| 日韩人妻在线观看| 哇嘎成人久久| 日韩肏屄网| 久久色吧| 婷婷色五月天色色| 九九无毛| 99视频日韩| 丁香六月激情国产| 婷婷热色| 一级无码作爱片| 婷婷丁香五月天之开心少妇| 五月停停99| 色色色五月天婷婷| 久久33视频| 久久婷婷五| www久久久久久久| 欧美超碰亚洲| 久久99日本精品视频免费观看| 91日综合欧美| 婷婷丁香五月91| 日本色色网站| 久草天堂| 亚洲成人网无码| 妻久久久久| 激情的五月婷婷蜜桃| 色狠狠伊人久久五月丁香| 亚洲五月丁| 99.色| 99热国产这里只有精品| 亚洲激情97五月天| 在线观看欧美| 中文字幕 中文字幕明步| 夜夜爱网站| 国产真人做爰视频免费| 亚洲日本韩国| 天堂网亚洲色图| 国产精产国品一二三在观看| 91主播在线| 51成人| 六月丁香婷婷拍拍| 99久久99热这里只有精品| 五月丁香六月停停| AV性爱网| 超碰人人色| 99久久精品免费精品国产_国产精品久久久久久_国产在线|日韩_久久国产精品电影 | 久久精品99国产精品日本| 国产人妻777人伦精品HD| 韩国中文字幕91| 伊人婷婷五月天av| 伊人干综合| 夜夜夜夜做天天天做无码视频| 99色在线观看视频| 五月婷婷啪啪| 99精品在线| 五月天社区婷婷| 综合激情五月婷婷| 好好日激情五月天| 久久婷婷青青| 九九热最新地址| 天天射影院| 色婷婷成人做爰A片免费看网站| 色五月色开心开心五月| 91在线日| 先锋av性爱成人电影| 狠狠干在线| 中文字幕日产A片在线看| 青青草婷婷久久| 综合久| 96五月丁香熟女| www.五月.com| 9色在线视频精品观看| 五月婷婷色播| α久久| 亚洲人妻五月丁香婷婷| 丁香五月天黄色片| 国内精品免费一区二区2009| 啪啪99| 五月丁香激情欧洲啪啪| 中文字幕在线播放视频| 五月婷婷操操| 欧美在线视频99| 激情久久综合网| 色香欲综合| 99九精品| 色欲操| 99在线热| 丁香婷婷久久五月天| 激情宗合哪里能看| 69色婷婷| 色无婷婷| 十月丁香婷婷| 日本高清久| 日本成人内射| 久色成人| 99热e| 99视频在线观看视频| 亚洲无码成人性爰网| 97干97色| www久久久久| 99在线资源视频| 丁香五月大片| 日日操天天操| 91九色小视频| 色五月婷婷久久| 2025超碰| 深情六月婷婷综合久久| 中文字幕成人| 九九精品热播| 六月丁香五月天| 1级欧美日韩| 婷婷丁香一月| 久久免费精彩视频| 色10月婷婷视频| www.婷婷| 色综合色色色色| 国产精品激情五月天色婷婷| 9久热精品在线视频| 五月天婷婷一起草| 久久久18| 另类在线| 99爱在线免费视频| 久热 91| 91婷婷色五月| 女婷久久| 久久婷婷五月天激情四射| 九九re视频在线视频| 婷婷五月丁香六月天亚洲综合| 风流少妇A片一区二区蜜桃| 六月婷婷视频| 免费黄色视频网址| 久久精品国产色| 成人片在线播放| 亚洲性受XXXX五月丁香| 天天色亚洲| 99在线观看视频免费| 久久综合爱| 激情综合啪啪啪| 中文在线成人| 激情五月天综合网| 四虎成人精品永久免费AV九九| 婷婷五月色激情欧美激情| 天天综合91入口| 婷婷久月| 99色中文| 日日操夜夜撸| 丁香婷婷偷拍| 久久性爱99国产| 常久最新免费的色吊丝| 欧美啪啪五月天| 九九热最新| 欧美日朝成人| 婷婷性爱影院| 女人露出p毛视频www网站| 五月激情影院| 五月五丁香婷婷| 色色热日| 91黄操| 69热在线| 成人在线观看精品| 久狠狠狠| 67194成I人在线观看线路1| 亚洲黄色影视| 婷婷综合爱| 91在线日本| 婷婷五月天影院| 色久综合天天做视频| 亚洲婷婷丁香五月| 亲子乱AV一区二区三区下载| 激情小说婷婷小说| 六月成人网| 亚洲国产精品VA在线看黑人| 99热啪啪| 五月日韩中文字幕| 丁香六月婷婷五月婷婷| 九九综合色| 亚洲第一成人无码A片| 九九免费视频| 91AV视频| 大香蕉人妻| 五月婷婷婷婷网| 亚欧州精品视频| 夜夜 操无码| 69五月天视频| 超碰高清在线| 国产69精品久久久久999小说| 五月天五月天成人网亭亭成人色网站| 亚洲第一成人无码A片| 97在线观视频免费观看| 五月天婷婷在线播放| 婷婷色激情网| 久草五月婷| 538在线精品| 99热在线这里| 色五月之第四色| 日日操无码| 九月丁香| 日日操夜夜骑| 丁香午月AV中文字幕| 欧美碰碰| 51精品国自产在线| 五月婷婷丁香五月| 久久五月丁香综合17C| 在线观看中文字幕亚洲| 5月丁香综合图区| 婷婷五月天开心网| 五月激情天| 色婷婷五月天天天做| 亚洲色久| 97久久久免费福利网址| 亚洲亚洲人成综合网络| 六月婷久久| 婷婷色丁香六月| 丁香五月婷婷无码AV| 精品99在线看| 超碰无码老师| 噼里啪啦在线观看免费完整版视频 | 色色亚洲视频| 成人综合AV| 激情网综合| 天天天天天操| www.天天干.com| 欧美三级黄色片久久| 超碰自拍天堂| 婷婷色色亚洲| 色婷婷成人网| 五月婷婷丁香五月婷婷丁香| 人人干Av| 插插插色综合网| 99操逼| 日本激情91| www.9797国产| 丁香九色不卡aaa | 丁香 久久| 激情五月婷婷丁香综合网| 欧美色六月婷婷| 台湾综合丁香五月蜜桃| 91人人操.COM| 婷婷五月天堂| 国产成人AV在线播放| 九九激情视频| 丁香五月天的网址。| 人人舔天天| 婷婷色五月丁香六月欧美啪| 99色热视频| 九九狠狠干| 91人妻人人操人人爽| 久久 中文 日本| 激情久久网 | 久久五月天激情婷婷| 99精品视频免费在线播放| WWW,色五月| 超碰久热| 国产色丁香| 欧美日韩大黄| 九玖视频这里只有精品| 九九综合视频在线观看| 性爱动图国产麻豆一区二区三区 | 丰满人妻妇伦又伦精品国产| 色伦专区97中文字幕| 亚洲综合激情五月久久| 白人荫道BBWBBB大荫道| 91av传媒高清在线视频网| 免费看欧美成人A片无码| 97caop| 免费观看日韩成人av| 九九九九操逼| 操碰99在线视频观看| 色综合久久88| 久久婷婷综合基地| 超碰在线免费| 亚洲丁香婷婷五月天综合色| 少妇激情五月婷婷| 五月丁香综合伦理片| site:feetmall.com| 五月色影院| 欧美色色色色色色色| 日韩久热| www.yw尤物| 丁香六月婷婷操逼网| 丁香深五月婷婷| 婷婷爱爱蜜臀天天操| 亚洲小视频免费看| 操操操操操电影网| 丁香六月婷婷一区二区三区| 99国产精品久久久久久久久久久| 精品久久99码| 丁香婷婷啪啪| 婷婷不卡基地| 97操碰视频| 天天摸,天天爽| 思思re视频在线| 4438激情网| 亚洲中文字幕在线观看| www免费在线视频| 婷综合六月| 九九Av| 99re思思热这里| 玖玖热视频| jiZZdr| 开心久久网婷婷| 色色日韩| 激情五月亚洲| 婷婷99| 色色综合网。| 五月婷婷丁香综合,亚洲天堂| 日韩成人无码人妻| 久久深爱激情网| www.色99| 日曰躁夜夜躁2026| 综合视频久久| w婷婷五月婷婷w| 91人人网| 亚洲精品一区中文字幕乱码| 国精产品一区二区三区| 天堂爱爱| 超碰com| 99精品偷自拍| 综合久久综合| 啪啪小说五月天| 久热超碰91| 91久久婷婷| 99热每日| 91九色首页| 婷婷六月花| 五月婷婷激情久久| 日本强伦片中文字幕免费看| 日本久久婷婷| 五月天天爱| 嫩草极品| aⅤ79成人片| 国产熟女日日骚五月丁香爱| 成人午夜免费电影| 婷婷五月综合色中文字幕| 人人干av| 婷婷色色综合| 天天草人人摸| 99成人在线观看| www.色色色com| 六月婷婷六月天天在线免费| 99riAv1国产在线观看| 香蕉网婷婷| 五月婷婷六月激情在线| 国产激情视频在线观看| 久久婷婷六月综合综合| 激情久久四色| 久久草大香蕉| 色吧婷婷| 精品人妻一区| 97夫妻超碰| 色婷婷激情小说网| 99色综合| 亭亭五月丁香综合欧美| 天天爽天天干| 天堂在线婷婷| 五月婷六月婷婷| WWW、99热| 嫩草综合网| 91超级碰| 就要爱综合| 五月丁香婷婷六月| 九九精品9| www.色五月天.com| 男同91| 五月社区婷婷激情| 少妇大叫太大太粗太爽了A片| 美女黄频aⅴ视频| 天天天天干| 97碰人人操| 26uuu丁香婷婷五月| 在线综合91| 久久伊人五月天| 激情综合在线播放| 天天干,夜夜爽| 五月丁香综合网| 五月天婷婷在线AN| 狠狠综合久久综合| 九九热只有精品| 国产精品第一国产精品| 综合婷婷六月| 色五月亚洲| 久色视频首页| 婷婷丁香五月天综合在线日韩| 黄涩毛片|