锘??xml version="1.0" encoding="utf-8" standalone="yes"?>久久精品www,亚洲国产精品综合久久网络 ,人妻精品久久久久中文字幕69 http://www.shnenglu.com/kenlistian/category/1841.html鍘氱Н钖勫彂. 鍕や負(fù)妗?鎬濅負(fù)甯? zh-cnTue, 24 Mar 2009 16:14:54 GMTTue, 24 Mar 2009 16:14:54 GMT60鍙戦佹秷鎭粰綰跨▼http://www.shnenglu.com/kenlistian/archive/2009/03/22/77479.htmlkenlistiankenlistianSun, 22 Mar 2009 05:06:00 GMThttp://www.shnenglu.com/kenlistian/archive/2009/03/22/77479.htmlhttp://www.shnenglu.com/kenlistian/comments/77479.htmlhttp://www.shnenglu.com/kenlistian/archive/2009/03/22/77479.html#Feedback0http://www.shnenglu.com/kenlistian/comments/commentRss/77479.htmlhttp://www.shnenglu.com/kenlistian/services/trackbacks/77479.htmlBOOL PostThreadMessage(
  DWORD idThread,     //綰跨▼ID,閫氳繃鍒涘緩綰跨▼鍚庣殑id
  UINT  Msg,           //娑堟伅id
  WPARAM wParam,    
  LPARAM lParam);
鐒跺悗鍦ㄧ嚎紼嬮氳繃GetMessage or PeekMessage鍘昏幏鍙栬娑堟伅.

浠g爜鐗囨濡備笅:
unsigned int CALLBACK thread_func(LPVOID lp)
{
while(1)
{
MSG msg;
while (GetMessage(&msg, NULL,  0, 0)) 
//while (PeekMessage(&msg, NULL,  0, 0,PM_REMOVE)) 
switch(msg.message) 
case WM_MYMESSAGE:
printf("\n *thread_func1:%d", msg.wParam);
break;
}
        } 
}

鍏朵腑鍙戦佺嚎紼嬬墖孌靛涓?
UINT dwId
_beginthreadex(NULL, 0, thread_func, NULL, 0, &dwId);
        ...



闄?
GetMessage(LPMSG lpMsg,  HWND hWnd,   UINT wMsgFilterMin,   UINT wMsgFilterMax)
PeekMessage(LPMSG lpMsg,  HWND hWnd,   UINT wMsgFilterMin,   UINT wMsgFilterMax,UINT wRemoveMsg)

    鍙傛暟wRemoveMsg鐨勪綔鐢ㄦ槸鎸囧畾娑堟伅鑾峰彇鐨勬柟寮忥紝濡傛灉璁句負(fù)PM_NOREMOVE,閭d箞娑堟伅灝嗕笉浼?xì)浠庢秷鎭槦鍒椾腑琚U誨嚭錛屽鏋滆涓篜M_REMOVE錛岄偅涔堟秷鎭皢浼?xì)浠庢秷鎭槦鍒椾腑琚U誨嚭錛?/div>

    涓や釜鍑芥暟涓昏鏈変互涓嬩袱涓尯鍒? 
    1.GetMessage灝嗙瓑鍒版湁鍚堥傜殑娑堟伅鏃舵墠榪斿洖,鑰孭eekMessage鍙槸鎾囦竴涓嬫秷鎭槦鍒椼?GetMessage 澶勪簬鎸傝搗絳夊緟娑堟伅鏉?鑰孭eekMessage鍒欎笉綆℃湁涓嶆湁娑堟伅閮借繑鍥?
    2.GetMessage浼?xì)灏嗘秷鎭粠闃熷垪涓垹闄?鑰孭eekMessage鍙互璁劇疆鏈鍚庝竴涓弬鏁皐RemoveMsg鏉ュ喅瀹氭槸鍚﹀皢娑堟伅淇濈暀鍦ㄩ槦鍒椾腑銆?濡傛灉淇濈暀鍦ㄩ槦鍒椾腑,鏈濂界珛鍗沖鐞?

      鍦╓indows鐨勫唴閮紝GetMessage鍜孭eekMessage鎵ц鐫鐩稿悓鐨勪唬鐮併傝屼袱鑰呮渶澶х殑涓嶅悓涔嬪鍒欎綋鐜板湪娌℃湁浠諱綍娑堟伅榪斿洖鍒板簲鐢ㄧ▼搴忕殑鎯呭喌涓嬨傚湪姝ょ鎯呭喌涓嬶紝PeekMessage浼?xì)杩斿洖涓涓┖鍊煎埌搴旂敤紼嬪簭錛孏etMessage浼?xì)鍦ㄦ鏃惰搴旂敤绋嬪簭浼戠湢銆?/div>
(濡傛灉鍦ㄧ嚎紼嬩腑浣跨敤,鐢℅etMessage or PeekMessage閮芥棤鎵璋?涓嶉渶瑕佽冭檻娑堟伅闃熷垪鐨剅emove,娑堟伅闃熷垪鍦ㄥ悇涓嚎紼嬩腑涓嶈繃鏄釜鎷瘋礉?鑰屽凡.)


Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1573835


]]>waitformultipleobjects鐐規(guī)淮http://www.shnenglu.com/kenlistian/archive/2009/03/17/76890.htmlkenlistiankenlistianTue, 17 Mar 2009 10:50:00 GMThttp://www.shnenglu.com/kenlistian/archive/2009/03/17/76890.htmlhttp://www.shnenglu.com/kenlistian/comments/76890.htmlhttp://www.shnenglu.com/kenlistian/archive/2009/03/17/76890.html#Feedback0http://www.shnenglu.com/kenlistian/comments/commentRss/76890.htmlhttp://www.shnenglu.com/kenlistian/services/trackbacks/76890.html鍘熷瀷錛?br>DWORD WaitForMultipleObjects(
 DWORD nCount,
 const HANDLE* lpHandles,
 BOOL bWaitAll,
 DWORD dwMilliseconds
);

 絎竴涓弬鏁拌〃紺轟俊鍙鋒暟鐩?
