锘??xml version="1.0" encoding="utf-8" standalone="yes"?> 鎻愮ず“initialization failure 0x00000002”銆?/p>
鎯沖嵏杞絫m2008錛岀粨鏋滄壘涓嶅埌“tm2008 preview.msi”錛屾棤娉曞嵏杞斤紝閲嶆柊瀹夎涔熻鍏堝嵏杞斤紝紜疄娌″姙娉曚簡銆?/p>
鍚庢潵鍒扮綉涓婃壘絳旀錛岀粓浜庤В鍐熾?/p>
涓嬭澆寰蔣鎻愪緵鐨刉indows Installer娓呯悊瀹炵敤宸ュ叿錛?a >http://download.microsoft.com/download/e/9/d/e9d80355-7ab4-45b8-80e8-983a48d5e1bd/msicuu2.exe錛堝畼鏂硅鏄?a >http://support.microsoft.com/kb/290301錛?/p>
瀹夎鍚庡湪C:\Program Files\Windows Installer Clean Up涓嬫湁涓猰sicuu.exe錛岃繍琛岋紝鎵懼埌TM2008錛岄変腑瀹冿紝鐐箁emove錛岀劧鍚庡氨鍙互閲嶆柊瀹夎TM2008浜嗐?/p>
娉細瀹炶返鍙戠幇錛屼笉涓瀹氫細鍦ㄥ垪琛ㄩ噷鍙戠幇TM2008瀛楃溂錛屾鏃跺彲浠ユ壘鏄惁瀛樺湪[1.5.535]綾諱技浜庤繖鏍風殑淇℃伅錛岃嫢鏈夛紝閫変腑鐐箁emove鍗沖彲瑙e喅銆? 鐒跺悗閲嶆柊瀹夎TM2008錛屼竴鍒囨甯革紝OK銆?/p>
----------------------------------------------
姝ゅ唴涓鴻漿甯?from: http://blog.163.com/chen_chb/blog/static/29602002009880512839/
浠婂ぉ鍚姩鑵捐TM鐨勬椂鍊欒鍗囩駭錛屾病娉ㄦ剰鐐逛簡紜畾錛岀粨鏋滃崌綰у畬鎴愶紝TM鍚姩澶辮觸銆?/p>
鎵規敞錛?br>浣跨敤windows Installer 瀹夎鐨勭▼搴忎細鍦?C:\WINDOWS\Installer 鐣欎笅鐥曡抗錛岋紝
濡傛灉鍝ぉ鎵嬬棐緇欏垹浜嗭紝錛屼及璁″嵏杞藉搴旂▼搴忓氨涓嶅緱琛屻?br>鍒版椂鍊欎嬌鐢?windows Installer 娓呯悊宸ュ叿鍚э紝錛屽ソ鍍忚 澶歳emove 鍑犳銆傘傛墠鑳芥垚鍔?
1 鍦∣nInitDialog ()涓?br> SetTimer錛?,100,null)
鍦∣nTimer(UINT nIDEvent) 涓?br> if( nIDEvent==1)
{
ShowWindow(sw_hide);
KillTimer(1);
}
///榪欑鏂規硶 浼氬嚭鐜?紼嬪簭鍦ㄦ樉紺哄櫒涓?闂竴涓嬬殑鏁堟灉銆傘傚嵆浣?timer 鏃墮棿寰堢煭 錛屼篃浼氭湁銆?br>
2 閲嶈澆 WM_WINDOWPOSCHANGING
鍦ㄩ噸杞藉嚱鏁板唴瀹炵幇錛?br> OnWindowPosChanging(WINDOWPOS FAR* lpwndpos)
{
if( !m_bShowWindow)
lpwndpos->flags &= ~SWP_SHOWWINDOW;
CDialog::OnWindowPosChanging(lpwndpos);
// TODO: Add your message handler code here
}
m_bShowWindow 鏄垜鐨勪竴涓彉閲忥紝鍒濆鍊間負false
// 濡傛灉 m_bShowWindow 涓鐩翠負false 錛岄偅涔堢▼搴忓氨瑙佷笉鍒頒漢浜嗐傘?br> 鎵浠ュ簲璇ョ粰 True
鍦∣nInitDialog ()涓?br> SetTimer錛?,1000,null)
鍦∣nTimer(UINT nIDEvent) 涓?br> if( nIDEvent==1)
{
m_bShowWindow =true;
KillTimer(1);
}
svn://proj/ | +-trunk +-branches +-tags榪欐槸涓涓爣鍑嗙殑甯冨眬錛宼runk涓轟富寮鍙戠洰褰曪紝branches涓哄垎鏀紑鍙戠洰褰曪紝tags涓簍ag瀛樻。鐩綍錛堜笉鍏佽淇敼錛夈備絾鏄叿浣撹繖鍑犱釜鐩綍搴旇濡備綍浣跨敤錛宻vn騫舵病鏈夋槑紜殑瑙勮寖錛屾洿澶氱殑榪樻槸鐢ㄦ埛鑷繁鐨勪範鎯?br>
杞嚜錛?span style="line-height: 20px; ">http://hi.baidu.com/sophiaandphilem/blog/item/b63912dff2f17e1263279851.html
Note: http://book.csdn.net/bookfiles/220/10022010453.shtml鏈夐潪甯稿ソ鐨勪嬌鐢ㄤ粙緇嶏紝璇︾粏鍏ㄩ潰銆?/p>
瀹夎濂紺VSNT鍚庯紝闇瑕佺敤鍛戒護琛岃緗敤鎴鳳紝瀵嗙爜錛屽惁鍒欎細鍑虹幇綾諱技I/O閿欒鐨勯棶棰橈細
鍋囪瑁呭湪浜?: C:/Program Files/CVS 涓?鍦ㄥ懡浠よ涓璠cmd]涓紝榪涘叆榪欎釜鏂囦歡澶癸紝榪愯鍛戒護錛?br style="line-height: normal; ">cvs -d C:\cvsfile passwd -a giles ,
next step ,input the password for user-giles ,restart the cvs serve ,you can use it now ...
Generally , you need to make user write the repository , so open the control panel---->Advanced -> unselect the All users are read item ...
Then , It is ok for you to enjoy it .. -----------------
---------------
compatibility options
CvsNT clients 閫変腑鍓嶄笁欏瑰氨濂斤紝涓嶉夌殑璇濓紝鍏煎鎬у樊鐐癸紝褰撶劧涓嶄細褰卞搷鑷繁浣跨敤銆?/font>
cvs -d C:\cvsfile passwd -r administrator -a giles , 榪欐牱giles鐢ㄦ埛鏈変簡綆$悊鍛樻潈闄愩傘?/font>
鏈濂芥妸cvs鐨勫偍瀛樺簱鏀懼湪C鐩橈紝涓嶇劧浼氬彂鐢熷悇鏍風殑璇″紓閿欒銆?/font>
2. CVS Control Panel 閲岀殑 Server Settings 涔熼渶瑕佽緗紝 涓嶇劧鏈夊彲鑳藉嚭鐜?no such domain鐨勬彁紺恒?/font>
3. 鏀寔瀛楃闆嗙殑闂錛?鍦ㄥ緩濂芥湇鍔″櫒鍚庯紝鍙抽敭鐐瑰嚮錛屽湪灞炴ч噷闈㈠彲浠ヤ慨鏀瑰瓧絎﹂泦銆?/p>
4. 濡傛灉鏈湴鑳借繛涓奀VS錛屼絾鏄眬鍩熺綉鍐呭彟澶栫殑鐢ㄦ埛榪炴帴涓嶄笂錛岄偅寰堝彲鑳芥槸windows 闃茬伀澧欑殑闂 銆?/p>
鎴戜滑闇瑕佸湪闃茬伀澧欑殑渚嬪閲岄潰娣誨姞 CVs.exe 鍜?榛樿鐨?2401绔彛 銆傘?/p>
濂界殑浣跨敤涔犳儻錛?/font>
1. One day ,One Commit .
2. Update before modifying the code.
3. Update before committing the code, or else you may encounter some conflicts.
Update 鐨勬椂鍊欙紝浼氭妸server涓殑浠g爜鍜屾湰鍦扮殑浠g爜榪涜merge 錛岃屼笉鏄畝鍗曠殑瑕嗙洊鏈湴浠g爜銆?/p>
濡傛灉commit涔嬪墠涓嶈繘琛寀pdate錛屽垯鐢變簬CVS涓嶅厑璁稿湪commit鐨勬椂鍊欒嚜鍔ㄨ繘琛宮erge錛屾瀬鏈夊彲鑳戒駭鐢熷啿紿併?/p>
涓鑸嬌鐢╱pdate鍜宑ommit灝卞彲浠ヤ簡銆?/p>
瑕佺粓姝㈢▼搴忥紝璇峰崟鍑?#8220;紜畾”銆?br>瑕佽皟璇曠▼搴忥紝璇峰崟鍑?#8220;鍙栨秷”銆?br>---------------------------
紜畾 鍙栨秷
---------------------------
log4cpp鏄釜鍩轟簬LGPL鐨勫紑婧愰」鐩紝鏄熀浜庝紭縐鐨勬棩蹇楀鐞嗚窡韙」鐩甁ava璇█鐨刲og4j縐繪榪囨潵鐨勩俵og4j浠嬬粛鐨勬枃妗e緢澶氾紝鍦╦ava棰嗗煙浣跨敤鐨勪篃姣旇緝騫挎硾錛岃岃繖涓姛鑳藉己澶х殑搴撳鍥藉唴鐨凜++璇█寮鍙戜漢鍛樺嵈浣跨敤鐨勪笉澶氥傝繖閲屼粠寮鍙戜漢鍛樹嬌鐢ㄧ殑瑙掑害浠嬬粛榪欎釜搴擄紝浣垮紑鍙戜漢鍛樼敤鏈灝戠殑浠d環灝藉揩鎺屾彙榪欑鎶鏈備笅闈㈠厛綆鍗曚粙緇嶄竴涓嬭繖涓」鐩殑浼樼偣錛堜篃鏄痩og4j鐨勪紭鐐癸級錛岀劧鍚庡垎鍘熺悊錛屾墜鍔ㄤ嬌鐢ㄦ楠わ紝閰嶇疆鏂囦歡椹卞姩鏂瑰紡浣跨敤姝ラ錛屽叾浠栬冭檻絳夋柟闈㈣繘琛岃璁恒備互涓嬭璁哄熀浜巐og4cpp0.3.4b銆?/p>
log4cpp鏈?涓富瑕佺殑緇勪歡錛歝ategories錛堢被鍒級銆乤ppenders錛堥檮鍔犵洰鐨勫湴錛夈佸拰 layouts錛堝竷灞錛夈傦紙涓轟簡鏂逛究澶у鐞嗚В錛屾枃涓敖閲忎嬌鐢ㄨ嫳鏂囧師璇嶏級
layout綾繪帶鍒惰緭鍑烘棩蹇楁秷鎭殑鏄劇ず鏍峰紡錛堢湅璧鋒潵鍍忎粈涔堬級銆俵og4cpp褰撳墠鎻愪緵浠ヤ笅layout鏍煎紡錛?/p>
|
appender綾葷敤鏉ヨ緭鍑烘棩蹇楋紙琚玪ayout鏍煎紡鍖栧悗鐨勶級鍒頒竴浜涜澶囦笂銆傛瘮濡傛枃浠躲乻yslog鏈嶅姟銆佹煇涓猻ocket絳夈傚彲浠ュ畾涔夎嚜宸辯殑 appender綾昏緭鍑烘棩蹇椾俊鎭埌鍒殑璁懼涓婏紝姣斿搴旂敤鑷韓鐨勬棩瀛愬鐞嗚繘紼嬨佹暟鎹簱絳夈俛ppender鍜宭ayout鐨勫叧緋繪槸layout闄勫湪 appender涓婏紝appender綾昏皟鐢╨ayout澶勭悊瀹屾棩蹇楁秷鎭悗錛岃褰曞埌鏌愪釜璁懼涓娿俵og4cpp褰撳墠鎻愪緵浠ヤ笅appender錛?/p>
|
category 綾葷湡姝e畬鎴愯褰曟棩蹇楀姛鑳斤紝涓や釜涓昏緇勬垚閮ㄥ垎鏄痑ppenders鍜宲riority錛堜紭鍏堢駭錛夈備紭鍏堢駭鎺у埗鍝被鏃ュ織淇℃伅鍙互琚繖涓猚ategory璁板綍錛屽綋鍓嶄紭鍏堢駭鍒嗕負錛歂OTSET, DEBUG, INFO, NOTICE, WARN, ERROR, CRIT, ALERT 鎴?FATAL/EMERG 銆傛瘡涓棩蹇椾俊鎭湁涓紭鍏堢駭錛屾瘡涓猚ategory鏈変釜浼樺厛綰э紝褰撴秷鎭殑浼樺厛綰уぇ浜庣瓑浜巆ategory鐨勪紭鍏堢駭鏃訛紝榪欎釜娑堟伅鎵嶄細琚玞ategory璁板綍錛屽惁鍒欒蹇界暐銆備紭鍏堢駭鐨勫叧緋誨涓嬨俢ategory綾誨拰appender鐨勫叧緋繪槸錛屽涓猘ppender闄勫湪category涓婏紝榪欐牱涓涓棩蹇楁秷鎭彲浠ュ悓鏃惰緭鍑哄埌澶氫釜璁懼涓娿?/p>
NOTSET < DEBUG < INFO < NOTICE < WARN < ERROR < CRIT < ALERT < FATAL = EMERG
category琚粍緇囨垚涓涓爲錛屽瓙category鍒涘緩鏃朵紭鍏堢駭緙虹渷NOTSET錛宑ategory緙虹渷浼氱戶鎵跨埗category鐨?appender銆傝屽鏋滀笉甯屾湜榪欑appender鐨勭戶鎵垮叧緋伙紝log4cpp鍏佽浣跨敤additivity 鏍囩錛屼負false鏃舵柊鐨刟ppender鍙栦唬category鐨刟ppender鍒楄〃銆?/p>
涓轟簡鏇村ソ鐨勭悊瑙d笂闈㈢殑姒傚康涓嬮潰浠ユ墜鍔ㄤ嬌鐢ㄦ柟寮忎婦渚嬨?/p>
鎵嬪姩浣跨敤log4cpp鐨勫熀鏈楠ゅ涓嬶細
|
鍙︿竴涓潪甯鎬紭縐鐨勭壒寰佸氨鏄氳繃璇誨彇閰嶇疆鏂囦歡錛岀‘瀹歝ategory銆乤ppender銆乴ayout絳夊璞°備篃鏄垜浠潪甯告帹鑽愮殑浣跨敤鏂瑰紡錛屽彲浠ョ伒媧誨湴閫氳繃閰嶇疆鏂囦歡瀹氫箟鎵鏈夊湴瀵硅薄鍙婂叾灞炴э紝涓嶇敤閲嶆柊緙栫爜錛屽姩鎬佹洿鏀規棩蹇楄褰曠殑絳栫暐銆?/p>
Log4cpp涓昏鎻愪緵浜?log4cpp::PropertyConfigurator 鍜宭og4cpp::SimpleConfigurator涓ょ鏈哄埗錛堟枃浠舵牸寮忥級錛屼絾 log4cpp::SimpleConfigurator灝嗘潵涓嶅啀鏀寔浜嗭紝鑰屼笖鏍煎紡闈炲父綆鍗曪紝榪欓噷灝變笉澶氳鏄庯紝鑷繁鐪嬫簮鐮佸惂銆?/p>
閰嶇疆鏂囦歡鐨勬牸寮忓拰log4j鐨勯厤緗枃浠朵竴鏍鳳紝鏄爣鍑嗙殑java灞炴ф枃浠舵牸寮忋備笅闈㈡槸闄勫甫鐨勪緥瀛愰厤緗枃浠訛細
|
閰嶇疆鏂囦歡璇硶濡備笅錛屼笉鏄緢瑙勮寖錛岀粨鍚堜笂闈㈢殑渚嬪瓙錛屽簲璇ュ彲浠ョ湅鎳傘?/p>
|
鍩烘湰浣跨敤姝ラ鏄細
涓嬮潰鏄釜綆鍗曠殑浣跨敤浠g爜錛屼嬌鐢ㄨ搗鏉ユ槸闈炲父鏂逛究鐨勶細
|
鎬ц兘闂錛屽彲鑳芥槸寰堝鎯充嬌鐢╨og4cpp鐨勭▼搴忓憳鍏沖績鐨勯棶棰樸傚湪鍙傝冭祫鏂?涓湁涓孌墊弿榪般傜粨璁哄氨鏄痩og4j浠ュ強log4cpp鏄互鎬ц兘涓洪瑕佺洰鏍囩殑錛涘鏋滃叧闂棩蹇楄褰曠殑璇濓紝瀵規ц兘褰卞搷鍙互蹇界暐錛涙墦寮鏃ュ織璁板綍錛屼富瑕佹秷鑰楁槸鍦ㄨ褰曞姩浣滐紝鑰屼笉鏄簱鐨勭鐞嗚繃紼嬶紱鎵浠ヤ綘灝藉彲鏀懼績鐨勪嬌鐢ㄣ傚疄鍦ㄨ娣辯┒鎬ц兘鐨勮瘽銆傚彲浠ヤ粠涓嬮潰鏂歸潰鎻愰珮錛?/p>
杈撳嚭鐨勬棩蹇楁秷鎭笉瑕佷嬌鐢ㄥ鏉傜殑杞崲鎴栬呭鐞嗭紝姣斿錛?sub1.debug(string("Current num is") + i + GetCurStat()); 榪欑鎯呭喌鍗充嬌涓嶈繘琛屾棩蹇楀鐞嗭紝鎷彿涓殑璇彞榪樻槸浼氭墽琛屻傚彉閫氭柟娉曟槸錛?/p>
|
瀹夊叏鎬ч棶棰樺浜庡晢涓氳蔣浠跺紑鍙戝彲鑳戒篃鏄棶棰樸傚彲鑳戒笉甯屾湜鍒漢閫氳繃淇敼閰嶇疆鏂囦歡鑾峰彇紼嬪簭鐨勮皟璇曠瓑紼嬪簭鍐呴儴榪愯鎯呭喌鐨勬棩蹇椾俊鎭傛瘮杈冪ǔ濡ョ殑鏂規鎴栬呮槸鍔犲瘑閰嶇疆鏂囦歡錛岃繍琛屼腑瑙e瘑錛岃緭鍑哄埌涓存椂鏂囦歡鍚庤鍙栵紱鎴栬呭湪鍙戣鐗堟湰閲岃鍙栭厤緗枃浠跺悗錛屽己琛屾妸浣庝簬鏌愪釜浼樺厛綰х殑category璁懼埌姣旇緝楂樼殑浼樺厛綰с?/p>
澶氱嚎紼嬪畨鍏ㄦч棶棰樸傚綋鍓峫og4cpp榪樻病鏈夊縐拌嚜宸辨槸澶氱嚎紼嬪畨鍏ㄧ殑錛屼笉榪囧叾浠g爜涓ぇ澶氭暟鍙兘鍐茬獊鐨勫湴鏂歸兘澧炲姞浜嗙嚎紼嬩簰鏂ユ帶鍒訛紝瀵瑰綰跨▼鐜搴旇闂涓嶅ぇ銆備絾涓轟簡鍔犲叆榪欎釜鐗規э紝linux涓嬬紪璇憀og4cpp鏃訛紝configure璇峰姞鍏?-with-pthreads 鎴栬?-with-omnithreads閫夐」銆俉in鐗堟湰宸茬粡鍔犲叆瀵筂S綰跨▼鐨勬敮鎸併?/p>
1. Logging and Tracing in C++ Simplified: Traveling the Road Last Traveled by a Previously Invented Wheel
http://soldc.sun.com/articles/logging.html
2. log4j 鎻愪緵浜嗗鏃ュ織璁板綍鐨勬帶鍒?br/>http://www-900.ibm.com/developerWorks/cn/java/jw-log4j/index.shtml
3. 浣跨敤Log4j榪涜鏃ュ織鎿嶄綔
http://www-900.ibm.com/developerWorks/cn/java/l-log4j/index.shtml
4. log4cpp涓婚〉
http://sourceforge.net/projects/log4cpp/
5. log4j涓婚〉
http://jakarta.apache.org/log4j/docs/index.html
6. log4cplus涓婚〉
http://log4cplus.sourceforge.net/
7. log4c涓婚〉
http://log4c.sourceforge.net/
鏉庣兢錛屽叧娉ㄤ簬緗戠粶瀹夊叏浜у搧鐨勫紑鍙戙佺爺絀訛紱杞歡寮鍙戣繃紼嬬瓑鏂歸潰銆傛偍鍙互閫氳繃liqun@nsfocus.com鍜屼粬鑱旂郴銆?/p>