將字串utf-8編碼後再url編碼

背景:用戶端(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直接用  

控制代碼、指標、ID之間的轉換

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

MFC中的IO操作

CreateFile       開啟檔案       要對檔案進行讀寫等操作,首先必須獲得檔案控制代碼,通過該函數可以獲得檔案控制代碼,該函數是通向檔案世界的大門。           ReadFile       從檔案中讀取位元組資訊。         在開啟檔案獲得了檔案控制代碼之後,則可以通過該函數讀取資料。           WriteFile         向檔案寫入位元組資訊。         同樣可以將檔案控制代碼傳給該函數,從而實現對檔案資料的寫入。           

std::map的插入操作與賦值操作

前些天,哥們又犯暈了:  自己定義了一個容器: typedef std::map<string, string> MapKeyValue; typedef std::map<string, MapKeyValue> MapSection;  想用這個MapSection當容器來臨時儲存.ini 檔案的section, key, value.  對於一個容器常用不過的方法就是添加資料了. 於是乎哥們就想到insert, 過來一個就insert一個,無非就是再判斷一下:

fisheye外掛程式開發

 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

相應鍵盤事件,相容firefox與IE

在IE下,我們可以在使用這樣的代碼獲得鍵盤的按鍵:view plaincopy to clipboardprint?var val= event.keyCode;  var val= event.keyCode; 但是,這句代碼在Firefox下就無法使用。而且,event在IE下是全域對象,可以直接使用,但Firefox中則不能這樣。為了能夠達到相容,我們可以使用下列的代碼:  function func(e)   {       var val;       if (!e)       { 

http抓包工具推薦

最近工作過程中,有時候都需要抓包分析源地址和目標url。用到了幾個工具感覺還不錯。 第一個是國產的WSockExpert。以前大家上網漏洞的時候很多時候都用到他。易上網,功能一般。但自身dll檔案容易被認為木馬刪除。適用於特定程式提交的分析。 第二個是HttpWatch。一種內嵌於IE內的抓包程式。可以清楚看到post頭和傳回值。比較合適WEB整站資料的分析。 第三個是HttpAnalyzerStdV2,也是我現在最喜歡的一個抓包工具。分兩種形式,有一種模式類似於HttpWatch,可嵌套IE。

InterlockedDecrement用法注意的事項

在多線程編程中,我們經常用到InterlockedDecrement , 此處有個細節問題,簡單聊一下.下面的程式用mReferenceCount來控制是否要刪除自己.    void AddRef(){InterlockedIncrement(&mReferenceCount);}void Release(){InterlockedDecrement(&mReferenceCount);if (0 == mReferenceCount){delete

MFC 對話方塊隱藏的幾種辦法

有很多應用程式要求一起動就隱藏起來,這些程式多作為背景程式運行,希望不影響其他視窗,往往只在托盤區顯示一個表徵圖。這些程式通常都是對話方塊程式,而對話框在初始化的過程上與SDI、MDI的初始化是不同的,對話方塊只需要DoModule或者是CreateDialog等等對話方塊函數調用一次便可,SDI、MDI則要好幾步才行。這樣看來,對話方塊在使用方法上面是隱藏了不少細節的,其中就沒有SDI、MDI所要求的ShowWindow(nCmdShow)這一步。因此對話方塊要想一運行就隱藏,並不是很直接的。

netstat 與fport

Netstat   是DOS命令,是一個監控TCP/IP網路的非常有用的工具,它可以顯示路由表、實際的網路連接以及每一個網路介面裝置的狀態資訊。Netstat用於顯示與IP、TCP、UDP和ICMP協議相關的統計資料,一般用於檢驗本機各連接埠的網路連接情況。  解釋  如果你的電腦有時候接收到的資料報導致出錯資料或故障,你不必感到奇怪,TCP/IP可以容許這些類型的錯誤,並能夠自動重發資料報。但如果累計的出錯情況數目佔到所接收的IP資料報相當大的百分比,或者它的數目正迅速增加,那麼你就應該使用N

jaxb 通過xml轉ava對象

 今天在開發rest介面,要使用jaxb從對象產生xml返回給用戶端。由於是中途介入,jaxb已經被人成功地引入到了我們的web項目中,所以在只裡之是想說下如何從xml產生jaxb需要的java對象。1.第一步:通常我們會跟用戶端程式定義好傳輸資料xml,如<?xml version="1.0" encoding="UTF-8"?><users>    <user>        <name>小李</name>       

MFC 初始化時隱藏對話方塊

   第一步,聲明一個響應函數afx_msgvoidOnNcPaint();用於阻止繪製對話方塊操作。將這個函數放入Dlg類的聲明中,作為Dlg類的一個成員。   第二步,註冊訊息WM_NCPAINT(),也就是在BEGIN_MESSAGE_MAP(Dlg,CDialog)和END_MESSAGE_MAP()之間添加ON_WM_NCPAINT()。   第三步,OnNcPaint函數代碼如下:   void CMyDialog::OnNcPaint()    {       static

strcpy_s, wcscpy_s, _mbscpy_s 用注意overlap

大家看到這些函數時,覺得這些再普通不過了,不過還是得耐心的看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

MFC檔案操作(CFile)

1.檔案的尋找  當對一個檔案操作時,如果不知道該檔案是否存在,就要首先進行尋找。MFC中有一個專門用來進行檔案尋找的類CFileFind,使用它可以方便快捷地進行檔案的尋找。下面這段代碼示範了這個類的最基本使用方法。  CString strFileTitle;  CFileFind finder;  BOOL bWorking = finder.FindFile("C://windows//sysbkup//*.cab");  while(bWorking) 

Using Unicode in INI files and WritePrivateProfileStringW

http://blogs.msdn.com/b/michkap/archive/2006/09/15/754992.aspx今天看了老外的部落格,關於WritePrivateProfileStringW是否能產生unicode檔案的問題. 這個部落格的博主看來對msdn上解釋也看不明白,看來老外看msdn的解釋也會犯暈阿. 說白了,就是這個博主覺得: 微軟既然已經提供了WritePrivateProfileStringW而非WritePrivateProfileString 函數,

strnicmp,strncmpi函數

函數原型: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> 

ClientToScreen 和 ScreenToClient

ClientToScreen( )是把視窗座標轉換為螢幕座標ScreenToClient( )是把螢幕座標轉換為視窗座標螢幕座標是相對於螢幕左上方的,而視窗座標是相對於視窗使用者區左上方的VC下,有些函數使用視窗座標,有些使用螢幕座標,使用時要分清。一個表單分為兩部分:系統區和客戶區象標題和菜單之類的是系統區,由系統來控制,客戶區就是你的地盤嘍!!!Width, Height 是指整體的,ClientWidth, ClientHeight是指客戶區的,兩者相減就是系統區的啦!!!ClientTo

HTML5檔案API之圖片預覽

原文轉自 http://www.php100.com/html/webkaifa/HTML5/2011/0806/8542.html  圖片上傳在當今的Web應用中是一個非常常用的功能,如果不需要在上傳前進行圖片預覽則可以簡單的使用HTML+Javascript來實現,但如果一定要在上傳之前提供圖片預覽功能則需要求助於Flash來實現。不過,隨著HTML5 File API的誕生這一狀況終於有了改觀,本文將介紹如何使用HTML5 File

GetBuffer’ : 2 overloads have no legal conversion for ‘this’ pointer

今天用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&

通過管道,在自己的介面顯示背景程式的執行日誌

 Windows管道技術簡述 detrox不知你是否用過這樣的程式,他們本身並沒有解壓縮的功能,而是調用DOS程式PKZIP完成ZIP包的解壓縮。但是在程式運行時又沒有DOS控制台的視窗出現而且一切本應該在DOS下顯示的資訊都出現在了那個安裝程式的一個文字框裡。這種設計既美觀又可以防止少數眼疾手快的使用者提前關了你的DOS視窗。現在就來討論一下,如何用匿名管道技術實現這個功能。管道技術由來已久,相信不少人對DOS命令裡的管道技術最為熟悉。當我們type一個檔案的時候如果想讓他分頁現實可以輸入C:

總頁數: 61357 1 .... 17313 17314 17315 17316 17317 .... 61357 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.