褰撹緗産WaitAll = True,琛ㄧず蹇呴』鍏朵俊鍙峰繀欏婚兘杈懼埌nCount鎵嶅彲浠ヤ笅涓姝?鑰屼笉鏄痩pHandle鏁扮粍鐨勪俊鍙烽兘鍒?
    鍚屾椂,濡傛灉lpHandle鐨勬煇涓俊鍙稴etEvent澶氭,鏄笉浼?xì)绡忚鍒皀Count涓?涔熷氨鏄,褰撳涓嚎紼嬪湪澶勭悊瀹屼互鍚?鍙互鍦ㄥ悇鑷殑綰跨▼浣撳繀欏昏皟鐢ㄤ笉鍚岀殑event鍙ユ焺鏉ュ彂淇″彿,瀹冩墠浼?xì)琚疮璁¤緫謭皀Count鍚庤В閿佽繘鍏ヤ笅涓姝?

]]>
鍏充簬link2001閿欒http://www.shnenglu.com/kenlistian/archive/2008/11/14/66872.htmlkenlistiankenlistianThu, 13 Nov 2008 17:26:00 GMThttp://www.shnenglu.com/kenlistian/archive/2008/11/14/66872.htmlhttp://www.shnenglu.com/kenlistian/comments/66872.htmlhttp://www.shnenglu.com/kenlistian/archive/2008/11/14/66872.html#Feedback0http://www.shnenglu.com/kenlistian/comments/commentRss/66872.htmlhttp://www.shnenglu.com/kenlistian/services/trackbacks/66872.html
緇忓父鍦ㄩ摼鎺ユ槸鎶ink2001閿欒錛屽叾涓竴鑸槸鍑芥暟浣撴病鏈夊畾涔夐敊璇備絾鏄帓闄や互涓婄畝鍗曠殑澶栵紝榪樻湁涓縐嶅涓嬫棤娉曡В鏋愮郴緇熸枃浠朵腑鐨勫嚱鏁板畾涔夈傚涓嬶細(xì)

LINK : warning LNK4098: 榛樿搴?#8220;LIBCMT”涓庡叾浠栧簱鐨勪嬌鐢ㄥ啿紿侊紱璇蜂嬌鐢?/NODEFAULTLIB:library
libcpmtd.lib(cerr.obj) : error LNK2001: 鏃犳硶瑙f瀽鐨勫閮ㄧ鍙?__CrtDbgReportW
libcpmtd.lib(stdthrow.obj) : error LNK2001: 鏃犳硶瑙f瀽鐨勫閮ㄧ鍙?__CrtDbgReportW
銆傘傘傘傘傘?br>libcpmtd.lib(_tolower.obj) : error LNK2019: 鏃犳硶瑙f瀽鐨勫閮ㄧ鍙?__calloc_dbg錛岃絎﹀彿鍦ㄥ嚱鏁?__Getctype 涓寮曠敤

鍍忚繖縐嶆儏鍐碉紝鍙互鎺ㄦ祴榪愮敤浜?jiǎn)閿欒鐨剺q愯搴撳寘銆?br>
鍦ㄤ竴紼嬪簭涓嬌鐢ㄤ笉鍚岀被鍨嬬殑榪愯鏃跺簱鎴栦嬌鐢ㄨ皟璇曞拰闈炶皟璇曠増鏈殑榪愯鏃跺簱錛屽垯灝嗘敹鍒版閾炬帴閿欒銆?br>
渚嬪錛岀紪璇戜竴涓枃浠朵互浣跨敤涓縐嶈繍琛屾椂搴擄紝鑰岀紪璇戝彟涓涓枃浠朵互浣跨敤鍙︿竴縐嶈繍琛屾椂搴擄紙渚嬪鍗曠嚎紼嬭繍琛屾椂搴撳澶氱嚎紼嬭繍琛屾椂搴擄級(jí)錛岃瘯鍥鵑摼鎺ュ畠浠紝鍒欏皢寰楀埌姝よ鍛娿傚簲灝嗘墍鏈夋簮鏂囦歡緙栬瘧涓轟嬌鐢ㄥ悓涓榪愯鏃跺簱銆?br>
鍏跺疄灝辨槸璋冩緙栬瘧鍣ㄩ夐」鍙傛暟錛?MD銆?MT   鍜?  /LD

