锘??xml version="1.0" encoding="utf-8" standalone="yes"?>国产精品老女人精品视频,亚洲欧美日韩精品久久奇米色影视 ,国产免费一区二区三区香蕉精http://m.shnenglu.com/wrhwww/zh-cnSun, 16 Nov 2025 06:14:40 GMTSun, 16 Nov 2025 06:14:40 GMT60鍑犱釜闈炲父濂界殑Opencv緗戠珯http://m.shnenglu.com/wrhwww/archive/2018/07/10/215765.htmlwrhwrhMon, 09 Jul 2018 21:49:00 GMThttp://m.shnenglu.com/wrhwww/archive/2018/07/10/215765.htmlhttp://m.shnenglu.com/wrhwww/comments/215765.htmlhttp://m.shnenglu.com/wrhwww/archive/2018/07/10/215765.html#Feedback0http://m.shnenglu.com/wrhwww/comments/commentRss/215765.htmlhttp://m.shnenglu.com/wrhwww/services/trackbacks/215765.html鍑犱釜闈炲父濂界殑Opencv緗戠珯

wrh 2018-07-10 05:49 鍙戣〃璇勮
]]>
CComboBox 鎺т歡,鍝嶅簲ON_CBN_SELCHANGE娑堟伅鏃朵負浣曢紶鏍囧厜鏍囦笉鏄劇ず?http://m.shnenglu.com/wrhwww/archive/2014/09/18/208353.htmlwrhwrhThu, 18 Sep 2014 11:12:00 GMThttp://m.shnenglu.com/wrhwww/archive/2014/09/18/208353.htmlhttp://m.shnenglu.com/wrhwww/comments/208353.htmlhttp://m.shnenglu.com/wrhwww/archive/2014/09/18/208353.html#Feedback0http://m.shnenglu.com/wrhwww/comments/commentRss/208353.htmlhttp://m.shnenglu.com/wrhwww/services/trackbacks/208353.html
ShowDropDown();涔嬪悗SetCursor(LoadCursor(NULL, IDC_ARROW));鍗沖彲

wrh 2014-09-18 19:12 鍙戣〃璇勮
]]>
鍑犱釜闈炲父濂界殑Opencv緗戠珯http://m.shnenglu.com/wrhwww/archive/2013/03/17/198516.htmlwrhwrhSun, 17 Mar 2013 12:53:00 GMThttp://m.shnenglu.com/wrhwww/archive/2013/03/17/198516.htmlhttp://m.shnenglu.com/wrhwww/comments/198516.htmlhttp://m.shnenglu.com/wrhwww/archive/2013/03/17/198516.html#Feedback0http://m.shnenglu.com/wrhwww/comments/commentRss/198516.htmlhttp://m.shnenglu.com/wrhwww/services/trackbacks/198516.htmlhttp://www.cvchina.info/codes/

http://www.tuicool.com/topics/11020052?st=0&lang=1&pn=1



OpenCV_鍩轟簬灞閮ㄨ嚜閫傚簲闃堝肩殑鍥懼儚浜屽煎寲


http://www.tuicool.com/articles/Mvqeui


涓涓緢濂界殑蹇熷皬娉㈠彉鎹紙FWT錛夋簮鐮?C++鐨?http://www.codeproject.com/KB/graphics/2D_FWT_lib.aspx

寰堝ソ鐢ㄥ摝






wrh 2013-03-17 20:53 鍙戣〃璇勮
]]>
MFC 涓嬫媺妗嗕笅鎷夋潯鐩銆侀珮鏍規嵁鍐呭鑷姩璁劇疆 http://m.shnenglu.com/wrhwww/archive/2013/02/27/198126.htmlwrhwrhWed, 27 Feb 2013 14:21:00 GMThttp://m.shnenglu.com/wrhwww/archive/2013/02/27/198126.htmlhttp://m.shnenglu.com/wrhwww/comments/198126.htmlhttp://m.shnenglu.com/wrhwww/archive/2013/02/27/198126.html#Feedback0http://m.shnenglu.com/wrhwww/comments/commentRss/198126.htmlhttp://m.shnenglu.com/wrhwww/services/trackbacks/198126.html鏈夋椂鍊欎笅鎷夋錛圡FC鏍囧噯鍙粍鍚堟錛孋ComboBox錛変腑鏉$洰鏂囨湰寰堝錛岃秴榪囦簡涓嬫媺妗嗙殑瀹藉害錛屽鏋滀笉鍔犺緗殑璇濓紝瓚呰繃鐨勯儴鍒嗘枃鏈皢鏃犳硶鏄劇ず錛屾煡鎵綧SDN錛屽彂鐜拌В鍐蟲柟娉曪紝浠g爜濡備笅錛?/p>

浠g爜

// The pointer to my combo box.
    extern CComboBox* pmyComboBox;

    // Set the height of every item so the item
    // is completely visible.
    CString str;
    CSize   sz;
    int     dx=0;
    CDC*    pDC = pmyComboBox->GetDC();
    for (int i=0;i < pmyComboBox->GetCount();i++)
    {
        pmyComboBox->GetLBText( i, str );
        sz = pDC->GetTextExtent(str);

        // Only want to set the item height if the current height
        // is not big enough.
        if (pmyComboBox->GetItemHeight(i) < sz.cy)
            pmyComboBox->SetItemHeight( i, sz.cy );

        // Only want to set the item width if the current width
        // is not big enough.
        if (pmyComboBox->GetDroppedWidth() < sz.cx)
        {
            pmyComboBox->SetDroppedWidth(sz.cx + 20);
        }
    }
    pmyComboBox->ReleaseDC(pDC);

鏁堟灉鍥撅細





wrh 2013-02-27 22:21 鍙戣〃璇勮
]]>
鍦╲s2008涓畨瑁卭pencv2.0http://m.shnenglu.com/wrhwww/archive/2012/07/15/183545.htmlwrhwrhSun, 15 Jul 2012 05:59:00 GMThttp://m.shnenglu.com/wrhwww/archive/2012/07/15/183545.htmlhttp://m.shnenglu.com/wrhwww/comments/183545.htmlhttp://m.shnenglu.com/wrhwww/archive/2012/07/15/183545.html#Feedback0http://m.shnenglu.com/wrhwww/comments/commentRss/183545.htmlhttp://m.shnenglu.com/wrhwww/services/trackbacks/183545.html涓銆佸噯澶囧伐浣?/span>
        榪欓噷鎴戠敤鍒扮殑騫沖彴鏄?Microsoft Visual Studio 2008 鍜孫penCV2.0
        OpenCV2.0涓嬭澆鍦板潃 http://www.opencv.org.cn/index.php/Download銆傚畨瑁匫penCV2.0錛屽亣瀹氬畨瑁呯洰褰曚負錛欴:Program FilesOpenCV2.0
        CMake涓嬭澆鍦板潃 http://www.cmake.org/cmake/resources/software.html (閫夋嫨 Win32 Installer 瀹夎鐗堟湰錛夈?br />
浜屻佺紪璇慜penCV
1. 鐢–Make瀵煎嚭VC++ 欏圭洰鏂囦歡
■ 榪愯cmake-gui錛岃緗礬寰勪負OpenCV瀹夎璺緞錛堜緥濡傦細D:\Program Files\OpenCV2.0錛夛紝騫跺垱寤哄瓙鐩綍 D:\Program Files\OpenCV2.0\vc2008錛岀敤浜庡瓨鏀劇紪璇戠粨鏋溿?br />■ 鐒跺悗鐐?configure錛屽湪寮瑰嚭鐨勫璇濇鍐呴夋嫨 Visual Studio 9 2008銆?br />■ Microsoft Visual Studio 2008 姝e紡鐗堟敮鎸丱penMP錛屾墍浠NABLE_OPENMP榪欎釜閫夐」瑕佸嬀涓婏紱濡傛灉鏄疎xpress鐗堟湰錛屽垯涓嶆敮鎸丱penMP錛屾墍浠ラ渶瑕佸彇娑圗NABLE_OPENMP閫夐」銆?br />■ 鏈鍚庡啀鐐瑰嚮Generate銆?br />


2. 緙栬瘧 OpenCV Debug 鍜?Release鐗堟湰搴?/span>
瀹屾垚涓婁竴姝ラ鍚庯紝灝嗗湪D:\Program Files\OpenCV2.0\vc2008鐩綍涓嬬敓鎴怬penCV.sln鐨刅C Solution File錛岃鐢╒C++ 2008 Express鎵撳紑OpenCV.sln錛岀劧鍚庢墽琛屽涓嬫搷浣滐細
■ 鍦―ebug涓嬶紝閫夋嫨Solution Explorer閲岀殑 Solution OpenCV錛岀偣鍙抽敭錛岃繍琛?Rebuild Solution"錛涘緙栬瘧鏃犻敊璇紝鍐嶉夋嫨INSTALL欏圭洰錛岃繍琛?Build"銆?br />■ 鍦≧elease涓嬶紝閫夋嫨Solution Explorer閲岀殑 Solution OpenCV錛岀偣鍙抽敭錛岃繍琛?Rebuild Solution"錛涘緙栬瘧鏃犻敊璇紝鍐嶉夋嫨INSTALL欏圭洰錛岃繍琛?Build"銆?
姝ゆ椂錛孫penCV鐨?d.dll鏂囦歡錛坒or debug錛夊拰*.dll鏂囦歡錛坒or release錛夊皢鍑虹幇鍦―:\Program Files\OpenCV2.0\vc2008\bin鐩綍涓紱OpenCV鐨?d.lib鏂囦歡錛坒or debug錛?鍜?.lib鏂囦歡錛坒or release錛夊皢鍑虹幇鍦―:\Program Files\OpenCV2.0\vc2008\lib鐩綍錛涘ご鏂囦歡*.h鍑虹幇鍦―:\Program Files\OpenCV2.0\vc2008\include\opencv涓?br />鑷蟲Microsoft Visual Studio 2008 璋冪敤鐨凮penCV鍔ㄦ佸簱鐢熸垚瀹屾瘯銆?/p>






