Time of Update: 2018-12-04
背景:用戶端(c++編寫)要向開啟一個web查詢頁,需要拼湊一個查詢的url並在瀏覽器中開啟 比如在google中查詢"馬"http://www.google.cn/search?hl=zh-CN&newwindow=1&q=%E9%A9%AC&aq=f&oq= 注意這個"馬"被utf-8編碼後再url編碼,這在java,js,php,c#中都有類似urlencode,escape等方法直接拿來用,我都搞定了,就剩下這個c++用戶端了,卻沒有現成的API直接用
Time of Update: 2018-12-04
win32直接操作的是控制代碼HANDLE,每個控制代碼就對應windows視窗,而vc對HANDLE進行類封裝,間接操作的都是HANDLE,現在控制代碼只是類的一個成員變數。從控制代碼到指標 CWnd* pWnd=CWnd::FromHandle(hWnd); //a temporary CWnd object is created //and attached. pWnd->Attach(hWnd); //Attaches a Windows window to a CWnd
Time of Update: 2018-12-04
CreateFile 開啟檔案 要對檔案進行讀寫等操作,首先必須獲得檔案控制代碼,通過該函數可以獲得檔案控制代碼,該函數是通向檔案世界的大門。 ReadFile 從檔案中讀取位元組資訊。 在開啟檔案獲得了檔案控制代碼之後,則可以通過該函數讀取資料。 WriteFile 向檔案寫入位元組資訊。 同樣可以將檔案控制代碼傳給該函數,從而實現對檔案資料的寫入。
Time of Update: 2018-12-04
前些天,哥們又犯暈了: 自己定義了一個容器: typedef std::map<string, string> MapKeyValue; typedef std::map<string, MapKeyValue> MapSection; 想用這個MapSection當容器來臨時儲存.ini 檔案的section, key, value. 對於一個容器常用不過的方法就是添加資料了. 於是乎哥們就想到insert, 過來一個就insert一個,無非就是再判斷一下:
Time of Update: 2018-12-04
https://developer.atlassian.com/display/DOCS/Start+the+Host+Application+with+your+Plugin+Installeda.下載JDK1.6b.下載atlassian SDKc.使用atlas-create-fecru-plugin命令建立工程,並修改pom檔案指定fisheye的版本d.建立eclipse工程%ATLAS_HOME%\apache-maven\bin\mvn
Time of Update: 2018-12-04
在IE下,我們可以在使用這樣的代碼獲得鍵盤的按鍵:view plaincopy to clipboardprint?var val= event.keyCode; var val= event.keyCode; 但是,這句代碼在Firefox下就無法使用。而且,event在IE下是全域對象,可以直接使用,但Firefox中則不能這樣。為了能夠達到相容,我們可以使用下列的代碼: function func(e) { var val; if (!e) {
Time of Update: 2018-12-04
最近工作過程中,有時候都需要抓包分析源地址和目標url。用到了幾個工具感覺還不錯。 第一個是國產的WSockExpert。以前大家上網漏洞的時候很多時候都用到他。易上網,功能一般。但自身dll檔案容易被認為木馬刪除。適用於特定程式提交的分析。 第二個是HttpWatch。一種內嵌於IE內的抓包程式。可以清楚看到post頭和傳回值。比較合適WEB整站資料的分析。 第三個是HttpAnalyzerStdV2,也是我現在最喜歡的一個抓包工具。分兩種形式,有一種模式類似於HttpWatch,可嵌套IE。
Time of Update: 2018-12-04
在多線程編程中,我們經常用到InterlockedDecrement , 此處有個細節問題,簡單聊一下.下面的程式用mReferenceCount來控制是否要刪除自己. void AddRef(){InterlockedIncrement(&mReferenceCount);}void Release(){InterlockedDecrement(&mReferenceCount);if (0 == mReferenceCount){delete
Time of Update: 2018-12-04
有很多應用程式要求一起動就隱藏起來,這些程式多作為背景程式運行,希望不影響其他視窗,往往只在托盤區顯示一個表徵圖。這些程式通常都是對話方塊程式,而對話框在初始化的過程上與SDI、MDI的初始化是不同的,對話方塊只需要DoModule或者是CreateDialog等等對話方塊函數調用一次便可,SDI、MDI則要好幾步才行。這樣看來,對話方塊在使用方法上面是隱藏了不少細節的,其中就沒有SDI、MDI所要求的ShowWindow(nCmdShow)這一步。因此對話方塊要想一運行就隱藏,並不是很直接的。
Time of Update: 2018-12-04
Netstat 是DOS命令,是一個監控TCP/IP網路的非常有用的工具,它可以顯示路由表、實際的網路連接以及每一個網路介面裝置的狀態資訊。Netstat用於顯示與IP、TCP、UDP和ICMP協議相關的統計資料,一般用於檢驗本機各連接埠的網路連接情況。 解釋 如果你的電腦有時候接收到的資料報導致出錯資料或故障,你不必感到奇怪,TCP/IP可以容許這些類型的錯誤,並能夠自動重發資料報。但如果累計的出錯情況數目佔到所接收的IP資料報相當大的百分比,或者它的數目正迅速增加,那麼你就應該使用N
Time of Update: 2018-12-04
今天在開發rest介面,要使用jaxb從對象產生xml返回給用戶端。由於是中途介入,jaxb已經被人成功地引入到了我們的web項目中,所以在只裡之是想說下如何從xml產生jaxb需要的java對象。1.第一步:通常我們會跟用戶端程式定義好傳輸資料xml,如<?xml version="1.0" encoding="UTF-8"?><users> <user> <name>小李</name>
Time of Update: 2018-12-04
第一步,聲明一個響應函數afx_msgvoidOnNcPaint();用於阻止繪製對話方塊操作。將這個函數放入Dlg類的聲明中,作為Dlg類的一個成員。 第二步,註冊訊息WM_NCPAINT(),也就是在BEGIN_MESSAGE_MAP(Dlg,CDialog)和END_MESSAGE_MAP()之間添加ON_WM_NCPAINT()。 第三步,OnNcPaint函數代碼如下: void CMyDialog::OnNcPaint() { static
Time of Update: 2018-12-04
大家看到這些函數時,覺得這些再普通不過了,不過還是得耐心的看msdn的解釋, 注意有一句話要重視: The strcpy_s function copies the contents in the address of strSource, including the terminating null character, to the location specified by strDestination. The destination string must be large
Time of Update: 2018-12-04
1.檔案的尋找 當對一個檔案操作時,如果不知道該檔案是否存在,就要首先進行尋找。MFC中有一個專門用來進行檔案尋找的類CFileFind,使用它可以方便快捷地進行檔案的尋找。下面這段代碼示範了這個類的最基本使用方法。 CString strFileTitle; CFileFind finder; BOOL bWorking = finder.FindFile("C://windows//sysbkup//*.cab"); while(bWorking)
Time of Update: 2018-12-04
http://blogs.msdn.com/b/michkap/archive/2006/09/15/754992.aspx今天看了老外的部落格,關於WritePrivateProfileStringW是否能產生unicode檔案的問題. 這個部落格的博主看來對msdn上解釋也看不明白,看來老外看msdn的解釋也會犯暈阿. 說白了,就是這個博主覺得: 微軟既然已經提供了WritePrivateProfileStringW而非WritePrivateProfileString 函數,
Time of Update: 2018-12-04
函數原型:extern int strnicmp(char *str1,char * str2,int n) 或者extern int strncmpi(char *str1,char * str2,int n)參數說明:str1為第一個要比較的字串,str2為第二個要比較的字串,n為指定字串str1和str2進行比較的字元的個數。 所在庫名:#include <string.h>
Time of Update: 2018-12-04
ClientToScreen( )是把視窗座標轉換為螢幕座標ScreenToClient( )是把螢幕座標轉換為視窗座標螢幕座標是相對於螢幕左上方的,而視窗座標是相對於視窗使用者區左上方的VC下,有些函數使用視窗座標,有些使用螢幕座標,使用時要分清。一個表單分為兩部分:系統區和客戶區象標題和菜單之類的是系統區,由系統來控制,客戶區就是你的地盤嘍!!!Width, Height 是指整體的,ClientWidth, ClientHeight是指客戶區的,兩者相減就是系統區的啦!!!ClientTo
Time of Update: 2018-12-04
原文轉自 http://www.php100.com/html/webkaifa/HTML5/2011/0806/8542.html 圖片上傳在當今的Web應用中是一個非常常用的功能,如果不需要在上傳前進行圖片預覽則可以簡單的使用HTML+Javascript來實現,但如果一定要在上傳之前提供圖片預覽功能則需要求助於Flash來實現。不過,隨著HTML5 File API的誕生這一狀況終於有了改觀,本文將介紹如何使用HTML5 File
Time of Update: 2018-12-04
今天用vs2010開啟了一個vc6.0的工程,遇到了這樣的問題 此錯誤常見原因:聲明為const的變數調用了未聲明為const的成員函數。不改變內部成員變數和函數都應聲明為const類型。 Definition of GetAt in Visual studio 6 as follows:CString GetAt(int nIndex) const;Definition of GetAt in Visual studio 2005 as follows:const CString&
Time of Update: 2018-12-04
Windows管道技術簡述 detrox不知你是否用過這樣的程式,他們本身並沒有解壓縮的功能,而是調用DOS程式PKZIP完成ZIP包的解壓縮。但是在程式運行時又沒有DOS控制台的視窗出現而且一切本應該在DOS下顯示的資訊都出現在了那個安裝程式的一個文字框裡。這種設計既美觀又可以防止少數眼疾手快的使用者提前關了你的DOS視窗。現在就來討論一下,如何用匿名管道技術實現這個功能。管道技術由來已久,相信不少人對DOS命令裡的管道技術最為熟悉。當我們type一個檔案的時候如果想讓他分頁現實可以輸入C: