原创 【Windows核心編程筆記】第二十章 DLL高級技術

DLL模塊的顯示載入和符號鏈接 LoadLibrary/Ex      顯示加載dll,映射到進程的地址空間 FreeLibrary    顯示卸載dll FreeLibraryAndExitThread   適用dll中創建線程的情況

原创 MFC小程序之批量修改ini配置

用到的主要內容: 1、遍歷文件夾內所有文件 2、選擇文件夾對話框 3、遍歷ini節點並設置值   主要代碼: CString SelfFilePath() { //選擇文件夾對話框,返回選擇的文件夾路徑 TCHAR szFol

原创 【Windows核心編程筆記】第十五章 在應用程序中使用虛擬內存

預訂地址空間區域 VirtualAlloc    預訂進程中的地址空間區域,第二個參數類型是MEM_RESERVE VirtualAllocExNuma      同上,區別在於應用程序在NUMA機器上運行   給區域調撥物理存儲器 Vi

原创 【Windows核心編程筆記】第十四章 探索虛擬內存

系統消息 GetSystemInfo      獲取主機相關的值,比如頁面大小、分配粒度等   32位程序在64位系統上運行,涉及到模擬層(WOW64),32位程序通過WOW64運行和64位程序運行這兩種情況,GetSystemInfo獲

原创 【Windows核心編程筆記】第七章 線程的調度、優先級和親緣性

知識點概述: Windows不是實時操作系統,而是搶佔式多線程操作系統   創建線程的內核對象之後,線程的暫停計數爲1,此時不能被CPU調度,因爲線程要初始化 初始化完成之後,會檢查是否有掛起標誌,有的話線程就暫停狀態,沒有則遞減暫停計數

原创 【Windows核心編程筆記】第十九章 DLL基礎

Kernel32.dll    管理內存、進程以及線程相關的API函數 User32.dll       執行與用戶界面相關任務的API函數 GDI32.dll        繪製圖像和顯示文字相關的API函數   爲什麼要用DLL? 擴

原创 【第三方庫】c++ 使用正則表達式庫 pcre

1、爲什麼使用pcre而不是用自身的標準庫regex? 引用: PCRE benefits from some optimizations known as start-up optimizations which are configu

原创 【工作筆記】結構體值獲取失敗

示例代碼: #include <iostream> #include <map> typedef struct TEST_STRUCT { int age; int number; }TEST, *PTEST; std::map<

原创 根據用戶名判斷是否是管理員

BOOL IsUserAdminPrivilege(const CString& strUserName, BOOL& bAdminPrivilege) { DWORD rc; USER_INFO_1 *info;

原创 學習C++ 的正確打開方式

前言 偶有所感,甚合吾意~ 看的書不在多,而在精。 有限的時間把有限的書多看幾遍,真正的懂了比什麼都好~ 個人的一點愚見,僅供參考~   前人栽樹後人乘涼,感謝前輩的收集~ 推薦書籍如下:   語言 《C++ Primer》 《Effec

原创 【Windows編程】通過全路徑結束進程

說明: 全路徑只是一種方式,其他的比如通過PID等都是一個道理~   示例代碼: BOOLTerminateExe(const CString& strPath ) { PROCESSENTRY32 pe32 = {0}; pe32

原创 __int64、ULONGLONG格式化輸出

Tips: 打印日誌信息的時候出現的問題,雖然很小,也算提個醒~   Code: //不考慮溢出的情況 ULONGLONG n1 = 100; printf("%d\n",n1); __int64 n2 = 10

原创 常用編碼轉換

1、ansi-->GB2312 char* U2G(const char* utf8) { int len = MultiByteToWideChar(CP_UTF8, 0, utf8, -1, NULL, 0); wchar_t*

原创 STL常用算法

1、set取交集 set<string> setSrc,setDst,setResult; setSrc.insert("li lei"); setSrc.insert("han meimei"); setDst.

原创 cannot create map for .ILK file; linking nonincrementally

原因: 工程屬性--鏈接--常規--輸出文件, 一般默認此路徑是工程中的Debug或Release路徑,由於想要把文件生成到C:\\XXX下進行調試就改了下生成路徑~ 好吧,錯誤出現: cannot create map for .ILK