涓夈侀厤緗甒indows鐜鍙橀噺Path
灝咲:\Program Files\OpenCV2.0\vc2008\bin鍔犲叆Windows緋葷粺鐜鍙橀噺Path涓?br />鍔犲叆鍚庯紝蹇呴』娉ㄩ攢褰撳墠鐢ㄦ埛鎴栬呴噸鏂板惎鍔ㄦ墠鑳界敓鏁堛?br />

鍥涖佷負Microsoft Visual Studio 2008 閰嶇疆OpenCV鐜
鎵撳紑Microsoft Visual Studio 2008錛岃彍鍗?Tools -> Options -> Projects and Solutions -> VC++ Directories銆?br />■ Show directories for閫夋嫨include files錛屽姞鍏ョ洰褰?D:\Program Files\OpenCV2.0\vc2008\include\opencv
■ Show directories for閫夋嫨library files錛屽姞鍏ョ洰褰?D:\Program Files\OpenCV2.0\vc2008\lib

浜斻佷嬌鐢∣penCV 2.0 緙栫▼
浠ュ悗姣忓垱寤轟竴涓狾penCV 鐨刉in32 鎺у埗鍙扮▼搴忥紝閮介渶瑕佹坊鍔犱緷璧栫殑搴?br />■ 閫夋嫨Solution Explorer閲岀殑 “欏圭洰鍚嶇О”錛岀偣鍑婚紶鏍囧彸閿紝閫夋嫨Properties錛?br />■ 涓洪」鐩殑Debug閰嶇疆澧炲姞渚濊禆鐨勫簱錛歝xcore200d.lib cv200d.lib highgui200d.lib錛?br />■ 涓洪」鐩殑Release閰嶇疆澧炲姞渚濊禆鐨勫簱錛歝xcore200.lib cv200.lib highgui200.lib



wrh 2012-07-15 13:59 鍙戣〃璇勮
]]>
linux 铏氭嫙鏈篤MWare涓婄綉http://m.shnenglu.com/wrhwww/archive/2012/04/25/172772.htmlwrhwrhWed, 25 Apr 2012 14:36:00 GMThttp://m.shnenglu.com/wrhwww/archive/2012/04/25/172772.htmlhttp://m.shnenglu.com/wrhwww/comments/172772.htmlhttp://m.shnenglu.com/wrhwww/archive/2012/04/25/172772.html#Feedback0http://m.shnenglu.com/wrhwww/comments/commentRss/172772.htmlhttp://m.shnenglu.com/wrhwww/services/trackbacks/172772.html1. 鎶婁綘鐨勮櫄鎷熺綉鍗?font face="Times New Roman">VMnet8(鍦?font face="Times New Roman">Win緋葷粺鐨勭綉涓婇偦灞呴噷)璁劇疆涓鴻嚜鍔ㄨ幏寰?font face="Times New Roman">IP銆佽嚜鍔ㄨ幏寰?font face="Times New Roman">DNS鏈嶅姟鍣紝鍚敤銆?/p>

 

 

2.

鎶婁綘铏氭嫙鏈轟腑鎿嶄綔緋葷粺鐨?font face="Times New Roman">Editing Auto Ethernet->IPV4 Setting 璁劇疆鎴愬涓婂浘鎵紺恒?/p>

鏈変簺Linux鍙互濡備笅璁劇疆錛?#8220;鏈湴榪炴帴”涔熻緗負鑷姩鑾峰緱IP銆佽嚜鍔ㄨ幏寰?font face="Times New Roman">DNS鏈嶅姟鍣紙鍦ㄨ櫄鎷熸満涓紝鍙抽敭“鏈湴榪炴帴”錛嶅弻鍑?#8220;Internet 鍗忚”,鐪嬬湅鏄笉鏄嚜鍔ㄧ殑鍚э紒鍥哄畾IP鐨勪篃鍦ㄨ繖閲屾敼錛侊級

 

 

3.褰撶劧鏄皢铏氭嫙鏈虹殑涓婄綉鏂瑰紡閫変負NAT鍜?/p>

 

 

鍙抽敭浣犺璁劇疆鐨勮櫄鎷熸満閫?#8220;璁劇疆”錛堝洜涓烘湁鐨勪笉姝㈣櫄鎷熶竴鍙幫級錛屽湪“紜歡”涓?#8220;浠ュお緗?#8221;錛?灝嗗彸杈圭殑緗戠粶榪炴帴鏀逛負NAT錛嶇‘瀹氥?/p>

 

 

4.鐐硅彍鍗曟爮閲岀殑“緙栬緫”錛嶉?#8220;铏氭嫙緗戠粶璁劇疆”錛屽厛灝?#8220;鑷姩妗ユ帴”緇欏幓鎺夛紙鍘繪帀閽╅挬錛夛紝鍐嶉?#8220;DHCP”寮鍚?font face="Times New Roman">DHCP鏈嶅姟錛岀偣“寮濮?#8221;錛嶅簲鐢紝鍐嶆寜鍚屾牱鐨勬柟娉曞紑鍚?#8220;NAT”鐨勫姛鑳姐?/p>

 

 

5.鏈閲嶈鐨勬槸浣犵殑涓や釜鏈嶅姟蹇呴』寮鍚細VMware DHCP Service 鍜?font face="Times New Roman">VMware NAT Service銆?/p>

 

 

鍏蜂綋鎿嶄綔濡備笅: 寮濮?font face="Times New Roman">---璁劇疆--鎺у埗闈㈡澘---綆$悊宸ュ叿---鏈嶅姟錛岀‘淇?VMware DHCP Service 鍜?font face="Times New Roman">VMware NAT Service 鏈嶅姟宸茬粡鍚姩

 

 

 

 

 

//====================================鍙﹀鐨勬柟娉?/p>

 

Ubuntu铏氭嫙鏈哄叡浜富鏈轟笂緗?br />WinXP+VMware WorkStation+Ubuntu7.10

涓.Bridged鏂瑰紡鍏變韓涓婄綉

1.璁劇疆Ubuntu鐨勭綉緇滆繛鎺ユ柟寮忎負Bridged

2.鍏變韓ADSL榪炴帴
ADSL榪炴帴灞炴т腑閫変腑“Internet榪炴帴鍏變韓”錛屼笅鎷夊垪琛ㄤ腑鐒跺悗閫夋嫨“鏈湴榪炴帴”錛岀郴緇熶細鑷姩鎶?#8220;鏈湴榪炴帴”璁劇疆涓?92.168.0.1銆傛敞鎰忔璁劇疆浼氬湪鏂紑榪炴帴騫墮噸鍚悗鎵嶇敓鏁?br />
3.Ubuntu緗戠粶璁劇疆

IP:192.168.0.X
緗戝叧:192.268.0.1
DNS:192.168.0.1(緋葷粺->緋葷粺綆$悊->緗戠粶->DNS)

浜?NAT鏂瑰紡鍏變韓涓婄綉

1.璁劇疆Ubuntu鐨勭綉緇滆繛鎺ユ柟寮忎負NAT
2.寮鍚疺Mware DHCP Service鍜孷Mware NAT Service涓や釜鏈嶅姟
3.Ubuntu涓綉緇滆緗負鑷姩閰嶇疆(DHCP)鎴栬呮墜鍔ㄨ緗甀P鍙奃NS

鎵嬪姩璁劇疆鏂規硶錛?br />
1.XP涓璱pconfig錛屽緱鍒癡Mnet8鐨処P涓?92.168.93.1

2.Ubuntu涓緗綉緇淚P涓?92.168.93.X(X涓?-254錛岀綉涓婂緢澶氫漢璇村彧鑳芥槸128-254錛岃嚜鍔ㄥ垎閰嶆椂涓鑸篃鏄?28錛屼絾緇忛獙璇?-254閮借錛孌NS璁劇疆涓?92.168.93.2

浠ヤ笂鏂規硶鍧囩粡楠岃瘉錛岀粷鏃犲浣欐楠ゃ?/p>

wrh 2012-04-25 22:36 鍙戣〃璇勮
]]>
VS2005璋冭瘯dmp鏂囦歡甯歌闂 http://m.shnenglu.com/wrhwww/archive/2012/01/10/163935.htmlwrhwrhTue, 10 Jan 2012 05:54:00 GMThttp://m.shnenglu.com/wrhwww/archive/2012/01/10/163935.htmlhttp://m.shnenglu.com/wrhwww/comments/163935.htmlhttp://m.shnenglu.com/wrhwww/archive/2012/01/10/163935.html#Feedback4http://m.shnenglu.com/wrhwww/comments/commentRss/163935.htmlhttp://m.shnenglu.com/wrhwww/services/trackbacks/163935.html1銆?Dump鏂囦歡鏀懼湪鍝噷錛?br />
Dump鏂囦歡涓嶇敤闈炶鏀懼湪浣犵紪璇戝嚭鏉ョ殑浣嶇疆錛屼綘瀹屽叏鍙互寤虹珛涓涓柊鐨勬枃浠跺す鏉ユ斁瀹冦備絾鑻ヤ笉鏄瓨鏀懼湪緙栬瘧鍑烘潵鐨勪綅緗紝闇瑕佸皢緙栬瘧鐢熸垚鐨凱DB鏂囦歡鎷瘋礉鍒癉ump鏂囦歡鐩綍錛屾垨鏄埄鐢╒S2005鎵撳紑Dump鏂囦歡鍚庯紝璁劇疆PDB鏂囦歡璺緞銆?br />