鍦╲c8涓紝鍦?#8220;閰嶇疆灞炴?->C/C++-->浠g爜鐢熸垚-->榪愯鏃跺簱”涓皢“澶氱嚎紼嬶紙/MT錛?#8221;緇熶竴鏀逛負(fù)“澶氱嚎紼嬭皟璇曪紙/MTd錛?#8221;鍗沖彲銆?br>




]]>姹囨誨嚱鏁版寚閽堢悊瑙?/title><link>http://www.shnenglu.com/kenlistian/archive/2008/10/29/65485.html</link><dc:creator>kenlistian</dc:creator><author>kenlistian</author><pubDate>Wed, 29 Oct 2008 14:23:00 GMT</pubDate><guid>http://www.shnenglu.com/kenlistian/archive/2008/10/29/65485.html</guid><wfw:comment>http://www.shnenglu.com/kenlistian/comments/65485.html</wfw:comment><comments>http://www.shnenglu.com/kenlistian/archive/2008/10/29/65485.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.shnenglu.com/kenlistian/comments/commentRss/65485.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/kenlistian/services/trackbacks/65485.html</trackback:ping><description><![CDATA[<br>涓涓嚱鏁版寚閽堢殑鐞嗚В錛?br>銆鏈変竴孌電▼搴忓瓨鍌ㄥ湪璧峰鍦板潃涓?0鐨勪竴孌靛唴瀛樹笂錛屽鏋滄垜浠兂瑕佽皟鐢ㄨ繖孌電▼搴忥紝璇烽棶璇ュ浣曞幓鍋氾紵<br>銆絳旀鏄?(*(void (*)( ) )0)( )銆?br><br>銆棣栧厛錛屾渶鍩烘湰鐨勫嚱鏁板0鏄庯細(xì) void function (paramList);<br>銆鏈鍩烘湰鐨勫嚱鏁拌皟鐢細(xì) function(paramList);<br><br>銆銆閴翠簬闂涓殑鍑芥暟娌℃湁鍙傛暟錛屽嚱鏁拌皟鐢ㄥ彲綆鍖栦負(fù) function();<br> 銆 鏍規(guī)嵁闂鎻忚堪錛屽彲浠ョ煡閬?0鏄繖涓嚱鏁扮殑鍏ュ彛鍦板潃錛屼篃灝辨槸璇達(dá)紝0鏄竴涓嚱鏁扮殑鎸囬拡銆?br>   浣跨敤鍑芥暟鎸囬拡鐨勫嚱鏁板0鏄庡艦寮忔槸錛歷oid (*pFunction)()錛岀浉搴旂殑璋冪敤褰㈠紡鏄細(xì) (*pFunction)()錛?br>   鍒欓棶棰樹腑鐨勫嚱鏁拌皟鐢ㄥ彲浠ュ啓浣滐細(xì)(*0)( )銆?br><br>銆銆澶у鐭ラ亾錛屽嚱鏁版寚閽堝彉閲忎笉鑳芥槸涓涓父鏁幫紝鍥犳涓婂紡涓殑 0蹇呴』瑕佽杞寲涓哄嚱鏁版寚閽堛?br><br>銆銆鎴戜滑鍏堟潵鐮旂┒涓涓嬶紝瀵逛簬浣跨敤鍑芥暟鎸囬拡鐨勫嚱鏁幫細(xì)<br>        姣斿 void (*pFunction)( )錛屽嚱鏁版寚閽堝彉閲忕殑鍘熷瀷鏄粈涔堬紵<br>    榪欎釜闂寰堢畝鍗曪紝pFunction鍑芥暟鎸囬拡鍘熷瀷鏄? void (*)( ) )錛屽嵆鍘繪帀鍙橀噺鍚嶏紝<br>    娓呮櫚璧瘋錛屾暣涓姞涓婏紙錛夊彿銆?br><br>銆銆鎵浠ュ皢 0寮哄埗杞崲涓轟竴涓繑鍥炲間負(fù)void錛屽弬鏁頒負(fù)絀虹殑鍑芥暟鎸囬拡濡備笅錛? void (*)( ) )銆?br><br>銆銆 OK錛岀粨鍚?)鍜?)鐨勫垎鏋愶紝緇撴灉鍑烘潵浜?jiǎn)锛岄偅灏辨槸锛?xì)(*(void (*)( ) )0)( ) 銆?br><br>銆銆絳旀鍒嗘瀽錛氫粠澶村埌灝劇悊瑙g瓟妗?br><br>銆銆 (void (*)( )) 錛屾槸涓涓繑鍥炲間負(fù)void錛屽弬鏁頒負(fù)絀虹殑鍑芥暟鎸囬拡鍘熷瀷銆?br>銆銆 (void (*)( ))0錛屾妸0杞彉鎴愪竴涓繑鍥炲間負(fù)void錛屽弬鏁頒負(fù)絀虹殑鍑芥暟鎸囬拡錛屾寚閽堟寚鍚戠殑鍦板潃涓?.<br>銆銆 *(void (*)( ))0錛屽墠闈㈠姞涓?琛ㄧず鏁翠釜鏄竴涓繑鍥炲間負(fù)void鐨勫嚱鏁扮殑鍚嶅瓧<br>銆銆 (*(void (*)( ))0)( )錛岃繖褰撶劧灝辨槸涓涓嚱鏁頒簡(jiǎn)銆?br><br>銆銆鎴戜滑鍙互浣跨敤 typedef娓呮櫚澹版槑濡備笅錛?br><br>銆銆 typedef void (*pFun)();<br><br>榪欐牱瀹氫箟涔嬪悗錛宲Fun灝辨槸涓涓繑鍥炵被鍨嬩負(fù)void鏃犲弬鏁扮殑鍑芥暟鎸囬拡鍙橀噺浜?jiǎn)銆?br><br>銆銆榪欐牱鍑芥暟鍙樹負(fù) (*(pFun)0)();<br><br><br>----<br>鍦ㄨ皟鐢ㄥ姩鎬佸簱鏃訛紝涔?fàn)鎯敤typedef閲嶆柊瀹氫箟鍔ㄦ佸簱鍑芥暟涓殑鍑芥暟鍦板潃錛堝嚱鏁版寚閽堬級(jí)錛?br>濡傚湪鍔ㄦ佸簱錛坱est.dll錛変腑鏈夊涓嬪嚱鏁幫細(xì)<br>int DoCase(int, long);<br><br>鍒欙紝鍦ㄨ皟鐢ㄥ姩鎬佸簱鏄湁涓ょ鏂規(guī)硶錛?br>1. 鍏堝0鏄庝竴涓笌鍔ㄦ佸簱涓被鍨嬩竴鑷寸殑鎸囬拡鍑芥暟鍙橀噺錛?br> <div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #0000ff;">int</span><span style="color: #000000;"> (</span><span style="color: #000000;">*</span><span style="color: #000000;">DOCASE)(</span><span style="color: #0000ff;">int</span><span style="color: #000000;"> ,</span><span style="color: #0000ff;">long</span><span style="color: #000000;">);  </span><span style="color: #008000;">//</span><span style="color: #008000;">鐢ㄤ簬鎸囧悜鍔ㄦ佸簱涓殑DoCase鍑芥暟鍦板潃</span><span style="color: #008000;"><br></span><span style="color: #000000;">HINSTANCE gLibMyDLL </span><span style="color: #000000;">=</span><span style="color: #000000;"> NULL;<br>gLibMyDLL </span><span style="color: #000000;">=</span><span style="color: #000000;"> LoadLibrary(</span><span style="color: #000000;">"</span><span style="color: #000000;">test.dll</span><span style="color: #000000;">"</span><span style="color: #000000;">);<br></span><span style="color: #0000ff;">if</span><span style="color: #000000;">(gLibMyDLL </span><span style="color: #000000;">!=</span><span style="color: #000000;"> NULL)<br>{<br>  DOCASE </span><span style="color: #000000;">=</span><span style="color: #000000;"> (</span><span style="color: #0000ff;">int</span><span style="color: #000000;">(</span><span style="color: #000000;">*</span><span style="color: #000000;">)(</span><span style="color: #0000ff;">int</span><span style="color: #000000;">,</span><span style="color: #0000ff;">long</span><span style="color: #000000;">))GetProcAddress(gLibMyDLL, </span><span style="color: #000000;">"</span><span style="color: #000000;">DoCase</span><span style="color: #000000;">"</span><span style="color: #000000;">);<br>}<br></span><span style="color: #0000ff;">int</span><span style="color: #000000;"> s </span><span style="color: #000000;">=</span><span style="color: #000000;"> DOCASE(</span><span style="color: #000000;">1</span><span style="color: #000000;">,</span><span style="color: #000000;">1000</span><span style="color: #000000;">);<br><br></span><span style="color: #000000;">2</span><span style="color: #000000;">.鐢╰ypedef瀹氫箟涓涓寚閽堝嚱鏁幫細(xì)<br>typedef (</span><span style="color: #000000;">*</span><span style="color: #000000;">DOCASE)(</span><span style="color: #0000ff;">int</span><span style="color: #000000;"> ,</span><span style="color: #0000ff;">long</span><span style="color: #000000;">);<br><br>HINSTANCE gLibMyDLL </span><span style="color: #000000;">=</span><span style="color: #000000;"> NULL;<br>DOCASE _docase;<br>gLibMyDLL </span><span style="color: #000000;">=</span><span style="color: #000000;"> LoadLibrary(</span><span style="color: #000000;">"</span><span style="color: #000000;">test.dll</span><span style="color: #000000;">"</span><span style="color: #000000;">);<br></span><span style="color: #0000ff;">if</span><span style="color: #000000;">(gLibMyDLL </span><span style="color: #000000;">!=</span><span style="color: #000000;"> NULL)<br>{<br>  _docase </span><span style="color: #000000;">=</span><span style="color: #000000;"> (DOCASE)GetProcAddress(gLibMyDll, </span><span style="color: #000000;">"</span><span style="color: #000000;">DoCase</span><span style="color: #000000;">"</span><span style="color: #000000;">);<br>}<br><br></span><span style="color: #0000ff;">int</span><span style="color: #000000;"> s</span><span style="color: #000000;">=</span><span style="color: #000000;">_docase(</span><span style="color: #000000;">1</span><span style="color: #000000;">,</span><span style="color: #000000;">1000</span><span style="color: #000000;">);</span></div> <br><br>----------------<br>鍦–++綾諱腑浣跨敤鍑芥暟鎸囬拡銆?br> <div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #008000;">//</span><span style="color: #008000;">typedef 榪斿洖綾誨瀷(綾誨悕::*鏂扮被鍨?(鍙傛暟琛?</span><span style="color: #008000;"><br></span><span style="color: #0000ff;">class</span><span style="color: #000000;"> CA<br>{<br></span><span style="color: #0000ff;">public</span><span style="color: #000000;">:<br>  </span><span style="color: #0000ff;">char</span><span style="color: #000000;"> lcFun(</span><span style="color: #0000ff;">int</span><span style="color: #000000;"> a){ </span><span style="color: #0000ff;">return</span><span style="color: #000000;">; }<br>};<br><br>CA ca;<br>typedef </span><span style="color: #0000ff;">char</span><span style="color: #000000;"> (CA::</span><span style="color: #000000;">*</span><span style="color: #000000;">PTRFUN)(</span><span style="color: #0000ff;">int</span><span style="color: #000000;">);<br>PTRFUN pFun;<br></span><span style="color: #0000ff;">void</span><span style="color: #000000;"> main()<br>{<br>  pFun </span><span style="color: #000000;">=</span><span style="color: #000000;"> CA::lcFun;<br>  ca.(</span><span style="color: #000000;">*</span><span style="color: #000000;">pFun)(</span><span style="color: #000000;">2</span><span style="color: #000000;">);<br>}</span></div> <br><br>鎸囬拡鐨勫畾涔変笌浣跨敤閮藉姞涓婁簡(jiǎn)“綾婚檺鍒?#8221;鎴?#8220;瀵硅薄”錛岀敤鏉ユ寚鏄庢寚閽堟寚鍚戠殑鍑芥暟鏄摢涓被鐨?<br>榪欓噷鐨勭被瀵硅薄涔熷彲浠ユ槸浣跨敤new寰楀埌鐨勩?br>濡傦細(xì)<br>CA *pca = new CA;<br>pca->(*pFun)(2);<br>delete pca;<br>鑰屼笖榪欎釜綾誨璞℃寚閽堝彲浠ユ槸綾誨唴閮ㄦ垚鍛樺彉閲忥紝浣犵敋鑷沖彲浠ヤ嬌鐢╰his鎸囬拡銆?br>濡傦細(xì)綾籆A鏈夋垚鍛樺彉閲廝TRFUN m_pfun;<br>void CA::lcFun2()<br>{<br>   (this->*m_pFun)(2);<br>}<br>涓鍙ヨ瘽錛屼嬌鐢ㄧ被鎴愬憳鍑芥暟鎸囬拡蹇呴』鏈?#8220;->*”鎴?#8220;.*”鐨勮皟鐢ㄣ?br><br><br>--------------------<br> <div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #000000;"><br></span><span style="color: #0000ff;">void</span><span style="color: #000000;"> test(</span><span style="color: #0000ff;">void</span><span style="color: #000000;">*</span><span style="color: #000000;"> );<br></span><span style="color: #0000ff;">void</span><span style="color: #000000;"> tt()<br>{<br>   printf(</span><span style="color: #000000;">"</span><span style="color: #000000;">kao,娌$帺榪囪繖縐峔n</span><span style="color: #000000;">"</span><span style="color: #000000;">);<br>}<br><br></span><span style="color: #0000ff;">int</span><span style="color: #000000;"> main(</span><span style="color: #0000ff;">int</span><span style="color: #000000;"> argc, </span><span style="color: #0000ff;">char</span><span style="color: #000000;">*</span><span style="color: #000000;"> argv[])<br>{<br>    typedef </span><span style="color: #0000ff;">void</span><span style="color: #000000;">(</span><span style="color: #000000;">*</span><span style="color: #000000;">Fun)();<br>    Fun mytest;<br>    mytest </span><span style="color: #000000;">=</span><span style="color: #000000;"> tt;<br>    test((</span><span style="color: #0000ff;">void</span><span style="color: #000000;">*</span><span style="color: #000000;">)mytest);<br>    </span><span style="color: #0000ff;">return</span><span style="color: #000000;"> </span><span style="color: #000000;">0</span><span style="color: #000000;">;<br>}<br><br></span><span style="color: #0000ff;">void</span><span style="color: #000000;"> test(</span><span style="color: #0000ff;">void</span><span style="color: #000000;"> </span><span style="color: #000000;">*</span><span style="color: #000000;"> p)<br>{<br>    (</span><span style="color: #000000;">*</span><span style="color: #000000;">(</span><span style="color: #0000ff;">void</span><span style="color: #000000;">(</span><span style="color: #000000;">*</span><span style="color: #000000;">)())p)();<br>}</span></div> <br><br><img src ="http://www.shnenglu.com/kenlistian/aggbug/65485.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/kenlistian/" target="_blank">kenlistian</a> 2008-10-29 22:23 <a href="http://www.shnenglu.com/kenlistian/archive/2008/10/29/65485.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>offsetof 鐨勭悊瑙?/title><link>http://www.shnenglu.com/kenlistian/archive/2008/10/27/65218.html</link><dc:creator>kenlistian</dc:creator><author>kenlistian</author><pubDate>Mon, 27 Oct 2008 09:16:00 GMT</pubDate><guid>http://www.shnenglu.com/kenlistian/archive/2008/10/27/65218.html</guid><wfw:comment>http://www.shnenglu.com/kenlistian/comments/65218.html</wfw:comment><comments>http://www.shnenglu.com/kenlistian/archive/2008/10/27/65218.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/kenlistian/comments/commentRss/65218.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/kenlistian/services/trackbacks/65218.html</trackback:ping><description><![CDATA[<br> <br> 鍏充簬鍋忕Щ閲忕殑瀹忓畾涔?br> <br> #define offsetof(s,m)   (size_t)&(((s *)0)->m)<br> <br> s鏄竴涓粨鏋勫悕錛屽畠鏈変竴涓悕涓簃鐨勬垚鍛橈紙s鍜宮 鏄畯offsetof鐨勫艦鍙傦紝<br>瀹冨疄闄呮槸榪斿洖緇撴瀯s鐨勬垚鍛榤鐨勫亸縐誨湴鍧<br> <br> <br> (s *)0 鏄獥緙栬瘧鍣ㄨ鏈変竴涓寚鍚戠被錛堟垨緇撴瀯錛塻鐨勬寚閽堬紝鍏跺湴鍧鍊?  <br> <br> &((s *)0)->m   鏄鍙栧緱綾籹涓垚鍛樺彉閲弇鐨勫湴鍧  <br>          鍥犲熀鍧涓?錛岃繖鏃秏鐨勫湴鍧褰撶劧灝辨槸m鍦╯涓殑鍋忕Щ<br><br>鏈鍚庤漿鎹ize_t 鍨嬶紝鍗硊nsigned int銆?br> <br> 鏈変緥瀛愬錛?nbsp; <br>   struct   AAA  <br>   {  <br>     int   i;  <br>     int   j;  <br>   };  <br>    <br>   struct   AAA   *pAAA;  <br>   pAAA = new   AAA;  <br>   榪欐椂錛宲AAA瀹為檯涓婃槸涓涓狿ointer, 鎸囧悜鏌愪竴紜畾鐨勫唴瀛樺湴鍧錛?br>      濡?x1234;  <br>   鑰宲AAA->i 鏁翠綋鏄竴涓猧nt鍨嬪彉閲忥紝鍏跺湴鍧鏄?amp;(pAAA->i),<br>   '&'涓哄彇鍧榪愮畻絎︼紱  <br>   閭d箞&(pAAA->i)涓瀹氱瓑浜?x1234,鍥?i 鏄粨鏋勪綋AAA鐨勭涓涓厓绱犮?nbsp; <br>   鑰?amp;(pAAA->j)涓瀹氭槸0x1234 + 0x4 = 0x1238; 鍥犱負(fù)sizeof(int) = 4;  <br>    <br>   榪欎釜鍋氭硶鐨勫閥濡欎箣澶勫氨鏄細(xì)瀹冩妸“0”浣滀負(fù)涓婁緥涓殑pAAA,閭d箞&(pAAA->j)灝辨槸j鐨?nbsp; <br>   offset鍟︼紝  <br> <br>   瑙f瀽緇撴灉鏄細(xì)  <br>   (s*)0,灝?0 寮哄埗杞崲涓篜ointer to "s"    <br>   鍙互璁?pS = (s*)0錛宲S鏄寚鍚憇鐨勬寚閽堬紝瀹冪殑鍊兼槸0;  <br>   閭d箞pS->m灝辨槸m榪欎釜鍏冪礌浜?jiǎn)锛岃?amp;(pS->m)灝辨槸m鐨勫湴鍧錛?br>   灝辨槸offset鍟?nbsp;    <br> <br><br> <br> <br> <img src ="http://www.shnenglu.com/kenlistian/aggbug/65218.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/kenlistian/" target="_blank">kenlistian</a> 2008-10-27 17:16 <a href="http://www.shnenglu.com/kenlistian/archive/2008/10/27/65218.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>澶囨敞ado鍔犲ご鏂囦歡http://www.shnenglu.com/kenlistian/archive/2008/07/17/56385.htmlkenlistiankenlistianThu, 17 Jul 2008 02:21:00 GMThttp://www.shnenglu.com/kenlistian/archive/2008/07/17/56385.htmlhttp://www.shnenglu.com/kenlistian/comments/56385.htmlhttp://www.shnenglu.com/kenlistian/archive/2008/07/17/56385.html#Feedback0http://www.shnenglu.com/kenlistian/comments/commentRss/56385.htmlhttp://www.shnenglu.com/kenlistian/services/trackbacks/56385.html
#pragma warning(disable:4146)
#import "C:\Program Files\Common Files\System\ADO\msado15.dll" named_guids rename("EOF","adoEOF"), rename("BOF","adoBOF")
#pragma warning(default:4146)

