原创 windows 時間戳

time_t 表示時間戳。timt_t * mktime(tm *p) 將tm類型轉換爲 時間戳。 tm * gmtime(time_t *p); 將time_t(時間戳)轉換爲tm類型

原创 MFC 單文檔 帶參數調試

項目用MFC 單文檔開發。今天準備帶參數調試,發現在 “命令參數”欄 填1時,程序運行會報錯,提示"沒有找到E:\xxx\1". 原來把參數數據當成了執行模塊。這個MessageBox並不是我代碼彈出,所以不好判斷在哪裏報錯。 這裏就

原创 windows 選擇文件夾

如果只想讓用戶選擇文件夾,而不是選擇文件,則不能用CFileDialog,用CFolderPickerDialog來實現 //選擇解壓後的文件路徑  void CUpdataAppDlg::OnBnClickedExtractsetta

原创 IOCP與SO_KEEPALIVE

項目使用IOCP完成端口,要對連入的客戶端進行 死連接檢測。由於是TCP協議,便想到用SO_KEEPALIVE及SIO_KEEPALIVE_VALS進行檢測。簡潔方便,把任務交給系統來做更有保障些。於是便寫下了如下代碼: //Set Ke

原创 GetWindowRect與GetClientRect 的區別

GetWindowRect   函數功能:該函數返回指定窗口的邊框矩形的尺寸。該尺寸以相對於屏幕座標左上角的屏幕座標給出。   函數原型:BOOL GetWindowRect(HWND hWnd,LPRECTlpRect);   在Vis

原创 C++打開文件夾並選中指定文件

如何用程序打開一個文件,並選中這個文件夾中指定的文件呢?其實這個功能用得很多。 1.方法一 [cpp] view plain copy ShellExecute(       NULL,       _T("open"

原创 Windows創建指定大小

用文件映射可以瞬間創建一個空的大文件。 VOID CreateSpecifiedSizeFile(DWORD dwSizeHigh, DWORD dwSizeLow) {     HANDLE hFile = CreateFile(_T

原创 PE加載重定位

PE exe文件加載有時候會重定位,主要是因爲 FILEHEADER中的一個字段  Characteristics    這個域描述pe文件的一些屬性信息,比如是否可執行,是否是一個動態連接庫等.具體定義如下: #define IMAG

原创 VS2010 調試啓動突然變慢解決辦法

【問題】 win7 x64,i5四核,8G內存,C盤還是SSD的。 之前啓動Visual Studio 2010,都是很快,比如1,2秒。 突然,某天,啓動Visual Studio 2010,極其的,非常非常的慢,要好幾分鐘。

原创 狀態欄重影問題

最近用單文檔寫一個項目,視圖分割四部分。在其中一個ListView中添加了狀態欄。當拖動滾動條的時候,狀態欄會出現重影。 解決辦法: 在響應滾動條消息  ON_WM_HSCROLL()  函數中加上m_StatusBar.Invalida

原创 Windows Error 0x00002620 - 0x00002B0F

This is the fourteenth and final node in the project to consolidate all of the Windows Error nodes. You will notice

原创 ShowErrMsg

VOID ShowErrMsgW() {     LPVOID lpMsgBuf = NULL;     FormatMessageW(          FORMAT_MESSAGE_ALLOCATE_BUFFER |       

原创 Windows Styles

原貼地址:http://zhangshourui2004.blog.163.com/blog/static/86106520078914126397/ [WTL] 窗體Style的含義 比較有用的設置: (1) WS_POPUP:彈出