2銆?濡備綍鎭㈠褰撴椂鐨勭幇鍦猴紵

鍙兘浣犺闂紝鎬庝箞鍙兘錛岃繖涓猟ump鏂囦歡鍙槸鐢ㄦ埛鍙戠粰鎴戠殑錛屾垜涓嶅彲鑳藉幓鐢ㄦ埛瀹墮噷璋冭瘯鍚э紵榪欎釜鎭㈠鐜板満鍙笉鏄寚鐨勯潪瑕佸埌閭e彴鏈哄櫒涓婂幓錛岃屾槸瑕佹妸浜х敓dump鏂囦歡瀵瑰簲鐨勪簩榪涘埗鏂囦歡鎷垮埌銆?br />
浣嗘槸鎭㈠鐜板満闇瑕佹墍鏈夌殑浜岃繘鍒舵枃浠墮兘瑕佸搴旓紝浣犱竴瀹氳鏈夊鑷寸敤鎴峰穿婧冪殑閭d簺Exe鍜孌LL銆傛棦鐒舵槸浣犲彂甯冪殑紼嬪簭錛孍xe鏂囦歡褰撶劧浣犱細鏈夈傛墍浠ヨ繖閲屽彧鑰冭檻DLL灝辮浜嗐?br />
Dump鏂囦歡涓褰曚簡鎵鏈塂LL鏂囦歡鐨勭増鏈彿鍜屾椂闂存埑錛屾墍浠ヤ綘涓瀹氬彲浠ュ悓榪囨煇縐嶉斿緞鎷垮埌瀹冦傚鏋滀綘鑳戒粠鐢ㄦ埛閭i噷鎷垮埌鏈濂斤紝濡傛灉涓嶆柟渚匡紝鐢ㄦ埛涓嶅彲鑳界敤鐨勬槸鎴戜滑騫沖父涓嶅父鐢ㄧ殑鎿嶄綔緋葷粺錛屾墍浠ユ壘涓湁瀵瑰簲緋葷粺鐨勬満鍣ㄤ竴鑸兘浼氭湁銆備絾鏄浣忎笉浠呮槸鏂囦歡鍚嶇О瑕佷竴鑷達紝榪樿鏍稿鐗堟湰鍜屾椂闂存埑錛屽鏋滀笉鍚屼竴鏍鋒病鏈夊姙娉曠敤銆?br />
濡傛灉瀹㈡埛鐢ㄤ簡鏌愪釜鐗規畩鐨勮ˉ涓佹庝箞鍔烇紵

鍏跺疄榪欎釜闂涔熷緢濂借В鍐籌紝鍙瀹冧笉闃葷闃呰鍫嗘爤錛屽氨涓嶇敤綆″畠錛岃皟璇旸ump鍜岃繍琛岀▼搴忎笉涓鏍鳳紝緙哄皯涓涓や釜DLL娌℃湁浠諱綍闂銆?br />


3銆?濡傛灉鐪熺殑闇瑕佹庝箞鍔烇紵

絎﹀彿鏂囦歡鐜板湪涓昏鏄寚PDB鏂囦歡銆?br />
濡傛灉娌℃湁絎﹀彿鏂囦歡錛岄偅涔堣皟璇曠殑鏃跺欏彲鑳藉鑷村爢鏍堥敊璇?br />
濡傛灉浣犱涪澶變簡榪欎釜鍙戝竷鐗堟湰涓綘緙栬瘧鍑烘潵鐨勯偅浜沞xe鍜孌LL鐨凱DB錛岄偅涔堣繖涓崯澶辨槸涓ラ噸鐨勶紝閲嶆柊緙栬瘧鍑烘潵鐨勭増鏈槸涓嶈兘浣跨敤鐨勩?br />
鎴戣嚜宸辯殑DLL閮芥湁浜嗭紝鍙槸緙虹殑鏄郴緇熺殑DLL鐨勫搴擯DB鏂囦歡鎬庝箞鍔烇紵鍥?.4涓凡緇忎粙緇嶄簡鏂規硶銆傚井杞湪瀹冪殑絎﹀彿鏁版嵁搴撲笂涓烘垜浠彁渚涗簡鎵鏈夌殑PDB鏂囦歡錛岃繕鏈夐儴鍒嗛潪鍏抽敭DLL銆傝緗ソ鍚庣▼搴忓皢鑷姩涓嬭澆闇瑕佺殑PDB鍙奃LL鏂囦歡銆?br />


4銆?鎷垮埌闇瑕佺殑鏂囦歡浜嗭紝榪欎簺鏂囦歡搴旇鏀懼湪鍝噷錛?/strong>

絎﹀彿鏁版嵁搴撲腑鐨勬枃浠朵笉鐢ㄥ姩錛屾妸鍏跺畠鐨別xe鍜孌LL銆丳DB鏂囦歡鏀懼湪dump鏂囦歡鐩綍閲屽氨琛屼簡銆?br />


5銆?鎴戠敤鐨勬槸VS2005錛屾槑鏄庢湁婧愪唬鐮侊紝涓轟粈涔堟樉紺轟笉浜嗭紵

榪欎釜鏄痙ump璋冭瘯鐨勬渶澶寸棝闂錛屼唬鐮佸彲鑳藉凡緇忔敼榪囦簡錛屽嵆浣夸綘浠嶴VN鎷垮埌褰撴椂鐨勭増鏈紝鏃墮棿鎴充篃鏄敊鐨勶紝VS2005灝辨槸涓嶈浣犳樉紺轟唬鐮併傚叾瀹炲彧瑕佸湪

Tools/Options錛孌ebugging/General涓幓鎺?br />
Require source files to exactly match the original version鐨勫閫夊氨琛屼簡銆?

wrh 2012-01-10 13:54 鍙戣〃璇勮
]]>
鍒╃敤VS2005榪涜dump鏂囦歡璋冭瘯http://m.shnenglu.com/wrhwww/archive/2012/01/10/163934.htmlwrhwrhTue, 10 Jan 2012 05:53:00 GMThttp://m.shnenglu.com/wrhwww/archive/2012/01/10/163934.htmlhttp://m.shnenglu.com/wrhwww/comments/163934.htmlhttp://m.shnenglu.com/wrhwww/archive/2012/01/10/163934.html#Feedback0http://m.shnenglu.com/wrhwww/comments/commentRss/163934.htmlhttp://m.shnenglu.com/wrhwww/services/trackbacks/163934.html鍓嶈█錛氬埄鐢?/span>drwtsn32鎴?/span>NTSD榪涜紼嬪簭宕╂簝澶勭悊錛岄兘鍙互鐢熸垚鍙敤浜庤皟璇曠殑dmp鏍煎紡鏂囦歡銆備嬌鐢?/span>VS2005鎵撳紑鐢熸垚鐨?/span>DMP鏂囦歡錛岃兘寰堟柟渚跨殑鎵懼嚭BUG鎵鍦ㄤ綅緗傛湰鏂囧皢璁ㄨ浠ヤ笅鍐呭錛?/span>

1銆?/span>  紼嬪簭緙栬瘧閫夐」

2銆?/span>  鍒╃敤VS2005 鍒嗘瀽dump鏂囦歡

3銆?/span>  甯歌闂璁ㄨ

涓銆?/span>       紼嬪簭緙栬瘧閫夐」

PDB files contains all debug information like type definition and function prototype. When application crashes, we need the PDB files to analyze the root cause, so make sure these PDB files will be created when building it. You must do the following setting:

C/C++/General/Debug Information Format=Program Database (/Zi).

clip_image001

鍥?/span>1.1 璋冭瘯淇℃伅鏍煎紡

Linker/Debugging/Generate Program Database File=”Name and location of your PDB files”

clip_image002

鍥?/span>1.2 PDB鏂囦歡杈撳嚭璺緞

PDB鏂囦歡璺緞鏈濂借緗湪鍚屼竴涓枃浠跺す涓紝榪欐牱鏂逛究dmp鏂囦歡璋冭瘯鏃惰皟鐢ㄣ?/span>

璋冭瘯鏃訛紝鎵鏈夌殑PDB鏂囦歡鍜屾簮鏂囦歡蹇呴』涓ユ牸鍖歸厤錛?/span>the PDB files should be the one generated by build the source code錛夛紝騫跺瓨鍌ㄥ湪涓涓畨鍏ㄧ殑浣嶇疆銆傚綋瀹㈡埛鎶ュ憡浜嗕竴涓敊璇椂錛屼綘闇瑕佽繖浜涙枃浠舵潵甯繖浠ヤ究瀹氫綅閿欒浜庢簮浠g爜涓茍瑙e喅闂銆?/span>

浜屻?/span>       VS2005 鍒嗘瀽dump鏂囦歡