using namespace ADODB;

"Provider=SQLOLEDB,Data Source=serverName;Initial Catalog=databaseName;User ID=userName;Password=userPassword;"

#import "c:\program files\common files\system\ado\msado15.dll" no_namespaces rename("EOF","adoEOF")


http://www.pconline.com.cn/pcedu/empolder/gj/vc/0507/653859.html


]]>
bind1nd 鍜宐ind2nd鐨勬剰鎬?/title><link>http://www.shnenglu.com/kenlistian/archive/2008/07/14/56114.html</link><dc:creator>kenlistian</dc:creator><author>kenlistian</author><pubDate>Mon, 14 Jul 2008 08:56:00 GMT</pubDate><guid>http://www.shnenglu.com/kenlistian/archive/2008/07/14/56114.html</guid><wfw:comment>http://www.shnenglu.com/kenlistian/comments/56114.html</wfw:comment><comments>http://www.shnenglu.com/kenlistian/archive/2008/07/14/56114.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/kenlistian/comments/commentRss/56114.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/kenlistian/services/trackbacks/56114.html</trackback:ping><description><![CDATA[<br> 閲囩敤bind1st鍜宐ind2nd鐨勬剰鎬濓紝灝辨槸鎶婂弬鏁扮粦瀹氬湪絎竴浣嶈繕鏄浜屼綅銆?br>緇ф壙浜巄inary_function 綾?<br>鎻忚堪濡備笅<br>Class binder1st binds the value to the first argument of the binary function, and binder2nd does the same thing<br>for the second argument of the function. <br><br>濡備笅錛氫緥瀛?br><br>struct compare_str :binary_function<ST_DataResult*, char*, bool><br>{<br>public:<br>    bool operator()(ST_DataResult* pDataRet, char* szTypeCode) const<br>    {<br>        return strcmp(pDataRet->sType , szTypeCode) == 0 ? true : false;<br>        <br>    }<br>};<br><br><br>銆傘傘?br><br>char szTypeCode[4] = {'\0'};<br>strcpy(szTypeCode, sTypeCode);<br>pIt = find_if(m_d_ret_data.begin(), m_d_ret_data.end(),<br>        bind2nd(compare_str(), szTypeCode));<br><br>鍏朵腑鎶妔zTypeCode鍙橀噺浼犲叆鍒癱ompare_str鎵瀹氫箟鐨勭浜屼釜鍙傛暟浣嶇疆浼犲叆銆?br>濡傛灉鍐欐垚bind1nd, 鍒欐槸鎶妔zTypeCode浣滀負(fù)絎竴涓弬鏁頒紶鍏ワ紝閭d箞浼?xì)鎶ラ敊銆?br>鍥犱負(fù)綾誨瀷涓嶅銆?br><br><br><img src ="http://www.shnenglu.com/kenlistian/aggbug/56114.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/kenlistian/" target="_blank">kenlistian</a> 2008-07-14 16:56 <a href="http://www.shnenglu.com/kenlistian/archive/2008/07/14/56114.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>wxWidgets鐨勯厤緗?/title><link>http://www.shnenglu.com/kenlistian/archive/2008/06/03/52059.html</link><dc:creator>kenlistian</dc:creator><author>kenlistian</author><pubDate>Tue, 03 Jun 2008 10:13:00 GMT</pubDate><guid>http://www.shnenglu.com/kenlistian/archive/2008/06/03/52059.html</guid><wfw:comment>http://www.shnenglu.com/kenlistian/comments/52059.html</wfw:comment><comments>http://www.shnenglu.com/kenlistian/archive/2008/06/03/52059.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.shnenglu.com/kenlistian/comments/commentRss/52059.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/kenlistian/services/trackbacks/52059.html</trackback:ping><description><![CDATA[  <br>鐩墠鏄痺xWidgets-2.8.7錛?br>涓嬭澆<a >http://sourceforge.net/project/showfiles.php?group_id=9863</a><br><br>鍏朵腑鍦╳indows涓嬶紝鍒欓夋嫨鍏朵腑msw鐨勫帇緙╀笅杞姐?br>鎸夌収install鏂囨。瑕佹眰錛岀紪璇憌xWdigets涓殑builder鐩綍涓殑wx銆俠sp銆?br>鐢變簬璇xwdgets鏀寔澶氱緙栬瘧鍣紝閫夋嫨鐩稿叧鐨勫伐紼嬫枃浠跺姞杞姐?br><br>浼犵粺閲囩敤vc6.<br><br>鐢熸垚鐨勭紪璇戞枃浠跺湪lib鐩綍涓傚鏋滈噰鐢╲c鍒欑洰褰曚負(fù)vc_lib.<br><br>鐢熸垚鐨刲ib鏂囦歡鏈?release or debug)錛?br> <pre> wxbase28.lib wxbase28d.lib wxbase28_net.lib wxbase28d_net.lib wxbase28_xml.lib wxbase28d_xml.lib wxmsw28_core.lib wxmsw28d_core.lib wxmsw28_html.lib wxmsw28d_html.lib wxmsw28_adv.lib wxmsw28d_adv.lib</pre> <pre>鍦╲c涓緗甽ib錛屽彲浠ユ妸璇ョ洰褰曞姞鍏ワ紝涔熷彲浠ョ洿鎺ユ妸鐢熸垚鐨勬枃浠朵涪鍦╲c鐨刲ib鐩綍銆?/pre> <pre>鍏充簬unicode妯″紡緙栬緫濡備笂銆?/pre> <pre>鍦╥nclude璁劇疆涓紝闇瑕佸姞鍏xWidgets鐩綍涓殑include鐩綍銆?/pre> <pre>榪愯demo紼嬪簭嫻嬭瘯.<br><br>娉ㄦ剰錛氬湪include涔熼渶瑕佹妸setup.h澶存枃浠跺姞鍏ャ傝澶翠篃鏍規(guī)嵁鐢熸垚鐨刲ib鐩綍涓皟鐢ㄣ?br> 涓嶈繃鏈濂藉姞鍦ㄩ澶勭悊鐨刬nclude directory鐩綍緙栬緫妗嗕腑銆?br></pre> <pre> <img src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/moz-screenshot.jpg" alt=""></pre> <pre>  <br><img src="http://www.shnenglu.com/images/cppblog_com/kenlistian/221.JPG" border="0"> </pre> <pre> </pre> <pre> </pre><img src ="http://www.shnenglu.com/kenlistian/aggbug/52059.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/kenlistian/" target="_blank">kenlistian</a> 2008-06-03 18:13 <a href="http://www.shnenglu.com/kenlistian/archive/2008/06/03/52059.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>EnBase64 and DeBase64 codehttp://www.shnenglu.com/kenlistian/archive/2008/04/23/47892.htmlkenlistiankenlistianWed, 23 Apr 2008 04:06:00 GMThttp://www.shnenglu.com/kenlistian/archive/2008/04/23/47892.htmlhttp://www.shnenglu.com/kenlistian/comments/47892.htmlhttp://www.shnenglu.com/kenlistian/archive/2008/04/23/47892.html#Feedback0http://www.shnenglu.com/kenlistian/comments/commentRss/47892.htmlhttp://www.shnenglu.com/kenlistian/services/trackbacks/47892.html闃呰鍏ㄦ枃

]]>
涓涓畝鍗曠殑闃熷垪http://www.shnenglu.com/kenlistian/archive/2008/01/15/41183.htmlkenlistiankenlistianTue, 15 Jan 2008 07:13:00 GMThttp://www.shnenglu.com/kenlistian/archive/2008/01/15/41183.htmlhttp://www.shnenglu.com/kenlistian/comments/41183.htmlhttp://www.shnenglu.com/kenlistian/archive/2008/01/15/41183.html#Feedback0http://www.shnenglu.com/kenlistian/comments/commentRss/41183.htmlhttp://www.shnenglu.com/kenlistian/services/trackbacks/41183.html  1 #include <list>
  2 
  3 using namespace std;
  4 
  5 class CYException
  6 {
  7 public:
  8     CString sMsg;
  9     int nError;
 10     CYException(int nErr,char* sErrMsg){
 11         nError = nErr;
 12         sMsg  = sErrMsg;
 13     }
 14     virtual ~CYException(){}
 15 
 16 };
 17 
 18 template   <class  T> 
 19 class   CYQueueSyn 
 20 
 21   public
 22       std::list<T>   queue; 
 23       int   m_outtime; 
 24       HANDLE   m_readSem; 
 25       HANDLE   m_writeSem; 
 26       HANDLE   m_synObject; 
 27   public
 28       CYQueueSyn(int length,int  outtime = INFINITE); 
 29       virtual   ~CYQueueSyn(void); 
 30   public
 31       void   inq(T type); 
 32       T   outq(); 
 33 
 34       void   free();       
 35 }; 
 36 ////////////////////////////////////////////////////////
 37 template<class   T> 
 38 void   CYQueueSyn<T>::free() 
 39 
 40     int   size = (int)queue.size(); 
 41     for(int i = 0; i<size; i++
 42         delete queue.back(); 
 43     queue.clear(); 
 44 
 45 template<class T> 
 46 CYQueueSyn<T>::CYQueueSyn(int   length,int   outtime) 
 47 
 48     m_readSem = CreateSemaphore(NULL,0,length,NULL); 
 49     m_writeSem = CreateSemaphore(NULL,length,length,NULL); 
 50     m_synObject = ::CreateMutex(NULL,false,NULL); 
 51 
 52     m_outtime = outtime;
 53 
 54 template<class T> 
 55 CYQueueSyn<T>::~CYQueueSyn() 
 56 
 57     CloseHandle(m_readSem); 
 58     CloseHandle(m_writeSem); 
 59     CloseHandle(m_synObject); 
 60 
 61 
 62 template<class T> 
 63 void   CYQueueSyn<T>::inq(T type)   throw(CYException) 
 64 
 65     int  rVal = WaitForSingleObject(m_writeSem,m_outtime); 
 66     if(rVal == WAIT_OBJECT_0) 
 67     { 
 68         if(WaitForSingleObject(m_synObject,INFINITE) == WAIT_OBJECT_0) 
 69         { 
 70             queue.push_back(type); 
 71             ReleaseMutex(m_synObject); 
 72         } 
 73     } 
 74     else if(rVal == WAIT_TIMEOUT) 
 75     { 
 76         throw CYException(1,"TIMEOUT"); 
 77     } 
 78     else if(rVal == WAIT_ABANDONED) 
 79     { 
 80         throw CYException(-1"ERROR"); 
 81     } 
 82     ReleaseSemaphore(m_readSem,1,NULL); 
 83 
 84 template<class T> 
 85 T  CYQueueSyn<T>::outq()   throw(CYException) 
 86 
 87     T  value; 
 88     int rVal = WaitForSingleObject(m_readSem,m_outtime); 
 89     if(rVal == WAIT_OBJECT_0) 
 90     { 
 91         if(WaitForSingleObject(m_synObject,INFINITE) == WAIT_OBJECT_0) 
 92         { 
 93             value = queue.front(); 
 94             queue.pop_front(); 
 95             ReleaseMutex(m_synObject); 
 96         } 
 97     } 
 98     else if(rVal == WAIT_TIMEOUT) 
 99     { 
100         throw CYException(1,"TIMEOUT"); 
101     } 
102     else if(rVal == WAIT_ABANDONED) 
103     { 
104         throw CYException(-1,"ERROR"); 
105     } 
106 
107     ReleaseSemaphore(m_writeSem,1,NULL); 
108     return   value; 
109 
110 
111 #endif 

濡備笂錛屾祴璇曚唬鐮佷笅杞斤細(xì)http://www.pudn.com/downloads97/sourcecode/windows/other/109201257cqueue.rar


kenlistian 2008-01-15 15:13 鍙戣〃璇勮
]]>
windows 淇″彿閲忕殑榪愮敤絎旇http://www.shnenglu.com/kenlistian/archive/2007/12/04/37786.htmlkenlistiankenlistianTue, 04 Dec 2007 06:18:00 GMThttp://www.shnenglu.com/kenlistian/archive/2007/12/04/37786.htmlhttp://www.shnenglu.com/kenlistian/comments/37786.htmlhttp://www.shnenglu.com/kenlistian/archive/2007/12/04/37786.html#Feedback0http://www.shnenglu.com/kenlistian/comments/commentRss/37786.htmlhttp://www.shnenglu.com/kenlistian/services/trackbacks/37786.html