In this simple application, there is an unhandled Access Violation Reading exception, because GetNameFromDatabase returns a NULL pointer, and this pointer is passed into IsPrefix and then it’s used directly without NULL pointer checking.

clip_image003

鍥?/span>1.3 婕旂ず浠g爜

 

鍒╃敤Release妯″紡緙栬瘧璇ユ祴璇曠▼搴忥紝鍦ㄥ鎴鋒満涓婅繍琛岃紼嬪簭錛屽皢鏍規嵁NTSD璁劇疆鐢熸垚鐩稿搴旂殑DMP鏍煎紡鏂囦歡銆?/span>

鍙互浣跨敤Visual Studio.Net銆?/span>NTSD鎴栨槸鍏朵粬鐨勮皟璇曞伐鍏峰DMP鏍煎紡鏂囦歡榪涜鍒嗘瀽銆?/span>

 

l         Start Visual Studio.Net

Click File/Open Solution and make sure the files of type is *.dmp then click Open.

clip_image004

鍥?/span>1.3 Open Dump File (GUI)

 

l         Set Symbol Path

Click Tools/Options, Debugging/Symbols錛屽鍔?/span>PDB鏂囦歡璺緞銆傝嫢璋冭瘯鐨勭▼搴忛渶瑕佸井杞熀紜搴撶殑PDB淇℃伅錛屽彲浠ュ鍔犱竴涓礬寰勪負錛?/span>

http://msdl.microsoft.com/download/symbols

鍦ㄧ晫闈笅鏂?/span>Cache Symbol From symbol…閫夋嫨鏈湴瀛樺偍榪欎簺Symbols鐨勮礬寰勩?/span>

clip_image005

鍥?/span>1.4 Symbol Path

濡傛灉DMP鏂囦歡娌℃湁鏀懼叆鏈韓PDB鏂囦歡鎵鍦ㄧ洰褰曪紝涔熷彲浠ュ湪姝ゅ澧炲姞涓涓湰鍦扮洰褰曘傜偣OK鍚庯紝VS2005灝嗕粠緗戠粶涓笅杞芥墍闇瑕佺殑Symbols錛岄渶瑕佺瓑寰呬竴孌墊椂闂淬傚鏋滄槸澶氭璋冭瘯鍚屼竴涓▼搴忛敊璇墍鐢熸垚鐨?/span>DMP鏂囦歡錛屽彲浠ュ湪瀵硅瘽妗嗕腑閫夋嫨“Search the above locations only when symbols are loaded manually”銆備粠鑰屽彲浠ヨ妭鐪佺綉緇滃甫瀹姐?/span>

 

l         Set Source code path

Open Solution Property Pages and set the source code path.

clip_image006

鍥?/span>1.5 灞炴ц彍鍗?/span>

clip_image007

鍥?/span>1.6 Debug Source Files

 

l         Start to Debug the Dump File

Click the Debug menu, it will ask you to save as a solution, save it. Then it will go to the line which caused the crash of your application.

clip_image008

鍥?/span>1.7 璋冭瘯紿楀彛錛屽畾浣嶅埌婧愪唬鐮?/span>

 

涓夈?/span>       甯歌闂璁ㄨ

1銆?/span>  Dump鏂囦歡鏀懼湪鍝噷錛?/span>

Dump鏂囦歡涓嶇敤闈炶鏀懼湪浣犵紪璇戝嚭鏉ョ殑浣嶇疆錛屼綘瀹屽叏鍙互寤虹珛涓涓柊鐨勬枃浠跺す鏉ユ斁瀹冦備絾鑻ヤ笉鏄瓨鏀懼湪緙栬瘧鍑烘潵鐨勪綅緗紝闇瑕佸皢緙栬瘧鐢熸垚鐨?/span>PDB鏂囦歡鎷瘋礉鍒?/span>Dump鏂囦歡鐩綍錛屾垨鏄埄鐢?/span>VS2005鎵撳紑Dump鏂囦歡鍚庯紝璁劇疆PDB鏂囦歡璺緞銆傚弬鐓у浘1.4銆?/span>

 

2銆?/span>  濡備綍鎭㈠褰撴椂鐨勭幇鍦猴紵

鍙兘浣犺闂紝鎬庝箞鍙兘錛岃繖涓?span lang="EN-US">dump鏂囦歡鍙槸鐢ㄦ埛鍙戠粰鎴戠殑錛屾垜涓嶅彲鑳藉幓鐢ㄦ埛瀹墮噷璋冭瘯鍚э紵榪欎釜鎭㈠鐜板満鍙笉鏄寚鐨勯潪瑕佸埌閭e彴鏈哄櫒涓婂幓錛岃屾槸瑕佹妸浜х敓dump鏂囦歡瀵瑰簲鐨勪簩榪涘埗鏂囦歡鎷垮埌銆?span lang="EN-US">

浣嗘槸鎭㈠鐜板満闇瑕佹墍鏈夌殑浜岃繘鍒舵枃浠墮兘瑕佸搴旓紝浣犱竴瀹氳鏈夊鑷寸敤鎴峰穿婧冪殑閭d簺Exe鍜?span lang="EN-US">DLL銆傛棦鐒舵槸浣犲彂甯冪殑紼嬪簭錛?span lang="EN-US">Exe鏂囦歡褰撶劧浣犱細鏈夈傛墍浠ヨ繖閲屽彧鑰冭檻DLL灝辮浜嗐?span lang="EN-US">

Dump鏂囦歡涓褰曚簡鎵鏈?span lang="EN-US">DLL鏂囦歡鐨勭増鏈彿鍜屾椂闂存埑錛屾墍浠ヤ綘涓瀹氬彲浠ュ悓榪囨煇縐嶉斿緞鎷垮埌瀹冦傚鏋滀綘鑳戒粠鐢ㄦ埛閭i噷鎷垮埌鏈濂斤紝濡傛灉涓嶆柟渚匡紝鐢ㄦ埛涓嶅彲鑳界敤鐨勬槸鎴戜滑騫沖父涓嶅父鐢ㄧ殑鎿嶄綔緋葷粺錛屾墍浠ユ壘涓湁瀵瑰簲緋葷粺鐨勬満鍣ㄤ竴鑸兘浼氭湁銆備絾鏄浣忎笉浠呮槸鏂囦歡鍚嶇О瑕佷竴鑷達紝榪樿鏍稿鐗堟湰鍜屾椂闂存埑錛屽鏋滀笉鍚屼竴鏍鋒病鏈夊姙娉曠敤銆?span lang="EN-US">

濡傛灉瀹㈡埛鐢ㄤ簡鏌愪釜鐗規畩鐨勮ˉ涓佹庝箞鍔烇紵

鍏跺疄榪欎釜闂涔熷緢濂借В鍐籌紝鍙瀹冧笉闃葷闃呰鍫嗘爤錛屽氨涓嶇敤綆″畠錛岃皟璇?span lang="EN-US">Dump鍜岃繍琛岀▼搴忎笉涓鏍鳳紝緙哄皯涓涓や釜DLL娌℃湁浠諱綍闂銆?span lang="EN-US">

 

3銆?/span>  濡傛灉鐪熺殑闇瑕佹庝箞鍔烇紵

絎﹀彿鏂囦歡鐜板湪涓昏鏄寚PDB鏂囦歡銆?span lang="EN-US">

濡傛灉娌℃湁絎﹀彿鏂囦歡錛岄偅涔堣皟璇曠殑鏃跺欏彲鑳藉鑷村爢鏍堥敊璇?span lang="EN-US">

濡傛灉浣犱涪澶變簡榪欎釜鍙戝竷鐗堟湰涓綘緙栬瘧鍑烘潵鐨勯偅浜?/span>exe鍜?/span>DLL鐨?/span>PDB錛岄偅涔堣繖涓崯澶辨槸涓ラ噸鐨勶紝閲嶆柊緙栬瘧鍑烘潵鐨勭増鏈槸涓嶈兘浣跨敤鐨勩?/span>

鎴戣嚜宸辯殑DLL閮芥湁浜嗭紝鍙槸緙虹殑鏄郴緇熺殑DLL鐨勫搴?/span>PDB鏂囦歡鎬庝箞鍔烇紵鍥?/span>1.4涓凡緇忎粙緇嶄簡鏂規硶銆傚井杞湪瀹冪殑絎﹀彿鏁版嵁搴撲笂涓烘垜浠彁渚涗簡鎵鏈夌殑PDB鏂囦歡錛岃繕鏈夐儴鍒嗛潪鍏抽敭DLL銆傝緗ソ鍚庣▼搴忓皢鑷姩涓嬭澆闇瑕佺殑PDB鍙?/span>DLL鏂囦歡銆?/span>

 

4銆?/span>  鎷垮埌闇瑕佺殑鏂囦歡浜嗭紝榪欎簺鏂囦歡搴旇鏀懼湪鍝噷錛?/span>

絎﹀彿鏁版嵁搴撲腑鐨勬枃浠朵笉鐢ㄥ姩錛屾妸鍏跺畠鐨?/span>exe鍜?/span>DLL銆?/span>PDB鏂囦歡鏀懼湪dump鏂囦歡鐩綍閲屽氨琛屼簡銆?/span>

 

5銆?/span>  鎴戠敤鐨勬槸VS2005錛屾槑鏄庢湁婧愪唬鐮侊紝涓轟粈涔堟樉紺轟笉浜嗭紵

榪欎釜鏄?/span>dump璋冭瘯鐨勬渶澶寸棝闂錛屼唬鐮佸彲鑳藉凡緇忔敼榪囦簡錛屽嵆浣夸綘浠?/span>SVN鎷垮埌褰撴椂鐨勭増鏈紝鏃墮棿鎴充篃鏄敊鐨勶紝VS2005灝辨槸涓嶈浣犳樉紺轟唬鐮併傚叾瀹炲彧瑕佸湪

Tools/Options錛?/span>Debugging/General涓幓鎺?/span>

Require source files to exactly match the original version鐨勫閫夊氨琛屼簡銆?/span>



wrh 2012-01-10 13:53 鍙戣〃璇勮
]]>
VC++涓瑿MAP鐨勪嬌鐢?/title><link>http://m.shnenglu.com/wrhwww/archive/2011/10/21/158802.html</link><dc:creator>wrh</dc:creator><author>wrh</author><pubDate>Fri, 21 Oct 2011 01:38:00 GMT</pubDate><guid>http://m.shnenglu.com/wrhwww/archive/2011/10/21/158802.html</guid><wfw:comment>http://m.shnenglu.com/wrhwww/comments/158802.html</wfw:comment><comments>http://m.shnenglu.com/wrhwww/archive/2011/10/21/158802.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.shnenglu.com/wrhwww/comments/commentRss/158802.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/wrhwww/services/trackbacks/158802.html</trackback:ping><description><![CDATA[鏄犲皠琛ㄧ被錛圕Map錛夋槸MFC闆嗗悎綾諱腑鐨勪竴涓ā鏉跨被錛屼篃縐頒綔涓?#8220;瀛楀吀”錛屽氨鍍忎竴縐嶅彧鏈変袱鍒楃殑琛ㄦ牸錛屼竴鍒楁槸鍏抽敭瀛楋紝涓鍒楁槸鏁版嵁欏癸紝瀹冧滑鏄竴涓瀵瑰簲鐨勩傚叧閿瓧鏄敮涓鐨勶紝緇欏嚭涓涓叧閿瓧錛屾槧灝勮〃綾諱細寰堝揩鎵懼埌瀵瑰簲鐨勬暟鎹」銆傛槧灝勮〃鐨勬煡鎵炬槸浠ュ搱甯岃〃鐨勬柟寮忚繘琛岀殑錛屽洜姝ゅ湪鏄犲皠琛ㄤ腑鏌ユ壘鏁板奸」鐨勯熷害寰堝揩銆傛槧灝勭被鏈閫傜敤浜庨渶瑕佹牴鎹叧閿瓧榪涜蹇熸绱㈢殑鍦哄悎錛屾垜浠殑紼嬪簭涓氨鐢ㄦ槧灝勮〃鏉ヤ繚瀛樿鏃跺櫒鏍囧織鍊煎拰綾誨疄渚嬫寚閽堬紝鐢ㄨ鏃跺櫒鐨勬爣蹇楀間綔涓哄叧閿瓧銆?<font face="Arial">浠栬繖涓湁鐐瑰儚鏁扮粍錛屾瘮濡備綘瑕佹煡鎵綼[index]錛屼笉蹇呭厛閬嶅巻鍓嶉潰鐨刬ndex涓厓绱狅紝鍙笉榪囨暟緇勭殑涓嬫爣鏄搱甯岃〃閿鹼紝瀹冩槸浠ラ敭鍊煎鐨勫艦寮忓嚭鐜扮殑銆?/font><font face="Arial">涓句釜渚嬪瓙鏉ヨ鍚э紝鍏徃鐨勬墍鏈夎亴鍛橀兘鏈変竴涓伐鍙峰拰鑷繁鐨勫鍚嶏紝宸ュ彿灝辨槸濮撳悕鐨勫叧閿瓧錛岀粰鍑轟竴涓伐鍙鳳紝灝卞彲浠ュ緢蹇殑鎵懼埌鐩稿簲鐨勫鍚嶃?br />        涓句緥濡備笅錛?br />1銆佸畾涔変竴涓狢MAP錛屽悜榪欎釜CMAP涓鍔犳暟鎹」錛堥敭-鍊煎錛夈?br />CMap<CString, LPCTSTR, CString, LPCTSTR>m_ItemMap;<br />CString strKey = _T(""), str = _T("");<br />int i;<br />for(i = 0; i < 5; i++)<br />    {<br />        strKey.Format("%d", i);              </font><font face="Arial">//榪欎釜鏄敭</font><font face="Arial"><br />        str.Format("A%d", i);               </font><font face="Arial">//閿搴旂殑</font><font face="Arial">鍊?<br />        m_ItemMap.SetAt(strKey, str);<br />    }<br />2銆侀亶鍘嗘涓狢MAP鐨勫父鐢ㄦ柟娉曘?br />    POSITION pos = m_ItemMap.GetStartPosition();<br />    while(pos)<br />    {<br />        m_ItemMap.GetNextAssoc(pos, strKey, str);<br />        cout<< strKey<< ":"<< str<< endl;<br />    }<br />3銆佸湪CMAP涓煡鎵劇浉搴旂殑鏁版嵁欏廣?br />    CString pReset;<br />    if(m_ItemMap.Lookup("1", pReset))<br />    {<br />        cout<<pReset<<endl;<br />    }<br /></font><br /><br />=======================================================================鐜板湪錛屾垜浠潵瀛︿範MFC涓紝鏈甯哥敤鐨勬暟鎹粨鏋勪腑鐨勬渶鍚庝竴涓狢Map妯℃澘銆備箣鍓嶏紝鎴戜滑宸茬粡渚濇瀛﹀畬浜咰Array錛孋List錛屽茍涓斾篃瀵瑰畠浠繘琛屼簡鍒濇鐨勫墫鏋愩? <p style="text-align: left; text-indent: 21pt" align="left"><span style="color: teal">鍏跺疄錛屾垜涓鐩磋涓篊Map鏄渶綆鍗曠殑涓涓暟鎹被鍨嬶紝濡傛灉璇達紝澶у瀵硅繖涓暟鎹被鍨嬩駭鐢熶笉鑹劅瑙夌殑璇濓紝澶у鏄洜涓哄Hash琛ㄧ殑闄岀敓銆?/span></p> <p style="text-align: left; text-indent: 21pt" align="left"><span style="color: teal">鏄劇劧錛孋Map灝辨槸瀵笻ash琛ㄧ殑涓縐嶅疄鐜般傚浜嶩ash琛ㄦ潵璇達紝鎴戜滑闇瑕佹彁渚涙垚瀵圭殑Key涓嶸alue榪涜鎿嶄綔錛屽叾瀹烇紝涔熷氨鏄皢鎴戜滑鏃ュ父浣跨敤鐨勬暟緇勪笅鏍囨浛鎹㈡垚鐜板湪Key錛岃嚦浜嶮FC鏄噰鐢ㄤ簡浠涔堟牱鐨勬暎鍒楀嚱鏁幫紝鎴戜滑涓嶅繀鐭ラ亾銆?/span></p> <p style="text-align: left; text-indent: 21pt" align="left"><span style="color: teal">Hash</span><span style="color: teal">琛ㄥ彲浠ヨ涓烘槸鏁扮粍鐨勪竴縐嶄紭鍖栵紝鎴栬呰鏄鏁扮粍緙洪櫡鐨勪竴縐嶅譏琛ワ紝鍥犱負鎴戜滑鐭ラ亾錛屾暟緇勫湪鍏峰浜嗛珮鏁堝瓨鍙栨ц兘鐨勫悓鏃訛紝鏃犳硶鍔ㄦ佺殑璋冩暣鑷韓鐨勫ぇ灝忥紝鍙堜弗閲嶇殑褰卞搷浜嗗畠鐨勪嬌鐢ㄦ晥鏋溿傝繖緇欎簡Hash琛ㄥ彲涔樹箣鏈猴紝Hash琛ㄦ繪槸浣跨敤浜嗘煇縐嶇畻娉曞敖鍙兘鐨勬潵杈懼埌灝嗘垚瀵圭殑鍏冪礌瀛樺偍鍒頒竴涓瀹氱殑紱繪暎鐨勫唴瀛樼┖闂達紝瀹冩棦緇ф壙浜嗛摼琛ㄥ鑷韓鐨勫姩鎬佽皟鏁達紝鍙堝敖鍙兘鐨勪嬌璇誨啓緇存寔鍦ㄩ珮閫熺殑姘村鉤錛屽綋鐒舵棤璁哄浣曡繕鏄姣旀暟緇勬參鐨勫銆?/span></p> <p style="text-align: left; text-indent: 21pt" align="left"><span style="color: teal">濡傛灉浣犻潪瑕佽鎴戝憡璇変綘錛孒ash琛ㄦ槸浠涔堟牱鐨勪竴涓暟鎹粨鏋勭殑璇濓紝寰堥仐鎲撅紝鎴戞棤娉曞噯紜殑鎻忚堪錛岃繖灝辯浉褰撲簬浣犻棶鎴?#8220;鍑ゅ嚢鏄粈涔堟牱瀛?#8221;錛屼笉榪囨垜鍙互鍛婅瘔浣犲瓟闆鐨勬牱瀛愩傚父鐢ㄧ殑Hash琛ㄩ潪甯稿儚涓涓崄瀛楁暟緇勶紝浼間箮鍗佸瓧鏁扮粍鍙堟垚涓轟簡浼楀璇昏呯殑闅滅錛屽鏋滀綘鏆傛椂榪樹笉鑳界悊瑙g殑璇濓紝璇蜂綘鍘葷炕闃匟ash琛ㄧ殑璇︾粏璁鴻堪錛屽綋鐒朵綘涔熷彲浠ュ湪涓嶄箙涔嬪悗錛屽湪鏈鐪嬪埌榪欎簺緇忓吀鏁版嵁緇撴瀯鐨勭簿璁層?/span></p> <p style="text-align: left; text-indent: 21pt" align="left"><span style="color: teal">鐜板湪錛屾垜浠潵鐪嬩竴涓狢Map鐨勭敤娉曪紝鑷充簬瀹冪殑鍙傛暟錛屼綘鍙互鐪嬫湰絀洪棿涓綃囦笓闂ㄦ弿榪癈Array錛孋List浠ュ強CMap鍙傛暟鐢ㄦ硶鐨勬枃绔犮奀Array錛孋List錛孋Map濡備綍瀹炲寲錛堝疄渚嬪寲錛夈嬨備笅闈㈡槸鎴戣嚜宸辯紪鍐欑殑渚嬪瓙錛?/span></p> <p style="text-align: left; text-indent: 21pt" align="left"><span style="color: teal">class Point</span></p> <p style="text-align: left; text-indent: 21pt" align="left"><span style="color: teal">{</span></p> <p style="text-align: left; text-indent: 21pt" align="left"><span style="color: teal">public:</span></p> <p style="text-align: left; text-indent: 21pt" align="left"><span style="color: teal">    Point()</span></p> <p style="text-align: left; text-indent: 21pt" align="left"><span style="color: teal">    {</span></p> <p style="text-align: left; text-indent: 21pt" align="left"><span style="color: teal">        m_x = 0;</span></p> <p style="text-align: left; text-indent: 21pt" align="left"><span style="color: teal">        m_y = 0;</span></p> <p style="text-align: left; text-indent: 21pt" align="left"><span style="color: teal">    }</span></p> <p style="text-align: left; text-indent: 21pt" align="left"><span style="color: teal">    Point(int x, int y)</span></p> <p style="text-align: left; text-indent: 21pt" align="left"><span style="color: teal">    {</span></p> <p style="text-align: left; text-indent: 21pt" align="left"><span style="color: teal">        m_x = x;</span></p> <p style="text-align: left; text-indent: 21pt" align="left"><span style="color: teal">        m_y = y;</span></p> <p style="text-align: left; text-indent: 21pt" align="left"><span style="color: teal">    }</span></p> <p style="text-align: left; text-indent: 21pt" align="left"><span style="color: teal">public:</span></p> <p style="text-align: left; text-indent: 21pt" align="left"><span style="color: teal">    int m_x;</span></p> <p style="text-align: left; text-indent: 21pt" align="left"><span style="color: teal">    int m_y;</span></p> <p style="text-align: left; text-indent: 21pt" align="left"><span style="color: teal">};</span></p> <p style="text-align: left; text-indent: 21pt" align="left"><span style="color: teal">typedef CMap<const char*, const char*, Point, Point&>     CMapPnt; //</span><span style="color: teal">璇峰湪浣跨敤涔嬪墠瀹氫箟</span></p> <p style="text-align: left; text-indent: 21pt" align="left"><span style="color: teal">int main()</span></p> <p style="text-align: left; text-indent: 21pt" align="left"><span style="color: teal">{</span></p> <p style="text-align: left; text-indent: 21pt" align="left"><span style="color: teal">    Point elem1(1, 100), elem2(2, 200), elem3(3, 300), point;</span></p> <p style="text-align: left; text-indent: 21pt" align="left"><span style="color: teal">    CMapPnt mp;</span></p> <p style="text-align: left; text-indent: 21pt" align="left"><span style="color: teal">    // insert 3 elements into map</span><span style="color: teal">錛?span>          #1</span></span></p> <p style="text-align: left; text-indent: 21pt" align="left"><span style="color: teal">    mp.SetAt("1st", elem1);</span></p> <p style="text-align: left; text-indent: 21pt" align="left"><span style="color: teal">    mp.SetAt("2nd", elem2);</span></p> <p style="text-align: left; text-indent: 21pt" align="left"><span style="color: teal">    mp.SetAt("3th", elem3);</span></p> <p style="text-align: left; text-indent: 21pt" align="left"><span>    </span></p> <p style="text-align: left; text-indent: 21pt" align="left"><span style="color: teal">    // search a point named "2nd" from map                  #2</span></p> <p style="text-align: left; text-indent: 21pt" align="left"><span style="color: teal">    mp.Lookup("2nd", point);</span></p> <p style="text-align: left; text-indent: 21pt" align="left"><span style="color: teal">    printf("2nd: m_x: %d, m_y: %d\n", point.m_x, point.m_y);</span></p> <p style="text-align: left; text-indent: 42pt" align="left"><span style="color: teal">// insert a new pair into map      #3</span></p> <p style="text-align: left; text-indent: 42pt" align="left"><span style="color: teal">Point elem4(4, 400);</span></p> <p style="text-align: left; text-indent: 42pt" align="left"><span style="color: teal">mp["4th"] = elem4;</span></p> <p style="text-align: left; text-indent: 42pt" align="left"><span style="color: teal">cout<<"count: "<<mp.GetCount()<<endl;</span></p> <p style="text-align: left; text-indent: 42pt" align="left"><span style="color: teal">// traverse the entire map                    #4</span></p> <p style="text-align: left; text-indent: 42pt" align="left"><span style="color: teal">size_t index = 0;</span></p> <p style="text-align: left; text-indent: 42pt" align="left"><span style="color: teal">const char* pszKey;</span></p> <p style="text-align: left; text-indent: 42pt" align="left"><span style="color: teal">POSITION ps = mp.GetStartPosition();</span></p> <p style="text-align: left; text-indent: 42pt" align="left"><span style="color: teal">while( ps )</span></p> <p style="text-align: left; text-indent: 42pt" align="left"><span style="color: teal">{   </span></p> <p style="text-align: left; text-indent: 63pt" align="left"><span style="color: teal">mp.GetNextAssoc(ps, pszKey, point);</span></p> <p style="text-align: left; text-indent: 63pt" align="left"><span style="color: teal">printf("index: %d, m_x: %d, m_y: %d\n", ++index, point.m_x, point.m_y);</span></p> <p style="text-align: left; text-indent: 42pt" align="left"><span style="color: teal">}</span></p> <p style="text-align: left; text-indent: 42pt" align="left"><span style="color: teal">return 0;</span></p> <p style="text-align: left; text-indent: 21pt" align="left"><span style="color: teal">}</span></p> <p style="text-align: left; text-indent: 21pt" align="left"><span style="color: teal">浠g爜涓紝鎴戝凡緇忕粰鍑轟簡涓浜涙敞閲婏紝鎴戝悓鏍峰緩璁鑰呬滑錛岀敤鑻辨枃鍦ㄤ唬鐮佷腑娉ㄩ噴錛岃繖鏍風殑濂藉瀹炲湪鏄お澶氫簡銆傚挨鍏跺湪浠g爜闇瑕佸湪涓嶅悓緙栫爜鐨勬搷浣滅郴緇熶笂璋冭瘯鐨勬椂鍊欍?/span></p> <p style="text-align: left; text-indent: 21pt" align="left"><span style="color: teal">瀵逛簬CMap榪欎釜綾伙紝鎴戜笉寰椾笉鐫閲嶅暟鍡︿竴涓嬬殑鏄細閬嶅巻鎿嶄綔浠ュ強鍙栦笅鏍囥愩戞搷浣滐紝褰撶劧榪樻湁閭d釜浠ゅ緢澶氫漢鍥版儜涓嶅凡鐨凙RG_KEY鍒板簳搴旇濡備綍閫夋嫨鐨勯棶棰樸?/span></p> <p style="text-align: left; text-indent: 21pt" align="left"><span style="color: teal">閬嶅巻錛岀湅娉ㄩ噴#4錛岃嚦浜嶱OSITION鐨勫惈涔夛紝璇峰湪鏈┖闂達紝鏌ョ湅鍏跺畠鏂囩珷銆傚厛浣跨敤GetStartPosition()鍑芥暟鑾峰緱琛ㄥご鐨勪綅緗紝鐒跺悗錛屾垜浠彲浠ヤ嬌鐢℅etNextAssoc鍑芥暟鏉ラ亶鍘嗐侴etNextAssoc(POSITION& rNextPosition, KEY& rKey, VALUE& rValue)鍑芥暟鐨勫弬鏁板煎緱璇存槑涓涓嬶紝澶у鐪嬪埌錛?涓弬鏁伴兘鏄紩鐢紝鑰岀涓涓槸rNextPosition錛岄【鍚嶆濅箟錛屽湪鍑芥暟榪斿洖涔嬪悗錛屽畠灝嗕細鎸囧儚涓嬩竴涓厓緇勶紝褰撶劧榪欐槸鍦ㄨ〃榪樻湭閬嶅巻瀹岀殑鏃跺欙紝鍚﹀垯錛屽畠灝嗚緗負絀猴紙NULL錛夈?/span></p> <p style="text-align: left; text-indent: 21pt" align="left"><span style="color: teal">銆愩戯紝鍒╃敤涓嬫爣鍙栧厓绱犵殑榪欎釜鎿嶄綔絎︼紝鍦–Map涓閲嶈澆錛岀敤鏉ヨ繑鍥炴寚瀹欿ey鍊兼暟鎹殑寮曠敤錛屼笉榪囧湪娉ㄩ噴#3澶勶紝瀵逛簬鍏堝彇"4th"榪欎釜Point鐨勫紩鐢ㄧ劧鍚庤祴鍊肩殑鐢ㄦ硶錛岀湅璧鋒潵錛屼技涔庢湁鐐硅仾鏄庤繃浜嗗ご錛屽洜涓哄湪榪欎箣鍓嶏紝鎴戜滑榪樻病鏈夋彃鍏?4th"鎵瀵瑰簲鐨勫厓緇勶紝浣嗘槸錛岀▼搴忓嵈鑳芥甯哥殑榪愯錛佷負浠涔堬紵鍏跺疄錛岃繖鏍風殑鐢ㄦ硶鏄崄鍒嗘紜殑錛屽洜涓篊Map姣曠珶涓嶆槸鏁扮粍錛屽畠鏄病鏈夎竟鐣岀殑錛屽綋CMap鍦ㄨ幏寰椾竴涓畠鏃犳硶鏌ヨ鍒扮殑Key鍊肩殑鏃跺欙紝瀹冧細灝嗚繖涓狵ey浠ュ強涓涓┖鐨勬暟鎹被鍨嬭拷鍔犲埌Hash琛ㄤ腑鍘伙紝浠庤屼繚璇佷簡涓婇潰鐨勭▼搴忓彲浠ユ棤璇殑榪愯銆?/span></p> <p style="text-align: left; text-indent: 21pt" align="left"><span style="color: teal">鎴戜滑宸茬粡璇磋繃錛孉RG_KEY鏄綔涓虹被鍨嬪弬鏁頒紶鍏Map鐨勶紝浣嗗茍涓嶆槸浠諱綍綾誨瀷閮藉彲浠ヤ綔涓篈RG_KEY浼犲叆鐨勩備負浠涔堬紵鐪嬫牱瀛愶紝榪欐涓嶅緱涓嶇畝鍗曠殑璇磋Hash琛ㄧ殑鏁e垪鍑芥暟浜嗐傛瘡涓狧ash琛紝鎬諱細浣跨敤涓浜涙暎鍒楀嚱鏁幫紝鐢ㄦ潵鏌ユ壘Key鎵瀵瑰簲鐨刅alue錛岀悊鎯崇姸鎬佷笅錛屾垜浠綋鐒跺笇鏈汬ash琛紝灝辨槸涓涓暟緇勶紝铏界劧榪欎笉鍙兘錛屼笉榪囪繖鏍風悊瑙o紝鍙互甯姪鎴戜滑鏇村ソ鐨勭悊瑙ash琛ㄧ殑鐗╃悊緇撴瀯錛屽氨璁╂垜浠殏鏃舵妸瀹冪湅鎴愪竴涓暟緇勫惂銆傛暟緇勬繪槸浣跨敤涓嬫爣鏉ョ洿鎺ヨ幏鍙栧厓绱犵殑瀛樺偍鍦板潃錛岃屼笅鏍囷紝鏄劇劧搴旇鏄釜闈炶礋鏁存暟錛屼粠鑰孒ash琛紝涔熷簲璇ュ叿澶囪繖鏍風殑鐗規э紝鑷沖皯蹇呴』瀛樺湪鏌愮綆楁硶鍙互浣夸紶鍏ョ殑Key鍙互鐩存帴鐨勮漿鍖栦負涓涓潪璐熺殑鏁存暟錛岃繖涔熷氨鏄疉RG_KEY鐨勯夋嫨鏍囧噯銆備粠鑰屽璞°佸紩鐢ㄦ棤璁哄浣曢兘涓嶅簲璇ヤ綔涓篈RG_KEY鎴愪負CMap鐨勭被鍨嬪弬鏁幫紝鑰宨nt銆乽nsigned int銆佹寚閽堜互鍙婂湴鍧灝辨垚涓轟簡ARG_KEY鐨勫父鐢ㄧ被鍨嬪弬鏁幫紝鍏跺疄涔熷氨鏄偅浜涚被浼間簬鏁村瀷鐨勬暟鎹被鍨嬨傚父甯哥湅鍒頒竴浜涗漢鍦ㄧ敤CMap鐨勬椂鍊欙紝璇曞浘浣跨敤CString浣滀負CMap涓瑼RG_KEY鐨勭被鍨嬪弬鏁幫紝榪欐槸搴旇琚籂姝g殑鏂瑰悜鎬ч敊璇紝浣嗘湁浜涗漢浼間箮浼氱悊鐩存皵澹殑鍙嶉┏鎴戯紝鍥犱負浠栦滑鍙戠幇綾誨瀷鍙傛暟KEY鏄彲浠ヤ嬌鐢–String鐨勶紝榪欏緢濂囨悧錛熸垜璇磋繃KEY涓嶈兘浣跨敤CString鍚楋紵涔嬫墍浠EY鍙互浣跨敤CString鑰孉RG_KEY鍗寸敤鐨勬槸LPCTSTR錛岄偅鏄洜涓篊String閲嶈澆浜唎perator==(const char*)榪欎釜鍒ょ瓑鎿嶄綔絎︼紝褰揅Map浠嶩ash琛ㄤ腑鑾峰緱KEY涔嬪悗錛屽畠浼氬皢ARG_KEY涓嶬EY鐩存帴鐩告瘮杈冦傜湡姝e瓨浜嶤Map鍐呴儴鐨勬槸KEY錛屼篃灝辨槸CString銆傝繖涔熷氨鏄負浠涔堬紝鎴戜滑緇忓父浼氱湅鍒癈Map琚疄鍖栨垚CMap<CString, LPCTSTR/*鐩稿綋浜巆onst char*錛岄潪Unicode鎯呭喌涓?/, CString錛孋String&>榪欐牱鐨勪竴涓洓涓嶅儚瀹炲寲綾葷殑鍘熷洜錛岃嚦浜嶤Map鐨勬晥鐜囦紭鍖栭棶棰橈紝鎴戜滑浼氬湪浠ュ悗鐨勬枃绔犱腑緇х畫涓庡ぇ瀹舵帰璁ㄣ?/span></p> <p style="text-align: left; text-indent: 21pt" align="left"><span style="color: teal">CMap</span><span style="color: teal">鐨勭‘鏄釜寰堜笉閿欑殑鏁版嵁緇撴瀯錛屽挨鍏跺湪浣犲緩绔嬩竴涓瓧鍏哥殑鏃跺欍傛瘮濡俰dealsoft鐨勫惈涔夋槸"鏇沖厜縐戞妧"錛岃繖灝辨槸涓涓厓緇勶紝涔熷氨鏄竴涓狿air錛孠ey鏄?idealsoft"錛岃孷alue鏄?鏇沖厜縐戞妧"銆?/span></p>====================================================================<br />#include   <afxwin.h> <br />#include   <afxtempl.h> <br />void   main() <br />{ <br />AfxWinInit(::GetModuleHandle(NULL),   NULL,   ::GetCommandLine(),   0); <br />CMap <int,   int,   CString,   CString>   m_cMap; <br />m_cMap.SetAt(9923033,     "寮犱笁 "); <br />m_cMap.SetAt(9826033,     "寮燗 "); <br />m_cMap.SetAt(9923063,     "寮燘 "); <br />m_cMap.SetAt(9923093,     "寮燙 "); <br />CString   strName; <br />m_cMap.Lookup(9923063,   strName); <br />AfxMessageBox(strName); <br />} <br /><br /><br /><img src ="http://m.shnenglu.com/wrhwww/aggbug/158802.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/wrhwww/" target="_blank">wrh</a> 2011-10-21 09:38 <a href="http://m.shnenglu.com/wrhwww/archive/2011/10/21/158802.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>璇誨彇浜嗕竴涓猙itmap錛屾妸瀹冪殑涓浜涢鑹插兼敼鎴愬彟澶栦竴縐嶉鑹層傝繖涓庝箞鍔炲晩錛燂紵 http://m.shnenglu.com/wrhwww/archive/2011/08/26/154422.htmlwrhwrhFri, 26 Aug 2011 06:59:00 GMThttp://m.shnenglu.com/wrhwww/archive/2011/08/26/154422.htmlhttp://m.shnenglu.com/wrhwww/comments/154422.htmlhttp://m.shnenglu.com/wrhwww/archive/2011/08/26/154422.html#Feedback0http://m.shnenglu.com/wrhwww/comments/commentRss/154422.htmlhttp://m.shnenglu.com/wrhwww/services/trackbacks/154422.html{   RGB(128,128,128),   ::GetSysColor(COLOR_BTNSHADOW)   },  
{   RGB(192,192,192),   ::GetSysColor(COLOR_BTNFACE)   },  
{   RGB(255,255,255),   ::GetSysColor(COLOR_BTNHILIGHT)}  
};  