kenlistian 2007-12-04 14:18 鍙戣〃璇勮
]]>
九九热久久免费视频| 久久久www免费人成精品| 久久九九兔免费精品6| 国产毛片久久久久久国产毛片| 国产V亚洲V天堂无码久久久| 亚洲精品乱码久久久久久| 一本色道久久综合狠狠躁| 久久精品国产久精国产果冻传媒| 亚洲国产成人精品91久久久 | 久久国产精品99精品国产987| 亚洲AV无码久久精品成人| 亚洲精品乱码久久久久久 | 777午夜精品久久av蜜臀| 亚洲国产香蕉人人爽成AV片久久| 女同久久| 99蜜桃臀久久久欧美精品网站 | 国产亚洲欧美精品久久久| 国产精品久久亚洲不卡动漫| 久久精品国产免费一区| 久久国产精品二国产精品| 亚洲精品无码久久久久AV麻豆| 久久久黄色大片| 国产精品99久久精品| 精品久久久无码中文字幕天天| 色婷婷综合久久久久中文字幕| 老男人久久青草av高清| 精品综合久久久久久888蜜芽| 91久久九九无码成人网站| 一个色综合久久| 久久国产精品77777| 欧美无乱码久久久免费午夜一区二区三区中文字幕 | 日韩AV无码久久一区二区 | 精品综合久久久久久888蜜芽| 色综合久久中文色婷婷| 婷婷久久综合| 91久久香蕉国产熟女线看| 久久国产免费直播| 99久久国产综合精品成人影院| 精品国产日韩久久亚洲 | 精品无码人妻久久久久久| 亚洲国产精品18久久久久久|