CBitmap   Bitmap;  
Bitmap.LoadMappedBitmap(IDB_BITMAP,   0,   ColorMap,   3);


BOOL   LoadMappedBitmap(
                UINT   nIDBitmap,                               //浣嶅浘鐨勬爣璇?
                UINT   nFlags   =   0,                     //閫氬父鎯呭喌涓嬩負0錛屽綋灝嗚浣嶅浘浣?
        涓哄睆钄戒綅鍥句嬌鐢ㄦ椂璇ュ弬鏁頒負CMB_MASKED
                LPCOLORMAP   lpColorMap   =   NULL,  
                int   nMapSize   =   0);

銆愯繑鍥炲箋戣鎴愬憳鍑芥暟璋冪敤鎴愬姛榪斿洖涓涓潪闆跺鹼紝鍚﹀垯榪斿洖闆躲?
銆愬弬   鏁般?
        nIDBitmap
           
      nFlags

閫氬父鎯呭喌涓嬩負0錛屽綋灝嗚浣嶅浘浣滀負灞忚斀浣嶅浘浣跨敤鏃惰鍙傛暟涓篊MB_MASKED銆?

lpColorMap

涓涓寚鍚慍OLORMAP鏁版嵁綾誨瀷鏁扮粍鐨勬寚閽堛侰OLORMAP鐨勬暟鎹粨鏋勫涓嬶細

typedef   struct   _COLORMAP{

COLORREF   from;   //   閫昏緫璋冭壊鏉跨殑棰滆壊

COLORREF   to;   //   鐗╃悊璋冭壊鏉跨殑棰滆壊

}COLORMAP,   FAR*   LPCOLORMAP;

nMapSize

鎸囧畾鏁扮粍涓暟緇勫厓绱犵殑涓暟銆?

銆愭敞   閲娿戞湰鎴愬憳鍑芥暟鍙互灝嗕竴涓澶囨棤鍏充綅鍥捐鍏Bitmap綾葷殑瀵硅薄錛屽茍鏍規嵁閫昏緫璋冭壊鏉夸笌鐗╃悊璋冭壊鏉跨殑鏄犲皠鍏崇郴浣跨郴緇熸紜湴鏄劇ず璇ヤ綅鍥俱?br />

_COLORMAP   iColor[2]={{RGB(191,191,196),::GetSysColor(COLOR_3DFACE)},{RGB(192,192,192),::GetSysColor(COLOR_3DFACE)}};
m_bmToolbarHi.LoadMappedBitmap(   IDB_TOOLBARHI,0,iColor,2);
        m_wndToolBar.SetBitmap(   (HBITMAP)m_bmToolbarHi   );
榪欐槸鎴戠殑浠g爜錛屽彲浠栦笉宸ヤ綔鍟?~(

鏈変釜闂鎻愰啋涓涓嬶細
搴撲腑鐨凩oadMappedBitmap鍑芥暟瀵硅秴榪?56鑹茬殑鍥懼儚濂藉儚鏃犳晥錛岃屼笖浼氭鎺夈?
瀵逛笉瓚呰繃256鑹茬殑鍥懼儚鏄湁鏁堢殑銆?

鎴戠煡閬撲簡錛屾垜鐨勫浘鍍忔槸256鑹茬殑錛岃繖涓嶉敊銆備絾鏄漿鎹㈢殑棰滆壊濂藉儚涔熺畻涓縐嶉鑹層傛垜鎶婃垜瀵煎嚭鐨勫浘鍍忚壊鏁版敼鎴?28錛岀粨鏋滃氨濂戒簡   :D



wrh 2011-08-26 14:59 鍙戣〃璇勮
]]>
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美日韩一区二区三区高清| 亚洲欧美日韩视频二区| 欧美国产日韩免费| 美女999久久久精品视频| 亚洲欧美视频| 午夜亚洲视频| 久久精品人人爽| 蜜桃久久av| 欧美xxx成人| 欧美午夜精品久久久久免费视 | 一区二区在线视频观看| 在线看片成人| 一区二区三区成人精品| 欧美一级午夜免费电影| 玖玖在线精品| 日韩香蕉视频| 欧美一区二区三区免费看| 久久国产视频网站| 欧美精品在线观看播放| 国产精品视频内| 亚洲高清视频中文字幕| 一区二区三区免费观看| 欧美在线一二三区| 亚洲激情网站| 日韩小视频在线观看| 午夜欧美不卡精品aaaaa| 久久婷婷影院| 国产精品青草综合久久久久99| 国内精品久久久久影院 日本资源| 黄色成人在线| 亚洲一区免费看| 欧美91福利在线观看| 在线亚洲一区| 欧美电影在线播放| 国产一区二区剧情av在线| 日韩视频中文| 麻豆av一区二区三区| 韩国av一区| 另类成人小视频在线| 欧美日韩精品免费观看视一区二区| 欧美日韩一区二区在线视频| 国产欧美另类| 一区二区三区你懂的| 久久久久久久一区二区三区| 亚洲国产视频一区| 性欧美xxxx大乳国产app| 欧美国产第一页| 国产亚洲精品久久飘花| 亚洲视频香蕉人妖| 亚洲高清在线播放| 久久av在线| 国产精品久久久久久久久免费桃花 | 亚洲一区二区少妇| 欧美日韩精品一区二区在线播放| 亚洲高清免费| 欧美freesex交免费视频| 久久av二区| 在线视频观看日韩| 欧美成va人片在线观看| 久久人人爽国产| 亚洲国产99| 亚洲国产精品久久91精品| 美国十次成人| 日韩一级裸体免费视频| 亚洲清纯自拍| 欧美日韩一二区| 亚洲一区欧美| 亚洲一区二区网站| 国产色视频一区| 久久久久久久综合色一本| 久久精品国产清高在天天线| 狠狠色噜噜狠狠色综合久| 欧美成年人在线观看| 欧美成人午夜激情视频| 99视频一区二区三区| 一区二区三区黄色| 国产精品永久免费在线| 久久高清一区| 久久夜色精品| 中文在线一区| 欧美sm极限捆绑bd| 欧美成人免费观看| 亚洲一区二区四区| 欧美专区日韩专区| 亚洲精品免费在线播放| 日韩午夜三级在线| 国产情侣一区| 欧美激情四色 | 夜夜夜精品看看| 国产人成精品一区二区三| 久久影视三级福利片| 欧美aa在线视频| 一本大道久久精品懂色aⅴ | 欧美国产一区二区在线观看| 欧美高清不卡| 小黄鸭精品密入口导航| 久久国产欧美| 一区二区久久| 久久超碰97中文字幕| 最新成人在线| 亚洲一区国产| 日韩视频第一页| 性欧美1819sex性高清| 日韩视频国产视频| 久久精品理论片| 亚洲视频一区二区在线观看| 久久精品国产免费观看| 亚洲与欧洲av电影| 美女免费视频一区| 久久久精品国产99久久精品芒果| 欧美精品www在线观看| 欧美一区二区成人| 欧美日韩一区二区欧美激情 | 激情综合色丁香一区二区| 日韩视频在线一区二区| 在线观看欧美| 欧美一区二区三区成人| 亚洲一区视频在线观看视频| 久久久精品国产一区二区三区| 亚洲一区三区电影在线观看| 欧美88av| 亚洲国产欧美在线人成| 激情久久中文字幕| 亚洲欧美日韩另类| 亚洲视频在线观看| 欧美日本一区二区三区| 亚洲第一福利视频| 亚洲第一福利在线观看| 久久精品九九| 麻豆久久精品| 红桃视频欧美| 久久国产主播| 久久久夜夜夜| 国产日韩精品一区二区三区| 一本一道久久综合狠狠老精东影业| 亚洲黄网站在线观看| 蜜臀a∨国产成人精品| 欧美不卡高清| 亚洲人线精品午夜| 欧美久久婷婷综合色| 亚洲日韩成人| 夜夜嗨av一区二区三区免费区| 免费观看不卡av| 亚洲第一在线综合在线| 亚洲毛片一区| 欧美日韩色一区| 99精品欧美一区二区三区| 国产精品99久久不卡二区| 欧美视频一区二区三区在线观看| 日韩一二三区视频| 亚洲欧美中日韩| 国产一区二区三区的电影 | 久久精品夜色噜噜亚洲a∨| 亚洲永久免费观看| 欧美在线视频免费观看| 国产美女诱惑一区二区| 午夜精品久久久久久久99水蜜桃| 欧美夜福利tv在线| 国产一区二区三区电影在线观看| 久久精品一区蜜桃臀影院| 牛牛国产精品| 一区二区三区欧美视频| 国产精品乱子久久久久| 久久国产欧美精品| 亚洲日本成人网| 小处雏高清一区二区三区| 激情文学综合丁香| 欧美另类视频| 久久福利视频导航| 91久久精品美女高潮| 亚洲欧美在线aaa| 亚洲电影网站| 国产精品男女猛烈高潮激情| 亚洲一区二区三区乱码aⅴ| 老司机午夜精品| 日韩一级精品| 亚洲高清资源| 国产婷婷色综合av蜜臀av| 欧美暴力喷水在线| 亚洲欧美日韩成人| 欧美国产三级| 欧美在线免费观看亚洲| 日韩视频免费观看高清完整版| 国产精品三级视频| 欧美777四色影视在线| 香蕉av777xxx色综合一区| 亚洲精品久久久久| 裸体一区二区| 久久精品国产99| 99精品99| 亚洲国产精品福利| 国产日韩欧美二区| 欧美视频精品在线| 欧美成人高清视频| 欧美在线免费视屏| 亚洲一区视频在线| 99精品久久免费看蜜臀剧情介绍| 免费的成人av| 久久精品国产综合精品| 亚洲欧美日韩一区二区三区在线观看|