锘??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲免费福利在线视频,亚洲国产一区国产亚洲,久久精品亚洲乱码伦伦中文http://www.tkk7.com/gdws/category/48324.htmlj2se,j2ee寮鍙戠粍zh-cnThu, 14 Apr 2011 19:50:11 GMTThu, 14 Apr 2011 19:50:11 GMT60MapGuide鏈嶅姟鍣ㄦ簮鐮佸垎鏋?/title><link>http://www.tkk7.com/gdws/articles/348330.html</link><dc:creator>甯呭瓙</dc:creator><author>甯呭瓙</author><pubDate>Thu, 14 Apr 2011 16:25:00 GMT</pubDate><guid>http://www.tkk7.com/gdws/articles/348330.html</guid><wfw:comment>http://www.tkk7.com/gdws/comments/348330.html</wfw:comment><comments>http://www.tkk7.com/gdws/articles/348330.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/gdws/comments/commentRss/348330.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/gdws/services/trackbacks/348330.html</trackback:ping><description><![CDATA[ <span id="eqgaoqe" class="Apple-style-span" style="WORD-SPACING: 0px; FONT: medium Simsun; TEXT-TRANSFORM: none; COLOR: rgb(0,0,0); TEXT-INDENT: 0px; WHITE-SPACE: normal; LETTER-SPACING: normal; BORDER-COLLAPSE: separate; orphans: 2; widows: 2; webkit-border-horizontal-spacing: 0px; webkit-border-vertical-spacing: 0px; webkit-text-decorations-in-effect: none; webkit-text-size-adjust: auto; webkit-text-stroke-width: 0px"> <span id="gseek0u" class="Apple-style-span" style="FONT-SIZE: 14px; LINE-HEIGHT: 21px; FONT-FAMILY: verdana, sans-serif; TEXT-ALIGN: left"> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">鍚屾牱錛屽湪浠嬬粛MapGuide 鏈嶅姟鍣ㄥ浣曞鐞嗘灇涓捐祫婧愭搷浣滀箣鍓嶏紝璁╂垜浠鍏堟潵鐪嬬湅MapGuide 鏈嶅姟鍣ㄧ敤浜庡鐞嗘湇鍔¤姹傚拰鎿嶄綔鐨勭被錛屽浘19鈥?鏄劇ず鏈嶅姟璇鋒眰澶勭悊鍣ㄧ被鐨勭被鍥撅紝鍥?9鈥?0鏄劇ず浜?jiǎn)鎿嶄綔澶勭悊鍣ňc葷殑綾誨浘銆?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"> <a style="COLOR: rgb(51,102,153); TEXT-DECORATION: none" > <img title="clip_image002" style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height="311" alt="clip_image002" src="http://p.blog.csdn.net/images/p_blog_csdn_net/mapguide_inside/624109/o_clip_image002_thumb_633969065442477500.gif" width="525" border="0" /> </a> </p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"> <a style="COLOR: rgb(51,102,153); TEXT-DECORATION: none" name="_Ref247889725">鍥?span class="Apple-converted-space">聽(tīng)</span></a>19鈥?0 鏈嶅姟璇鋒眰澶勭悊鍣ㄧ被鐨勭被鍥?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"> <a style="COLOR: rgb(51,102,153); TEXT-DECORATION: none" > <img title="clip_image004" style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height="739" alt="clip_image004" src="http://p.blog.csdn.net/images/p_blog_csdn_net/mapguide_inside/624109/o_clip_image004_thumb_633969065483415000.gif" width="509" border="0" /> </a> </p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"> <a style="COLOR: rgb(51,102,153); TEXT-DECORATION: none" name="_Ref247889912">鍥?span class="Apple-converted-space">聽(tīng)</span></a>19鈥?1 鎿嶄綔澶勭悊鍣ㄧ被鐨勭被鍥?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">MapGuide鎻愪緵浜?jiǎn)璧勬簮鏈嶅姟銆佽绱犳湇鍔$瓑澶氱鏈嶅姟錛屾瘡縐嶆湇鍔″寘鍚簡(jiǎn)澶ч噺鎿嶄綔銆侻apGuide涓烘瘡縐嶆湇鍔℃彁渚涗簡(jiǎn)涓涓湇鍔¤姹傚鐞嗗櫒綾伙紝鐢ㄤ簬澶勭悊榪欎簺鏈嶅姟鎵鎻愪緵鐨勬搷浣滐紝渚嬪MgResourceServiceHandler銆丮gFeatureServiceHanlder絳夈傝繖浜涚被閮界戶(hù)鎵胯嚜IMgServiceHandler錛屽茍涓斿疄鐜頒簡(jiǎn)鏂規(guī)硶IMgServiceHandler::ProcessOperation(...)銆侻apGuide浣跨敤宸ュ巶綾籑gServiceHanlderFactory鏉ュ垱寤轟竴涓湇鍔¤姹傚鐞嗗櫒綾葷殑瀹炰緥錛岀粰瀹氫竴涓湇鍔D錛岃皟鐢ㄦ柟娉昅gServiceHandlerFactory::GetHandler(...)鍙互鍒涘緩瀵瑰簲鐨勬湇鍔¤姹傚鐞嗗櫒綾葷殑瀹炰緥銆?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">瀵逛簬鏈嶅姟涓殑姣忕鎿嶄綔錛孧apGuide涔熸彁渚涗簡(jiǎn)鐩稿簲鐨勬搷浣滃鐞嗗櫒綾匯備粠鍥?9鈥?0鍙互鐪嬪埌錛屾搷浣滃鐞嗗櫒綾誨垎涓哄洓涓眰嬈★紝鏈楂樹(shù)竴灞傛槸綾籌MgOperationHandler錛屽畠鏄墍鏈夋搷浣滃鐞嗙被鐨勫熀綾伙紝絎簩灞傛槸綾籑gServiceOperation錛岀涓夊眰鏄被Mg<strong><em style="FONT-STYLE: italic">XXX</em></strong>Operation錛屸淴XX鈥濅唬琛ㄦ湇鍔″悕縐幫紝鍦ㄨ繖涓灞傛瘡縐嶇被鍨嬬殑鏈嶅姟閮芥湁涓涓搴旂殑綾伙紝渚嬪MgFeatureOperation銆丮gResourceOperation絳夛紝絎洓灞備負(fù)鐪熸璐熻矗宸ヤ綔鐨勬搷浣滃鐞嗗櫒綾伙紝姣忕鏈嶅姟涓殑姣忎釜鎿嶄綔閮芥湁涓涓搴旂殑鎿嶄綔澶勭悊鍣ㄧ被錛屾煇縐嶆湇鍔′腑鎿嶄綔澶勭悊鍣ㄧ被閮界戶(hù)鎵胯嚜鍚屼竴涓埗綾伙紝渚嬪MgEnumerateResource銆丮gSetResource閮界戶(hù)鎵胯嚜MgResourceOperation銆?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">鎺ヤ笅鏉ヨ鎴戜滑鐪嬬湅MapGuide鏈嶅姟鍣ㄥ浣曞鐞嗘灇涓捐祫婧愭搷浣滐紝榪欎釜鎿嶄綔嫻佺▼鐨勬椂搴忓浘濡傚浘 19鈥?1鎵紺恒?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"> <a style="COLOR: rgb(51,102,153); TEXT-DECORATION: none" > <img title="clip_image006" style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height="441" alt="clip_image006" src="http://p.blog.csdn.net/images/p_blog_csdn_net/mapguide_inside/624109/o_clip_image006_thumb_633969065494196250.gif" width="566" border="0" /> </a> </p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"> <a style="COLOR: rgb(51,102,153); TEXT-DECORATION: none" name="_Ref247977543">鍥?span class="Apple-converted-space">聽(tīng)</span></a>19鈥?2 MapGuide鏈嶅姟鍣ㄥ鐞嗘灇涓捐祫婧愭搷浣滅殑鏃跺簭鍥?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">1錛?鍦ㄧ嚎紼嬫睜涓壘涓涓┖闂茬殑綰跨▼鎵ц鎿嶄綔</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">MapGuide鏈嶅姟鍣ㄤ嬌鐢ㄤ簡(jiǎn)澶氱嚎紼嬪拰綰跨▼姹犵殑鎶鏈潵鎻愰珮鎿嶄綔澶勭悊鍜屽搷搴旇姹傜殑鎬ц兘銆傚湪MapGuide鏈嶅姟鍣ㄥ惎鍔ㄦ椂錛屼細(xì)鍒涘緩涓涓搷浣滆姹傞槦鍒楀拰涓涓敤浜庡鐞嗘搷浣滆姹傜殑綰跨▼姹犮傚綋涓涓搷浣滆姹傝繘鍏ユ搷浣滈槦鍒楋紝MapGuide鏈嶅姟鍣ㄤ細(xì)鍦ㄧ嚎紼嬫睜涓壘涓涓┖闂茬殑綰跨▼鎵ц鎿嶄綔銆傚鏋滄病鏈夌┖闂茬殑綰跨▼錛岄偅涔堣繖涓搷浣滆姹備細(xì)澶勪簬絳夊緟鐘舵侊紝鐩村埌綰跨▼姹犱腑鏈変簡(jiǎn)絀洪棽鐨勭嚎紼嬨?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">棣栧厛錛岃鎴戜滑鏌ョ湅涓涓嬫湇鍔″櫒鐨勫叆鍙e嚱鏁扮殑婧愪唬鐮侊紝鐪嬬湅鏈嶅姟鍣ㄦ槸濡備綍鍚姩鐨勩侻apGuide鏈嶅姟鍣ㄥ彲浠ュ儚鏅氱殑搴旂敤紼嬪簭涓鏍瘋繍琛岋紝榪樺彲浠ュ湪Windows鎿嶄綔緋葷粺鍙互榪愯涓篧indows鏈嶅姟錛屽湪Linux鎿嶄綔緋葷粺榪愯涓哄畧鎶よ繘紼嬶紝涓嬮潰鐨勪唬鐮佷腑鍙繚鐣欎簡(jiǎn)榪愯涓烘櫘閫氬簲鐢ㄧ▼搴忛儴鍒嗙殑浠g爜銆?/p> <table cellspacing="0" cellpadding="0" border="1"> <tbody> <tr> <td valign="top" width="576"> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">typedef ACE_Singleton SERVER;</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">int ACE_TMAIN(int argc, ACE_TCHAR *argv[])</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">{</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">int nResult = 0;</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">......</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">// 鍒濆鍖朅CE鏈嶅姟</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">ACE::init();</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">......</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">// 鏍規(guī)嵁鍛戒護(hù)琛屽弬鏁版墽琛屽搷搴旂殑鎿嶄綔</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">if((ACE_OS::strcasecmp(parameter, ACE_TEXT("?")) == 0) ||</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">(ACE_OS::strcasecmp(parameter,</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">MG_WCHAR_TO_TCHAR(MgResources::ServerCmdHelp)) == 0))</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">{</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">// 鏄劇ず鏈嶅姟鍣ㄥ懡浠よ鍙傛暟</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">ShowCommandlineHelp();</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">......</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">}</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">else if((ACE_OS::strcasecmp(parameter,</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">MG_WCHAR_TO_TCHAR(MgResources::ServerCmdRun)) == 0) ||</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">(ACE_OS::strcasecmp(parameter,</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">MG_WCHAR_TO_TCHAR(MgResources::ServerCmdInteractive)) == 0))</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">{</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">ACE_OS::printf(MG_WCHAR_TO_CHAR(MgResources::ServerCmdRunInfo));</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">......</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">// 浠ユ櫘閫氬簲鐢ㄧ▼搴忕殑鏂瑰紡榪愯鏈嶅姟鍣?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">nResult = SERVER::instance()->init(argc, argv);</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">if(0 == nResult)</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">{</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">// 鍚姩鏈嶅姟</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">nResult = SERVER::instance()->open();</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">// 緇堟鏈嶅姟</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">SERVER::instance()->fini();</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">}</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">......</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">}</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">......</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">// 緇堟ACE鏈嶅姟</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">ACE::fini();</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">return nResult;</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">}</p> </td> </tr> </tbody> </table> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"> </p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">鍦ㄤ笂闈㈢殑浠g爜涓紝鎴戜滑鍙互鐪嬪埌澶ч噺浠モ淎CE鈥濅負(fù)鍓嶇紑鐨勭被錛岃繖浜涚被鏄疉CE鑷傞厤閫氫俊鐜錛圓daptive Communication Environment錛夊伐鍏峰寘涓殑綾匯侫CE鏄竴涓紑婧愮殑宸ュ叿鍖咃紝瀹冨疄鐜頒簡(jiǎn)璁稿鐢ㄤ簬騫跺彂閫氫俊杞歡鐨勬牳蹇?jī)妯″紡銆侫CE鐨勭洰鏍囩敤鎴鋒槸鍦║NIX鍜學(xué)in32騫沖彴涓婂紑鍙戦珮鎬ц兘閫氫俊鏈嶅姟鍜屽簲鐢ㄧ殑寮鍙戣呫侫CE綆鍖栦簡(jiǎn)浣跨敤榪涚▼闂撮氫俊銆佷簨浠跺璺垎紱匯佹樉寮忓姩鎬侀摼鎺ュ拰騫跺彂鐨凮O緗戠粶搴旂敤鍜屾湇鍔$殑寮鍙戙侫CE鎻愪緵浜?jiǎn)涓緇勪赴瀵岀殑鍙鐢–++ Wrapper Facade錛堝寘瑁呭瑙傦級(jí)鍜屾鏋剁粍浠訛紝鍙法瓚婂縐嶅鉤鍙板畬鎴愰氱敤鐨勯氫俊杞歡浠誨姟錛屽叾涓寘鎷細(xì)浜嬩歡澶氳礬鍒嗙鍜屼簨浠跺鐞嗗櫒鍒嗘淳銆佷俊鍙峰鐞嗐佹湇鍔″垵濮嬪寲銆佽繘紼嬮棿閫氫俊銆佸叡浜唴瀛樼鐞嗐佹秷鎭礬鐢便佸垎甯冨紡鏈嶅姟鍔ㄦ侊紙閲嶏級(jí)閰嶇疆銆佸茍鍙戞墽琛屽拰鍚屾絳夈?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">綾籑gServer緇ф壙鑷狝EC宸ュ叿鍖呬腑鐨勭被ACE_NT_Service鎴朅CE_Service_Object錛屽搴斾簬鏈嶅姟鍣ㄧ殑涓葷嚎紼嬶紝鍥?9鈥?2鏄劇ず浜?jiǎn)鏈嶅姟鍣ㄤ溉澓拷E嬬被鐨勭被鍥俱侻gServer::svc()鏄富綰跨▼鐨勫叆鍙o紝璋冪敤鏂規(guī)硶MgServer::open()浼?xì)鍚姩涓痪U跨▼騫朵笖鎵ц鏂規(guī)硶MgServer::svc()錛岃皟鐢∕gServer::fini()浼?xì)缁堟涓痪U跨▼銆侻apGuide浣跨敤浜?jiǎn)Singleton妯℃澘ACE_Singleton灝哅gServer灝佽涓轟竴涓崟瀹炰緥綾伙紝涓轟簡(jiǎn)鏂逛究浣跨敤MapGuide浣跨敤typedef涓篈CE_Singleton瀹氫箟浜?jiǎn)涓涓埆鍚峉ERVER錛岃皟鐢ㄦ柟娉昐ERVER::instance()鍙互鍒涘緩綾籑gServer鐨勪竴涓疄渚嬨?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"> <a style="COLOR: rgb(51,102,153); TEXT-DECORATION: none" > <img title="clip_image008" style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height="194" alt="clip_image008" src="http://p.blog.csdn.net/images/p_blog_csdn_net/mapguide_inside/624109/o_clip_image008_thumb_633969065502321250.gif" width="255" border="0" /> </a> </p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"> <a style="COLOR: rgb(51,102,153); TEXT-DECORATION: none" name="_Ref248070447">鍥?span class="Apple-converted-space">聽(tīng)</span></a>19鈥?3 鏈嶅姟鍣ㄤ富綰跨▼綾葷殑綾誨浘</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">MgServer::svc()鏄富綰跨▼鐨勫叆鍙o紝璇ユ柟娉曚細(xì)鍒涘緩涓涓搷浣滆姹傞槦鍒楀拰涓涓敤浜庡鐞嗘搷浣滆姹傜殑綰跨▼姹狅紝瀹冪殑浠g爜濡備笅鎵紺恒備簨瀹炰笂錛岃鏂規(guī)硶榪樺畾涔変簡(jiǎn)鍏跺畠綾誨瀷鐨勯槦鍒楀拰綰跨▼姹狅紝涓轟簡(jiǎn)渚夸簬鐞嗚В鎴戜滑鐪佺暐鎺変簡(jiǎn)榪欎簺浠g爜銆?/p> <table cellspacing="0" cellpadding="0" border="1"> <tbody> <tr> <td valign="top" width="576"> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">int MgServer::svc()</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">{</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">MgServerManager* pServerManager = MgServerManager::GetInstance();</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">// 鍒涘緩綰跨▼綆$悊鍣ㄥ拰鎿嶄綔綰跨▼</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">ACE_Thread_Manager threadManager;</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">MgOperationThread clientThreads(threadManager,</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">pServerManager->GetClientThreads());</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">pServerManager->SetClientMessageQueue(clientThreads.msg_queue_);</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">MgClientAcceptor clientAcceptor(clientAddr, ACE_Reactor::instance(),</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">clientThreads.msg_queue_);</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">nResult = clientAcceptor.Initialize();</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">if(nResult == 0)</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">{</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">// 鍚姩綰跨▼姹?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">nResult = clientThreads.Activate();</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">if(nResult == 0)</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">{</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">// 閫氱煡鎿嶄綔綰跨▼鍋滄鎵ц</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">ACE_Message_Block* mb = new ACE_Message_Block(4);</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">if(mb)</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">{</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">mb->msg_type(ACE_Message_Block::MB_STOP);</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">clientThreads.putq(mb);</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">}</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">// 鍋滄鎿嶄綔綰跨▼</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">clientThreads.close();</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">// 絳夊緟鎵鏈夋搷浣滅嚎紼嬫墽琛屽畬鎴?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">threadManager.wait();</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">threadManager.close();</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">}</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">}</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">return nResult;</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">}</p> </td> </tr> </tbody> </table> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"> </p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">涓婇潰鐨勪唬鐮佷腑鍒涘緩涓涓被MgOperationThread鐨勫疄渚嬶紝璇ュ璞″垱寤轟簡(jiǎn)涓涓嚎紼嬫睜錛岀淮鎶や簡(jiǎn)涓涓搷浣滆姹傞槦鍒椼傜被MgOperationThread 緇ф壙鑷狝CE宸ュ叿鍖呬腑鐨勬ā鏉跨被AEC_Task錛屽搴斾簬鎿嶄綔綰跨▼錛屽浘19鈥?3鏄劇ず浜?jiǎn)鎿嶄綔绾拷E嬬被鐨勭被鍥俱侫CE_Task灝佽浜?jiǎn)鋼Q鍔★紝姣忎釜浠誨姟閮藉惈鏈変竴鎴栧涓嚎紼嬶紝浠ュ強(qiáng)涓涓簳灞傛秷鎭槦鍒椼傛柟娉旳CE_Task::svc()鏄嚎紼嬬殑鍚姩鍏ュ彛錛岃皟鐢ㄦ柟娉旳CE_Task::open()鐢ㄤ簬鍒濆鍖栦換鍔★紝璋冪敤鏂規(guī)硶ACE_Task::close()鐢ㄤ簬緇堟浠誨姟錛岃皟鐢ㄦ柟娉旳CE_Task::activate()鐢ㄤ簬鍚姩綰跨▼錛岃皟鐢ㄦ柟娉旳CE_Task::putq()鏀劇疆娑堟伅鍒頒換鍔$殑娑堟伅闃熷垪涓紝璋冪敤鏂規(guī)硶ACE_Task::getq()浠庝換鍔$殑娑堟伅闃熷垪涓彇鍑烘秷鎭?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"> <a style="COLOR: rgb(51,102,153); TEXT-DECORATION: none" > <img title="clip_image010" style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height="321" alt="clip_image010" src="http://p.blog.csdn.net/images/p_blog_csdn_net/mapguide_inside/624109/o_clip_image010_thumb_633969065600446250.gif" width="499" border="0" /> </a> </p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"> <a style="COLOR: rgb(51,102,153); TEXT-DECORATION: none" name="_Ref248076833">鍥?span class="Apple-converted-space">聽(tīng)</span></a>19鈥?4 鎿嶄綔綰跨▼綾葷殑綾誨浘</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">鏂規(guī)硶MgOperationThread::svc()鏄搷浣滅嚎紼嬬殑鍏ュ彛錛屽畠鐨勪唬鐮佸涓嬫墍紺恒?/p> <table cellspacing="0" cellpadding="0" border="1"> <tbody> <tr> <td valign="top" width="576"> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">int MgOperationThread::svc()</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">{</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">INT32 nResult = 0;</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">while (m_bActive)</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">{</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">ACE_Message_Block* messageBlock = NULL;</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">// 浠庢秷鎭槦鍒椾腑鍙栧嚭娑堟伅</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">while (getq(messageBlock) == -1)</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">{</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">......</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">}</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">if(messageBlock->msg_type() == ACE_Message_Block::MB_STOP)</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">{</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">m_bActive = false;</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">ACE_Message_Block* mb = new ACE_Message_Block(4);</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">if(mb)</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">{</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">mb->msg_type(ACE_Message_Block::MB_STOP);</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">putq(mb);</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">}</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">}</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">else if(messageBlock->msg_type() ==<span id="u2yisgk" class="Apple-converted-space">聽(tīng)</span><a style="COLOR: rgb(51,102,153); TEXT-DECORATION: none" name="OLE_LINK53"></a><a style="COLOR: rgb(51,102,153); TEXT-DECORATION: none" name="OLE_LINK52">ACE_Message_Block::MB_DATA</a>)</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">{</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">MgServerStreamData* pData =</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">dynamic_cast(messageBlock->data_block());</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">IMgServiceHandler::MgProcessStatus stat =<span id="ceqcm2g" class="Apple-converted-space">聽(tīng)</span><strong><em style="FONT-STYLE: italic">ProcessMessage(messageBlock);</em></strong></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">......</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">}</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">}</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">return nResult;</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">}</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">IMgServiceHandler::MgProcessStatus MgOperationThread::ProcessMessage(ACE_Message_Block* pMB)</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">{</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">IMgServiceHandler::MgProcessStatus stat = IMgServiceHandler::mpsError;</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">MgServerStreamData* pData = NULL;</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">pData = (MgServerStreamData*) pMB->data_block();</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">......</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">MgStreamParser::ParseStreamHeader(pData);</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">MgStreamParser::ParseDataHeader(pData);</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">MgPacketParser::MgPacketHeader pt = MgPacketParser::GetPacketHeader(pData);</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">switch ( pt )</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">{</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">case (MgPacketParser::mphOperation):</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"> <strong> <em style="FONT-STYLE: italic">stat = ProcessOperation( pData );</em> </strong> </p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">break;</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">......</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">}</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">return stat;</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">}</p> </td> </tr> </tbody> </table> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"> </p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">浠庝笂闈㈢殑浠g爜鍙互鐪嬪埌錛屾柟娉昅gOperationThread::svc()浼?xì)璋冪敤鏂规硶getq(鈥?寰幆璁塊棶娑堟伅闃熷垪錛屽彇鍑虹瓑寰呭鐞嗙殑娑堟伅銆傚鏋滄槸鏁版嵁綾誨瀷鐨勬秷鎭紝閭d箞璋冪敤鏂規(guī)硶MgOperationThread:: ProcessMessage(...)澶勭悊榪欎釜娑堟伅銆傛柟娉昅gOperationThread::ProcessMessage(...)浼?xì)瑙f瀽杩欎釜娑堟伅鐨勫ご鍜屾暟鎹Q屽鏋滄秷鎭暟鎹腑鍖呭惈浜?jiǎn)涓涓搷浣滆姹傦紝閭d箞璋冪敤鏂規(guī)硶MgOperationThread:: ProcessOperation(鈥?澶勭悊榪欎釜鎿嶄綔璇鋒眰銆?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">2錛?澶勭悊鏈嶅姟璇鋒眰</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">鏂規(guī)硶MgOperationThread::ProcessOperation(鈥? 棣栧厛浼?xì)瑙f瀽娑堟伅鏁版嵁涓殑鏈嶅姟ID銆佹搷浣淚D銆佹搷浣滅殑鐗堟湰鍙風(fēng)瓑淇℃伅錛岀劧鍚庢牴鎹湇鍔D浣跨敤宸ュ巶綾籑gServiceHanlderFactory鏉ュ垱寤轟竴涓湇鍔¤姹傚鐞嗗櫒綾葷殑瀹炰緥錛屾渶鍚庤皟鐢ㄨ繖涓湇鍔¤姹傚鐞嗗櫒綾葷殑鏂規(guī)硶IMgServiceHandler:: ProcessOperation(...)澶勭悊榪欎釜鏈嶅姟璇鋒眰銆?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">鏈妭鐨勭ず渚嬩腑瀹㈡埛绔彂閫佺殑鏄竴涓灇涓捐祫婧愮殑鎿嶄綔璇鋒眰錛屾墍浠ュ伐鍘傜被浼?xì)鍒涘晦Z竴涓狹gResourceServiceHandler鐨勫疄渚嬶紝璋冪敤鏂規(guī)硶MgResourceServiceHandler::ProcessOperation(...)澶勭悊榪欎釜鏈嶅姟璇鋒眰銆?/p> <table cellspacing="0" cellpadding="0" border="1"> <tbody> <tr> <td valign="top" width="576"> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">IMgServiceHandler::MgProcessStatus</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">MgOperationThread::ProcessOperation(MgServerStreamData* pData)</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">{</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">IMgServiceHandler::MgProcessStatus stat = IMgServiceHandler::mpsError;</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">MgOperationPacket op;</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">MgStreamHelper* pHelper = NULL;</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">pHelper = pData->GetStreamHelper();</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">pHelper->GetUINT32(op.m_PacketHeader);</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">pHelper->GetUINT32(op.m_PacketVersion);</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">pHelper->GetUINT32(op.m_ServiceID);</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">pHelper->GetUINT32(op.m_OperationID);</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">pHelper->GetUINT32(op.m_OperationVersion);</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">IMgServiceHandler* pServiceHandler =</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">MgServiceHandlerFactory::Instance()->GetHandler(op.m_ServiceID, pData, op);</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">delete pServiceHandler;</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">pServiceHandler = NULL;</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"> <strong> <em style="FONT-STYLE: italic">stat = pServiceHandler->ProcessOperation();</em> </strong> </p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">return stat;</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">}</p> </td> </tr> </tbody> </table> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"> </p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">3錛?澶勭悊鎿嶄綔璇鋒眰</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">棣栧厛錛屾柟娉昅gResourceServiceHandler::ProcessOperation(...)浼?xì)鏍规嵁鎿嶄綔璇锋眰鐨処D錛岃皟鐢ㄨ祫婧愭搷浣滃伐鍘傜被鐨勬柟娉昅gResourceOperationFactory::GetOperation(鈥?鍒涘緩鐩稿簲鐨勮祫婧愭湇鍔℃搷浣滅被MgOpEnumerateResources鐨勫疄渚嬨傜劧鍚庯紝璋冪敤MgOpEnumerateResources:: Initialize(...)鍒濆鍖栨灇涓捐祫婧愭搷浣滃鐞嗗櫒錛岃皟鐢ㄦ柟娉昅gServiceManager::RequestService(鈥?鍒涘緩鏈嶅姟鍣ㄨ祫婧愭湇鍔gServerResourceService鐨勫疄渚嬨傛渶鍚庯紝璋冪敤鏂規(guī)硶MgOpEnumerateResources::Execute()澶勭悊鎿嶄綔璇鋒眰錛岃鏂規(guī)硶浼?xì)璋冪敤MgServerResourceService::EnumerateResources(鈥?瀹為檯鎵ц鏋氫婦璧勬簮鐨勫姛鑳姐?/p> <table cellspacing="0" cellpadding="0" border="1"> <tbody> <tr> <td valign="top" width="576"> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">IMgServiceHandler::MgProcessStatus MgResourceServiceHandler::ProcessOperation()</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">{</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">IMgServiceHandler::MgProcessStatus status = IMgServiceHandler::mpsError;</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">auto_ptr handler;</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">MG_TRY()</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">handler.reset(MgResourceOperationFactory::GetOperation(</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">m_packet.m_OperationID, m_packet.m_OperationVersion));</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">assert(NULL != handler.get());</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">handler->Initialize(m_data, m_packet);</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">handler->Execute();</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">status = IMgServiceHandler::mpsDone;</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">MG_CATCH(L"MgResourceServiceHandler.ProcessOperation")</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">if (mgException != NULL && NULL != handler.get())</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">{</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">status = (handler.get()->HandleException(mgException) ?</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">IMgServiceHandler::mpsDone : IMgServiceHandler::mpsError);</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">}</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">if (IMgServiceHandler::mpsDone != status)</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">{</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">MG_THROW();</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">}</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">return status;</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">}</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">void MgOpEnumerateResources::Execute()</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">{</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">......</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">BeginExecution();</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">......</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">Validate();</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">Ptr byteReader = m_service->EnumerateResources(resource, depth,</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">type, properties, fromDate, toDate, computeChildren);</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">EndExecution(byteReader);</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">......</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">}</p> </td> </tr> </tbody> </table> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"> </p> </span> </span> <br class="Apple-interchange-newline" /> <img src ="http://www.tkk7.com/gdws/aggbug/348330.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/gdws/" target="_blank">甯呭瓙</a> 2011-04-15 00:25 <a href="http://www.tkk7.com/gdws/articles/348330.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>MapGuide婧愮爜鍒嗘瀽銆?/title><link>http://www.tkk7.com/gdws/articles/348329.html</link><dc:creator>甯呭瓙</dc:creator><author>甯呭瓙</author><pubDate>Thu, 14 Apr 2011 16:24:00 GMT</pubDate><guid>http://www.tkk7.com/gdws/articles/348329.html</guid><wfw:comment>http://www.tkk7.com/gdws/comments/348329.html</wfw:comment><comments>http://www.tkk7.com/gdws/articles/348329.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/gdws/comments/commentRss/348329.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/gdws/services/trackbacks/348329.html</trackback:ping><description><![CDATA[ <span id="egokgmk" class="Apple-style-span" style="WORD-SPACING: 0px; FONT: medium Simsun; TEXT-TRANSFORM: none; COLOR: rgb(0,0,0); TEXT-INDENT: 0px; WHITE-SPACE: normal; LETTER-SPACING: normal; BORDER-COLLAPSE: separate; orphans: 2; widows: 2; webkit-border-horizontal-spacing: 0px; webkit-border-vertical-spacing: 0px; webkit-text-decorations-in-effect: none; webkit-text-size-adjust: auto; webkit-text-stroke-width: 0px"> <span id="wqc2qqo" class="Apple-style-span" style="FONT-SIZE: 14px; LINE-HEIGHT: 21px; FONT-FAMILY: verdana, sans-serif; TEXT-ALIGN: left"> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">鏈妭涓紝鎴戜滑灝嗛氳繃浠嬬粛濡備綍瀹屾垚鏋氫婦璧勬簮鍔熻兘鏉ヤ粙緇峂apGuide Web鎵╁睍鐨勯儴鍒嗘簮浠g爜銆?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">鍦ㄦ祻瑙堝櫒绔殑鍦板潃鏍忚緭鍏ョ被浼煎涓嬪瓧絎︿覆錛屽氨浼?xì)鍙戦佷竴涓灇涓捐祫婧愮殑HTTP璇鋒眰銆?/p> <table cellspacing="0" cellpadding="0" border="1"> <tbody> <tr> <td valign="top" width="576"> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">http://hostname/mapGuide/mapagent.fcig?OPERATION=EnumerateResources&VERSION=1.0.0& RESOURCEID=Library:// &TYPE=FeatureSource&DEPTH=3</p> </td> </tr> </tbody> </table> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"> </p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">涓嬮潰鎴戜滑鏉ョ湅鐪婱apGuide Web鎵╁睍濡備綍澶勭悊榪欎釜璇鋒眰銆?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">鍦ㄤ粙緇峂apGuide Web鎵╁睍濡備綍澶勭悊鏋氫婦璧勬簮HTTP璇鋒眰涔嬪墠錛岃鎴戜滑棣栧厛鏉ョ湅鐪婱apGuide Web鎵╁睍鐢ㄤ簬澶勭悊HTTP璇鋒眰鍜屽搷搴旂殑綾伙紝榪欎簺綾葷殑綾誨浘濡傚浘19鈥?鎵紺恒?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"> <a style="COLOR: rgb(51,102,153); TEXT-DECORATION: none" > <img title="clip_image002" style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height="165" alt="clip_image002" src="http://p.blog.csdn.net/images/p_blog_csdn_net/mapguide_inside/624109/o_clip_image002_thumb_633962217367264558.gif" width="506" border="0" /> </a> </p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">鍥?19鈥? HTTP璇鋒眰鍜屽搷搴旂被鐨勭被鍥?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">綾籑gHttpRequest鍜岀被MgHttpResponse鍒嗗埆鏄HTTP璇鋒眰鍜屽搷搴旂粨鏋滅殑鎶借薄錛岃繖涓や釜綾誨彲浠ョ敤浜庝換浣曠被鍨嬬殑Web搴旂敤鏈嶅姟鍣紝涔熷氨鏄瀹冧滑鐨勪唬鐮佷笉渚濊禆浜庝換浣昗eb搴旂敤鏈嶅姟鍣ˋPI銆傚湪鏂囦歡澶光淺MgDev\Web\src\HttpHandler鈥濅笅鍙互鎵懼埌鎵鏈夊墠緙涓衡淢gHttp鈥濈被鐨勬簮浠g爜銆?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">綾籑gHttpRequest鐢ㄤ簬澶勭悊HTTP璇鋒眰錛屽畠鍖呭惈浜?jiǎn)涓涓狧TTP璇鋒眰澶碝gHttpHeader鐨勫疄渚嬨佷竴涓狧TTP璇鋒眰鍙傛暟HttpRequestParam鐨勫疄渚嬪拰涓涓狧TTP璇鋒眰鍏冩暟鎹瓾ttpRequestMetadata鐨勫疄渚嬨傝皟鐢ㄦ柟娉昅gHttpRequest::Execute()浼?xì)灏咹TTP璇鋒眰杞彂緇橫apGuide鏈嶅姟鍣紝褰揗apGuide鏈嶅姟鍣ㄥ鐞嗗畬榪欎釜璇鋒眰錛屽皢璇鋒眰緇撴灉榪斿洖緇橶eb鎵╁睍涔嬪悗錛岃繖涓柟娉曚細(xì)榪斿洖涓涓狹gHttpResponse瀵硅薄錛屽畠琛ㄧずHTTP璇鋒眰鐨勫搷搴旂粨鏋溿?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">鎺ヤ笅鏉ヨ鎴戜滑鐪嬬湅MapGuide Web鎵╁睍濡備綍澶勭悊<a style="COLOR: rgb(51,102,153); TEXT-DECORATION: none" name="OLE_LINK51"></a><a style="COLOR: rgb(51,102,153); TEXT-DECORATION: none" name="OLE_LINK42">鏋氫婦璧勬簮</a>鐨凥TTP璇鋒眰銆傚ぇ澶氭暟MapGuide鐢ㄦ埛閮芥槸浣跨敤IIS浣滀負(fù)Web搴旂敤鏈嶅姟鍣紝騫朵笖浣跨敤Web鎵╁睍妯″潡isapi_MapAgent.dll鏉ュ鐞咹TTP璇鋒眰錛屾墍浠ユ湰鑺備晶閲嶄簬isapi_MapAgent.dll妯″潡澶勭悊HTTP璇鋒眰鐨勬祦紼嬶紝榪欎釜澶勭悊嫻佺▼鐨勬椂搴忓浘濡傚浘19鈥?鎵紺恒?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"> <a style="COLOR: rgb(51,102,153); TEXT-DECORATION: none" > <img title="clip_image004" style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height="496" alt="clip_image004" src="http://p.blog.csdn.net/images/p_blog_csdn_net/mapguide_inside/624109/o_clip_image004_thumb.gif" width="567" border="0" /> </a> </p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"> <a style="COLOR: rgb(51,102,153); TEXT-DECORATION: none" name="_Ref247802663">鍥?span class="Apple-converted-space">聽(tīng)</span></a>19鈥? Web鎵╁睍澶勭悊鏋氫婦璧勬簮璇鋒眰鐨勬椂搴忓浘</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">1錛?鍔犺澆Web搴旂敤鏈嶅姟鍣ㄦ墿灞曟ā鍧?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">濡傛灉浣跨敤鐨勬槸IIS Web搴旂敤鏈嶅姟錛岄偅涔堝湪鎺ユ敹鍒板悗緙涓衡渇cgi鈥濈殑HTTP璇鋒眰鍚庯紝IIS浼?xì)鍔犺浇Web搴旂敤鏈嶅姟鍣ㄦ墿灞曟ā鍧梚sapi_MapAgent.dll鎴朚apAgent.exe銆傚叾涓紝isapi_MapAgent.dll鍩轟簬IIS API錛屽叿鏈夋洿濂界殑鎬ц兘錛汳apAgent.exe鍩轟簬CGI鎶鏈紝鎬ц兘瑕佺◢寰樊涓浜涖傚鏋滀嬌鐢ㄧ殑鏄疉pache Web搴旂敤鏈嶅姟鍣紝閭d箞鍦╓indows騫沖彴涓夾pache浼?xì)鍔犺浇Web搴旂敤鏈嶅姟鍣ㄦ墿灞曟ā鍧桵apAgent.exe錛屽湪Linux騫沖彴涓婁細(xì)鍔犺澆妯″潡mod_mgmapagent.so銆?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">榪欎笁涓猈eb鏈嶅姟鍣ㄦ墿灞曟ā鍧楀疄鐜頒簡(jiǎn)綾諱技鐨勫姛鑳斤紝瀹冧滑鐨勬簮浠g爜浣嶇疆濡傝〃19鈥?鎵紺恒?/p> <table cellspacing="0" cellpadding="0" border="1"> <tbody> <tr> <td valign="top" width="168"> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"> <strong>鏈嶅姟鍣ㄦ墿灞曟ā鍧?/strong> <strong> </strong> </p> </td> <td valign="top" width="274"> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"> <strong>婧愪唬鐮佷綅緗?/strong> <strong> </strong> </p> </td> </tr> <tr> <td valign="top" width="168"> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">isapi_MapAgent.dll</p> </td> <td valign="top" width="274"> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">\Web\src\IsapiAgent</p> </td> </tr> <tr> <td valign="top" width="168"> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">MapAgent.exe</p> </td> <td valign="top" width="274"> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">\Web\src\CgiAgent</p> </td> </tr> <tr> <td valign="top" width="168"> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">mod_mgmapagent.so</p> </td> <td valign="top" width="274"> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">\Web\src\ApacheAgent</p> </td> </tr> </tbody> </table> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"> </p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"> <a style="COLOR: rgb(51,102,153); TEXT-DECORATION: none" name="_Ref247813607">琛?span class="Apple-converted-space">聽(tīng)</span></a>19鈥? Web鏈嶅姟鍣ㄦ墿灞曟ā鍧楃殑婧愪唬鐮佷綅緗?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">浠庡浘19鈥?涓彲浠ョ湅鍒拌繖涓変釜Web鏈嶅姟鍣ㄦ墿灞曟ā鍧楁彁渚涗簡(jiǎn)綾諱技鐨勭被錛岃繖浜涚被鎻愪緵浜?jiǎn)鐩稿悓鐨勬帴鍙eQ岀被<strong><em style="FONT-STYLE: italic">XXX</em></strong>PostParser鐢ㄤ簬瑙f瀽HTTP璇鋒眰涓紶鍏ョ殑鍙傛暟鍙?qiáng)鍙傛暟鍊鹼紝綾?strong><em style="FONT-STYLE: italic">XXX</em></strong>ResponseHandler鐢ㄤ簬灝咹TTP璇鋒眰鐨勫搷搴旂粨鏋滃彂閫佺粰瀹㈡埛绔傚叾涓紝鈥?strong><em style="FONT-STYLE: italic">XXX</em></strong>鈥濊〃紺衡淐gi鈥濄佲淚sapi鈥濇垨鈥淎pache鈥濄?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"> <a style="COLOR: rgb(51,102,153); TEXT-DECORATION: none" > <img title="clip_image006" style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height="219" alt="clip_image006" src="http://p.blog.csdn.net/images/p_blog_csdn_net/mapguide_inside/624109/o_clip_image006_thumb.gif" width="539" border="0" /> </a> </p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"> <a style="COLOR: rgb(51,102,153); TEXT-DECORATION: none" name="_Ref247812702">鍥?span class="Apple-converted-space">聽(tīng)</span></a>19鈥? Web鎵╁睍鐨勮姹傚鐞嗘ā鍧?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">瀵逛簬妯″潡isapi_MapAgent.dll錛屾瘡涓渇cgi鈥濈被鍨嬬殑HTTP璇鋒眰浼?xì)璋冪敤姝ゆā鍧椾腑鐨勬栆?guī)硶HttpExtensionProc錛岃繖涓柟娉曠殑浠g爜濡備笅鎵紺猴紝涓轟簡(jiǎn)渚夸簬鐞嗚В鎴戜滑鍙繚鐣欎簡(jiǎn)涓浜涙牳蹇?jī)浠g爜銆?/p> <table cellspacing="0" cellpadding="0" border="1"> <tbody> <tr> <td valign="top" width="576"> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">DWORD WINAPI HttpExtensionProc(EXTENSION_CONTROL_BLOCK *pECB)</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">{</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">Initialize(pECB);</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">// 璋冪敤GetServerVariable璇誨彇璇稿鏈嶅姟鍣ㄥ悕縐般佺鍙e彿絳夋湇鍔″櫒鍙橀噺淇℃伅</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">......</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">// 鍒涘緩MgHttpRequest鐨勫疄渚嬶紝鐢ㄤ簬澶勭悊HTTP璇鋒眰</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">Ptr request = new MgHttpRequest(wUrl);</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">// 瑙f瀽HTTP璇鋒眰涓殑鍙傛暟錛屽茍涓斿皢榪欎簺鍙傛暟緗叆MgHttpRequest瀵硅薄涓?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">Ptr params = request->GetRequestParam();</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">......</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">IsapiPostParser postParser(pECB);</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">postParser.Parse(params);</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">......</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">// 鍒涘緩IsapiResponseHandler鐨勫疄渚嬶紝鐢ㄤ簬灝嗗搷搴旇姹傝繑鍥炵粰瀹㈡埛绔?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">IsapiResponseHandler responseHandler(pECB);</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">......</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">// 灝咹TTP璇鋒眰杞彂緇橫apGuide鏈嶅姟鍣紝褰揗apGuide鏈嶅姟鍣ㄥ鐞嗗畬榪欎釜璇鋒眰錛?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">// 灝嗚姹傜粨鏋滆繑鍥炵粰Web鎵╁睍涔嬪悗錛岃繖涓柟娉曚細(xì)榪斿洖涓涓狹gHttpResponse瀵硅薄錛?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">// 瀹冭〃紺篐TTP璇鋒眰鐨勫搷搴旂粨鏋溿?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">Ptr response = request->Execute();</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">// 灝嗗搷搴旂粨鏋滆繑鍥炵粰瀹㈡埛绔?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">responseHandler.SendResponse(response);</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">......</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">}</p> </td> </tr> </tbody> </table> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"> </p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">2錛?鍒涘緩MgHttpRequest鐨勫疄渚嬶紝鐢ㄤ簬澶勭悊HTTP璇鋒眰</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">鍦ㄥ姞杞絎eb搴旂敤鏈嶅姟鍣ㄦ墿灞曟ā鍧楀悗錛岄渶瑕佸垱寤轟竴涓狹gHttpRequest鐨勫疄渚嬬敤浜庡鐞咹TTP璇鋒眰銆傜被MgHttpRequest騫朵笉鍏寵仈涓庝換浣曠被鍨嬬殑Web搴旂敤鏈嶅姟鍣紝鎵浠eb搴旂敤鏈嶅姟鍣ㄦ墿灞曟ā鍧椾細(xì)浣跨敤綾?strong><em style="FONT-STYLE: italic">XXX</em></strong>PostParser瑙f瀽HTTP璇鋒眰涓紶鍏ョ殑鍙傛暟鍙?qiáng)鍙傛暟鍊鹼紝灝嗚繖浜涘弬鏁拌緗埌MgHttpRequest瀵硅薄涓?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">3錛?璋冪敤鏂規(guī)硶MgHttpRequest::Execute()澶勭悊HTTP璇鋒眰</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">鏂規(guī)硶MgHttpRequest::Execute()鐨勬簮浠g爜濡備笅鎵紺恒備負(fù)浜?jiǎn)渚夸簬鐞嗚В锛屾垜浠悓鏍峰彧淇濈暀浜?jiǎn)涓浜涙牳蹇?jī)浠g爜銆?/p> <table cellspacing="0" cellpadding="0" border="1"> <tbody> <tr> <td valign="top" width="576"> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">MgHttpResponse* MgHttpRequest::Execute()</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">{</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">Ptr hResponse;</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">Ptr result;</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">// 鍒涘緩MgHttpResponse瀵硅薄錛岀敤浜庤繑鍥濰TTP璇鋒眰鍝嶅簲緇撴灉</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">hResponse = new MgHttpResponse();</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">result = hResponse->GetResult();</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">// 鑾峰緱HTTP璇鋒眰涓弬鏁扳淥PERATION鈥濈殑鍊?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">STRING sParamValue = m_requestParam->GetParameterValue(MgHttpResourceStrings::reqOperation);</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">......</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">// 鏍規(guī)嵁鍙傛暟鈥淥PERATION鈥濈殑鍊煎彇寰楀搴旀搷浣滅殑璇鋒眰鍝嶅簲澶勭悊鍣?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">Ptr rrHandler =</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">CreateRequestResponseHandler(sParamValue, result);</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">.......</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">// 澶勭悊HTTP璇鋒眰</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">if(rrHandler != NULL) rrHandler->Execute(*hResponse);</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">......</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">// 榪斿洖鍝嶅簲緇撴灉</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">return SAFE_ADDREF((MgHttpResponse*)hResponse);</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">}</p> </td> </tr> </tbody> </table> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"> </p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">姣忎釜HTTP璇鋒眰涓寘鍚竴涓弬鏁扳淥PERATION鈥濓紝瀹冪敤浜庝唬琛ㄦ搷浣滅殑綾誨瀷銆傚浜庝笉鍚岀殑鎿嶄綔錛孧apGuide瀹氫箟浜?jiǎn)涓嶅悓鐨勮h眰鍝嶅簲澶勭悊鍣ㄧ被錛岃繖涓被浼?xì)璋冪敤MapGuide鏈嶅姟涓搴旂殑鏂規(guī)硶澶勭悊榪欎釜鎿嶄綔錛岃繖浜涜姹傚搷搴斿鐞嗗櫒綾葷殑綾誨浘濡傚浘19鈥?鎵紺恒備粠鍥?9鈥?鍙互鐪嬪埌錛屾墍鏈夎姹傚搷搴斿鐞嗗櫒綾婚兘緇ф壙鑷被MgHttpRequestResponseHandler錛屾瘡涓縐嶆搷浣滈兘鏈変竴涓搴旂殑瀛愮被錛屼緥濡傛灇涓捐祫婧愭搷浣滀嬌鐢ㄤ簡(jiǎn)綾籑gHttpEnumerateResources錛屾弿榪版ā寮忔搷浣滀嬌鐢ㄤ簡(jiǎn)綾籑gHttpDescribeSchema銆?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"> <a style="COLOR: rgb(51,102,153); TEXT-DECORATION: none" > <img title="clip_image008" style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height="301" alt="clip_image008" src="http://p.blog.csdn.net/images/p_blog_csdn_net/mapguide_inside/624109/o_clip_image008_thumb.gif" width="521" border="0" /> </a> </p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"> <a style="COLOR: rgb(51,102,153); TEXT-DECORATION: none" name="_Ref247863319">鍥?span class="Apple-converted-space">聽(tīng)</span></a>19鈥? HTTP璇鋒眰鍝嶅簲澶勭悊鍣ㄧ殑綾誨浘</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">MapGuide瀹氫箟浜?jiǎn)涓涓叏灞map瀵硅薄鐢ㄤ簬瀛樻斁姣忕鎿嶄綔瀵瑰簲鐨勮姹傚搷搴斿鐞嗗櫒綾誨璞★紝瀹冪殑閿槸鎿嶄綔鐨勫悕縐幫紝鍊兼槸璇鋒眰鍝嶅簲澶勭悊鍣ㄧ被瀵硅薄銆?/p> <table cellspacing="0" cellpadding="0" border="1"> <tbody> <tr> <td valign="top" width="576"> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">// 瀹氫箟涓涓叏灞map瀵硅薄錛岀敤浜庡瓨鏀炬瘡縐嶆搷浣滃搴旂殑璇鋒眰鍝嶅簲澶勭悊鍣ㄧ被瀵硅薄</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">static map</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">httpClassCreators;</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">bool InitializeStaticData()</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">{</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">httpClassCreators[MgHttpResourceStrings::opGetMap] =</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">MgHttpGetMap::CreateObject;</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">httpClassCreators[MgHttpResourceStrings::opGetMapUpdate] =</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">MgHttpGetMapUpdate::CreateObject;</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">httpClassCreators[MgHttpResourceStrings::opGetDrawing] =</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">MgHttpGetDrawing::CreateObject;</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">......</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">httpClassCreators[MgHttpResourceStrings::opDescribeDrawing] = MgHttpDescribeDrawing::CreateObject;</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">httpClassCreators[MgHttpResourceStrings::opEnumerateResources] = MgHttpEnumerateResources::CreateObject;</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">......</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">}</p> </td> </tr> </tbody> </table> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"> </p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">璋冪敤鏂規(guī)硶MgHttpRequest::CreateRequestResponseHandler(...)鍙互鏍規(guī)嵁鎿嶄綔鐨勫悕縐拌幏寰楀搴旂殑璇鋒眰鍝嶅簲澶勭悊鍣ㄧ被瀵硅薄銆傚浜庢灇涓捐祫婧愭搷浣滐紝瀹冧細(xì)榪斿洖涓涓被MgHttpEnumerateResources鐨勫璞°?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">璋冪敤榪欎簺璇鋒眰鍝嶅簲澶勭悊鍣ㄧ被鐨凟xecute(鈥?鏂規(guī)硶錛屼細(xì)鍒涘緩涓涓唬鐞嗘湇鍔$被瀵硅薄錛岀劧鍚庤皟鐢ㄤ唬鐞嗘湇鍔′腑瀵瑰簲鐨勬柟娉曘備負(fù)浠涔堣鍒涘緩鐨勬槸涓涓唬鐞嗘湇鍔$被瀵硅薄鍛紵鎴戞兂鐪嬪畬鍥?9鈥?涔嬪悗澶у浼?xì)鏈夋墍鏄庣櫧銆備粠鍥?9鈥?涓彲浠ョ湅鍒幫紝鎵鏈夌殑MapGuide鏈嶅姟鏈変袱涓瓙綾伙紝涓涓槸鍚嶇О涓篗gProxy<strong><em style="FONT-STYLE: italic">XXX</em></strong>Service鐨勪唬鐞嗘湇鍔$被錛屽畠鏄疢apGuide Web鎵╁睍绔殑涓涓被錛屽彟涓涓槸鍚嶇О涓篗gServerXXXService鐨勬湇鍔″櫒鏈嶅姟綾伙紝瀹冩槸MapGuide鏈嶅姟鍣ㄧ鐨勪竴涓被銆侻gProxy<strong><em style="FONT-STYLE: italic">XXX</em></strong>Service鏈緇堜細(xì)灝嗘湇鍔¤姹傝漿鍙戠粰鏈嶅姟鍣ㄧ綾籑gServerXXXService錛屾墍浠ヨ鐪熸澶勭悊鏈嶅姟璇鋒眰鐨勭被鏄疢gServerXXXService錛孧gProxy<strong><em style="FONT-STYLE: italic">XXX</em></strong>Service浠呬粎璧峰埌涓涓漿鍙戠殑浣滅敤錛岃繖涔熷氨鏄負(fù)浠涔堢О綾籑gProxy<strong><em style="FONT-STYLE: italic">XXX</em></strong>Service涓轟唬鐞嗘湇鍔$被鐨勫師鍥犮?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"> <a style="COLOR: rgb(51,102,153); TEXT-DECORATION: none" > <img title="clip_image010" style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height="131" alt="clip_image010" src="http://p.blog.csdn.net/images/p_blog_csdn_net/mapguide_inside/624109/o_clip_image010_thumb.gif" width="528" border="0" /> </a> </p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"> <a style="COLOR: rgb(51,102,153); TEXT-DECORATION: none" name="_Ref247868155">鍥?span class="Apple-converted-space">聽(tīng)</span></a>19鈥? 浠g悊鏈嶅姟鍜屾湇鍔″櫒鏈嶅姟綾葷殑綾誨浘</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">瀵逛簬鏋氫婦璧勬簮鎿嶄綔錛孧gHttpEnumerateResources::Execute(...)鐨勬簮浠g爜濡備笅鎵紺恒傝皟鐢ㄨ繖涓柟娉曚細(xì)鍒涘緩涓涓唬鐞嗚祫婧愭湇鍔$被MgProxyResourceService鐨勫璞★紝鐒跺悗璋冪敤MgProxyResourceService::EnumerateResources(...)鏋氫婦璧勬簮錛屾渶鍚庡皢鎿嶄綔鐨勬墽琛岀粨鏋滄斁鍏gHttpResponse瀵硅薄涓?/p> <table cellspacing="0" cellpadding="0" border="1"> <tbody> <tr> <td valign="top" width="576"> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">void MgHttpEnumerateResources::Execute(MgHttpResponse& hResponse)</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">{</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">Ptr hResult;</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">hResult = hResponse.GetResult();</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">// 媯(gè)鏌TTP璇鋒眰涓殑鍙傛暟</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">ValidateCommonParameters();</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">// 鍒涘緩MgProxyResourceService瀹炰緥</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">Ptr mgprService =</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">(MgResourceService*)(CreateService(MgServiceType::ResourceService));</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">......</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">// 鎵ц鏋氫婦璧勬簮鎿嶄綔</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">Ptr byteReader = mgprService-></p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">EnumerateResources(&mgrIdentifier, m_depth, m_type, m_computeChildren);</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">// 濡傛灉闇瑕侊紝杞崲鍝嶅簲璇鋒眰鐨勬牸寮?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">ProcessFormatConversion(byteReader);</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">// 灝嗘搷浣滅粨鏋滄斁鍏ュ搷搴旇姹備腑鐨凪gHttpResult瀵硅薄</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">hResult->SetResultObject(byteReader, byteReader->GetMimeType());</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">}</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">MgByteReader* MgProxyResourceService::EnumerateResources(</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">MgResourceIdentifier* resource, INT32 depth, CREFSTRING type,</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">INT32 properties, CREFSTRING fromDate, CREFSTRING toDate,</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">bool computeChildren)</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">{</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">MgCommand cmd;</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">cmd.ExecuteCommand(m_connProp,</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">MgCommand::knObject,</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">MgResourceService::opIdEnumerateResources,</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">7,</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">Resource_Service,</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">BUILD_VERSION(1,0,0),</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">MgCommand::knObject, resource,</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">MgCommand::knInt32, depth,</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">MgCommand::knString, &type,</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">MgCommand::knInt32, properties,</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">MgCommand::knString, &fromDate,</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">MgCommand::knString, &toDate,</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">MgCommand::knInt8, (int)computeChildren,</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">MgCommand::knNone);</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">SetWarning(cmd.GetWarningObject());</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">return (MgByteReader*)cmd.GetReturnValue().val.m_obj;</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">}</p> </td> </tr> </tbody> </table> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"> </p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">4錛?灝咹TTP璇鋒眰鐨勫搷搴旂粨鏋滆繑鍥炵粰瀹㈡埛绔?/p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px">璋冪敤MgHttpRequest::Execute()浼?xì)杩斿洖涓涓狹gHttpResponse瀵硅薄錛岃繖涓璞″寘鍚簡(jiǎn)HTTP璇鋒眰鐨勫搷搴旂粨鏋溿備笉榪囷紝榪橀渶瑕佽皟鐢ㄦ柟娉?strong><em style="FONT-STYLE: italic">XXX</em></strong>ResponseHandler::SendResponse(...)錛岃繖鏍稺eb搴旂敤鏈嶅姟鍣ㄦ墠浼?xì)灏啒q欎釜鍝嶅簲緇撴灉榪斿洖緇欏鎴風(fēng)銆?/p> </span> </span> <img src ="http://www.tkk7.com/gdws/aggbug/348329.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/gdws/" target="_blank">甯呭瓙</a> 2011-04-15 00:24 <a href="http://www.tkk7.com/gdws/articles/348329.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>MapGuide寮婧愮増鐨勪慨鏀規(guī)祦紼?/title><link>http://www.tkk7.com/gdws/articles/348328.html</link><dc:creator>甯呭瓙</dc:creator><author>甯呭瓙</author><pubDate>Thu, 14 Apr 2011 16:23:00 GMT</pubDate><guid>http://www.tkk7.com/gdws/articles/348328.html</guid><wfw:comment>http://www.tkk7.com/gdws/comments/348328.html</wfw:comment><comments>http://www.tkk7.com/gdws/articles/348328.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/gdws/comments/commentRss/348328.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/gdws/services/trackbacks/348328.html</trackback:ping><description><![CDATA[ <span id="w2cmwmg" class="Apple-style-span" style="WORD-SPACING: 0px; FONT: medium Simsun; TEXT-TRANSFORM: none; COLOR: rgb(0,0,0); TEXT-INDENT: 0px; WHITE-SPACE: normal; LETTER-SPACING: normal; BORDER-COLLAPSE: separate; orphans: 2; widows: 2; webkit-border-horizontal-spacing: 0px; webkit-border-vertical-spacing: 0px; webkit-text-decorations-in-effect: none; webkit-text-size-adjust: auto; webkit-text-stroke-width: 0px"> <span id="sa00wia" class="Apple-style-span" style="FONT-SIZE: 14px; LINE-HEIGHT: 21px; FONT-FAMILY: verdana, sans-serif; TEXT-ALIGN: left"> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; PADDING-TOP: 0px; TEXT-ALIGN: justify"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">MapGuide</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>浠g爜鐨勪慨鏀瑰彲浠ュ垎涓轟袱澶х被錛氬姛鑳藉寮?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">(Ehancement)</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鍜岀己闄蜂慨姝?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">(Defect)</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>錛?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">MapGuide</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>浣跨敤</span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">Tickets</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鏉ョ鐞嗗拰璺熻釜榪欎簺淇敼錛岃闂?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <a style="COLOR: rgb(51,102,153); TEXT-DECORATION: none" > <span style="COLOR: rgb(128,0,128); LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">http://trac.osgeo.org/mapguide/report</span> </a> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鍙互嫻忚鍜屾煡璇㈡椿鍔ㄧ殑鍜屽凡緇忓叧闂殑</span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">Tickets</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>錛屽浜庡姛鑳藉寮?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">MapGuide</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>榪樹(shù)嬌鐢ㄤ簡(jiǎn)</span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">RFC</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>榪涜綆$悊銆傞渶瑕佹敞鎰忕殑鏄棤璁哄垱寤?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">Tickets</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>榪樻槸</span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">RFC</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>錛岄兘闇瑕佹湁涓涓?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">OSGeo</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鐨勫笎鎴鳳紝浣跨敤</span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">OSGeo</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>甯愭埛鐧誨綍鍚庢墠鍙互鍒涘緩</span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">Tickets</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鍜?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">RFC</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>錛岃闂?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <a style="COLOR: rgb(51,102,153); TEXT-DECORATION: none" > <span style="COLOR: rgb(128,0,128); LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">https://www.osgeo.org/cgi-bin/ldap_create_user.py</span> </a> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'"> <span id="owiuc00" class="Apple-converted-space">聽(tīng)</span> </span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鍙互娉ㄥ唽涓涓?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">OSGeo</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鐨勭敤鎴楓?/span> </span> </p> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt 39pt; TEXT-INDENT: -18pt; PADDING-TOP: 0px"> <span lang="EN-US" style="LINE-HEIGHT: 21px"> <span style="LINE-HEIGHT: 21px"> <span style="LINE-HEIGHT: 21px; FONT-FAMILY: 'Times New Roman'"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px">1錛?/span> <span style="FONT: 7pt 'Times New Roman'">聽(tīng)<span id="kocoyo2" class="Apple-converted-space">聽(tīng)</span></span> </span> </span> </span> <span style="LINE-HEIGHT: 21px; FONT-FAMILY: 瀹?huà)浣?> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px">緙洪櫡淇</span> </span> </p> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; PADDING-TOP: 0px; TEXT-ALIGN: justify"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>濡傛灉浣犲湪浣跨敤</span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">MapGuide</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鐨勮繃紼嬩腑鍙戠幇浜?jiǎn)涓涓?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">Bug</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>錛岄偅涔堝彲浠ヨ冭檻鍒涘緩涓涓?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">Ticket</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>銆傚湪鍒涘緩</span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">Ticket</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>涔嬪墠錛屾渶濂借闂?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <a style="COLOR: rgb(51,102,153); TEXT-DECORATION: none" > <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">http://trac.osgeo.org/mapguide/search</span> </a> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鏌ユ壘鏄惁宸茬粡鏈夊叾浠栦漢鎻愪氦榪囩被浼肩殑</span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">Ticket</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>錛屾垨鑰呯粰</span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">mapguide-users</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>閭歡鍒楄〃鍙?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">email</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>闂鏄惁瑙佸埌榪囩被浼奸棶棰樸傚湪涓轟竴涓?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">Bug</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鍒涘緩</span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">Ticket</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>涔嬫椂錛岄渶瑕佹彁渚涗竴涓畬鏁寸殑銆佸彲浠ラ噸鐜?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">Bug</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鐨勬楠わ紝濡傛灉鍙兘鐨勮瘽鏈濂芥彁渚涗竴孌典唬鐮佺敤浜庨噸鐜?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">Bug</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>錛屾渶鍚庡~鍐?/span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鍥?/span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'"> <span lang="EN-US" style="LINE-HEIGHT: 19px">18</span> <span lang="EN-US" style="LINE-HEIGHT: 19px">鈥?span style="LINE-HEIGHT: 19px">3</span></span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鎵紺虹殑</span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">Ticket</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>灞炴с傚叾涓紝</span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">Priority</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>浠h〃</span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">Bug</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鐨勪紭鍏堢駭錛?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">Component</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>浠h〃</span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">Bug</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鎵灞炵殑鍔熻兘緇勪歡錛?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">Severity</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>浠h〃</span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">Bug</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鐨勪弗閲嶆э紝</span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">Milestone</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>浠h〃淇浜?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">Bug</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鐨勭増鏈紝</span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">Version</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>浠h〃鍙互閲嶇幇</span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">Bug</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鐨勭増鏈傛渶閲嶈鐨勬槸瑕佸~鍐欐紜殑</span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">Version</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鍊鹼紝濡傛灉涓嶆竻妤氶渶瑕佷負(fù)鍏朵粬灞炴у~鍐欎粈涔堟牱鐨勫鹼紝閭d箞鍙互灝嗗叾浠栧間繚鐣欎負(fù)絀猴紝鍦ㄥ叾浠栦漢媯(gè)闃呭拰鍒嗛厤榪欎釜</span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">Bug</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鏃朵細(xì)涓鴻繖浜涘睘鎬у~鍐欏悎閫傜殑鍊箋?/span> </span> </p> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt; PADDING-TOP: 0px; TEXT-ALIGN: justify"> <span lang="EN-US" style="LINE-HEIGHT: 21px"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">聽(tīng)<img style="BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height="174" alt="Ticket" src="http://p.blog.csdn.net/images/p_blog_csdn_net/MapGuide_Inside/EntryImages/20091104/Ticket.JPG" width="723" /></span> </span> </p> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt; PADDING-TOP: 0px; TEXT-ALIGN: justify">聽(tīng)</p> <p class="MsoCaption" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt; PADDING-TOP: 0px"> <a style="COLOR: rgb(51,102,153); TEXT-DECORATION: none" name="_Ref244862339"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鍥?span class="Apple-converted-space">聽(tīng)</span></span> </a> <span style="LINE-HEIGHT: 21px; FONT-FAMILY: 瀹?huà)浣?> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px"> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px">18</span> </span> </span> <span style="LINE-HEIGHT: 19px"> <span lang="EN-US" style="LINE-HEIGHT: 19px">鈥?/span> </span> <span style="LINE-HEIGHT: 19px"> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px">3</span> </span> </span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span id="0osmkaw" class="Apple-converted-space">聽(tīng)</span>Ticket</span>鐨勫睘鎬?/span> </span> </p> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt 39pt; TEXT-INDENT: -18pt; PADDING-TOP: 0px"> <span lang="EN-US" style="LINE-HEIGHT: 21px"> <span style="LINE-HEIGHT: 21px"> <span style="LINE-HEIGHT: 21px; FONT-FAMILY: 'Times New Roman'"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px">2錛?/span> <span style="FONT: 7pt 'Times New Roman'">聽(tīng)<span id="qmkueyc" class="Apple-converted-space">聽(tīng)</span></span> </span> </span> </span> <span style="LINE-HEIGHT: 21px; FONT-FAMILY: 瀹?huà)浣?> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px">鍔熻兘澧炲己</span> </span> </p> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; PADDING-TOP: 0px; TEXT-ALIGN: justify"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>濡傛灉瑕佹敼榪?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">MapGuide</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鐜版湁鐨勫姛鑳斤紝鎴栬呮坊鍔犱竴浜涙柊鐨勫姛鑳斤紝閭d箞闇瑕佸垱寤轟竴涓?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">RFC</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>銆傝闂?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <a style="COLOR: rgb(51,102,153); TEXT-DECORATION: none" > <span style="COLOR: rgb(128,0,128); LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">http://trac.osgeo.org/mapguide/wiki/MapGuideRfcs</span> </a> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鍙互嫻忚鐜版湁鐨?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">RFC</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>錛岄氳繃榪欎簺</span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">RFC</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鎴戜滑鍙互浜?jiǎn)瑙?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">MapGuide</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鐨勬瘡涓増鏈坊鍔犱簡(jiǎn)鍝簺鍔熻兘錛岀敋鑷充笅涓涓増鏈細(xì)娣誨姞鍝簺鏂扮殑鍔熻兘銆?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">RFC</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>欏甸潰浣跨敤</span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">Wiki</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鐨勬柟寮忚繘琛岀淮鎶わ紝浣跨敤濡備笅鐨勬楠ゅ彲浠ュ垱寤轟竴涓柊鐨?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">RFC</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>銆?/span> </span> </p> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt 39pt; TEXT-INDENT: -18pt; PADDING-TOP: 0px; TEXT-ALIGN: justify"> <span lang="EN-US" style="LINE-HEIGHT: 21px"> <span style="LINE-HEIGHT: 21px"> <span style="LINE-HEIGHT: 21px; FONT-FAMILY: 'Times New Roman'"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px">1錛?/span> <span style="FONT: 7pt 'Times New Roman'">聽(tīng)<span id="2osqw2y" class="Apple-converted-space">聽(tīng)</span></span> </span> </span> </span> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鐐瑰嚮鈥?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">login</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鈥濈櫥褰曘?/span> </span> </p> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt 39pt; TEXT-INDENT: -18pt; PADDING-TOP: 0px; TEXT-ALIGN: justify"> <span lang="EN-US" style="LINE-HEIGHT: 21px"> <span style="LINE-HEIGHT: 21px"> <span style="LINE-HEIGHT: 21px; FONT-FAMILY: 'Times New Roman'"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px">2錛?/span> <span style="FONT: 7pt 'Times New Roman'">聽(tīng)<span id="mk2iosm" class="Apple-converted-space">聽(tīng)</span></span> </span> </span> </span> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鐐瑰嚮鈥?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">Edit this page</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鈥濈紪杈?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">RFC</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鍒楄〃欏甸潰銆?/span> </span> </p> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt 39pt; TEXT-INDENT: -18pt; PADDING-TOP: 0px; TEXT-ALIGN: justify"> <span lang="EN-US" style="LINE-HEIGHT: 21px"> <span style="LINE-HEIGHT: 21px"> <span style="LINE-HEIGHT: 21px; FONT-FAMILY: 'Times New Roman'"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px">3錛?/span> <span style="FONT: 7pt 'Times New Roman'">聽(tīng)<span id="yg2oiyc" class="Apple-converted-space">聽(tīng)</span></span> </span> </span> </span> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鍔犲叆濡備笅</span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">Wiki</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鏍煎紡鐨勫瓧絎︿覆銆傚叾涓紝鈥?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">XX</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鈥濅唬琛?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">RFC</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鐨勫簭鍙鳳紝鈥?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">V.V</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鈥濅唬琛ㄥ疄鐜?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">RFC</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鐨?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">MapGuide</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鐗堟湰鍙楓?/span> </span> </p> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; PADDING-TOP: 0px; TEXT-ALIGN: justify"> <span lang="EN-US" style="LINE-HEIGHT: 21px"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">||[wiki:MapGuideRfcXX MapGuide RFC XX - xxxxxxxxxxxx]||draft||V.V||</span> </span> </p> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt 39pt; TEXT-INDENT: -18pt; PADDING-TOP: 0px; TEXT-ALIGN: justify"> <span lang="EN-US" style="LINE-HEIGHT: 21px"> <span style="LINE-HEIGHT: 21px"> <span style="LINE-HEIGHT: 21px; FONT-FAMILY: 'Times New Roman'"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px">4錛?/span> <span style="FONT: 7pt 'Times New Roman'">聽(tīng)<span id="sigeaei" class="Apple-converted-space">聽(tīng)</span></span> </span> </span> </span> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鐐瑰嚮鈥?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">Submit changes</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鈥濇寜閽彁浜や慨鏀廣?/span> </span> </p> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt 39pt; TEXT-INDENT: -18pt; PADDING-TOP: 0px; TEXT-ALIGN: justify"> <span lang="EN-US" style="LINE-HEIGHT: 21px"> <span style="LINE-HEIGHT: 21px"> <span style="LINE-HEIGHT: 21px; FONT-FAMILY: 'Times New Roman'"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px">5錛?/span> <span style="FONT: 7pt 'Times New Roman'">聽(tīng)<span id="mw2kkae" class="Apple-converted-space">聽(tīng)</span></span> </span> </span> </span> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鐐瑰嚮瓚呴摼鎺モ?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">MapGuide RFC XX</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鈥濅細(xì)鍑虹幇涓涓柊鐨勯〉闈㈢敤浜庡垱寤烘柊鐨?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">RFC</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>銆?/span> </span> </p> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt 39pt; TEXT-INDENT: -18pt; PADDING-TOP: 0px; TEXT-ALIGN: justify"> <span lang="EN-US" style="LINE-HEIGHT: 21px"> <span style="LINE-HEIGHT: 21px"> <span style="LINE-HEIGHT: 21px; FONT-FAMILY: 'Times New Roman'"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px">6錛?/span> <span style="FONT: 7pt 'Times New Roman'">聽(tīng)<span id="w0cm0gi" class="Apple-converted-space">聽(tīng)</span></span> </span> </span> </span> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鍦ㄦ寜鐓?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">RFC</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>妯℃澘鐨勬牸寮忓垱寤哄畬鎴愭柊鐨?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">RFC</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>涔嬪悗錛屽彂</span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">email</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>緇?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">MapGuide</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>閭歡鍒楄〃</span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <a style="COLOR: rgb(51,102,153); TEXT-DECORATION: none" href="mailto:mapguide-internals@lists.osgeo.org"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">mapguide-internals@lists.osgeo.org</span> </a> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>瑕佹眰</span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">MapGuide</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>寮婧愮ぞ鍖虹殑浜轟滑璇勯槄姝?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">RFC</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>銆?/span> </span> </p> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt 39pt; TEXT-INDENT: -18pt; PADDING-TOP: 0px; TEXT-ALIGN: justify"> <span lang="EN-US" style="LINE-HEIGHT: 21px"> <span style="LINE-HEIGHT: 21px"> <span style="LINE-HEIGHT: 21px; FONT-FAMILY: 'Times New Roman'"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px">7錛?/span> <span style="FONT: 7pt 'Times New Roman'">聽(tīng)<span id="a2uqqsk" class="Apple-converted-space">聽(tīng)</span></span> </span> </span> </span> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鍦?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">RFC</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鍙戝竷涓鍛ㄥ悗錛屽茍涓旇В絳斾簡(jiǎn)</span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">MapGuide</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>寮婧愮ぞ鍖轟漢浠殑鎵鏈夐棶棰樹(shù)箣鍚庯紝鍙互瑕佹眰</span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">PSC</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鐨勬垚鍛樺姝?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">RFC</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鎶曠エ銆傚鏋滅敱澶氫簬涓や釜</span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">PSC</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鎴愬憳鍚屾剰姝?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">RFC</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>錛屾病鏈変換浣?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">PSC</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鎴愬憳鍙嶅姝?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">RFC</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>錛岄偅涔堟</span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">RFC</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>灝辨姇紲ㄩ氳繃鍙互瀹炵幇浜?jiǎn)銆?/span> </span> </p> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt 39pt; TEXT-INDENT: -18pt; PADDING-TOP: 0px; TEXT-ALIGN: justify"> <span lang="EN-US" style="LINE-HEIGHT: 21px"> <span style="LINE-HEIGHT: 21px"> <span style="LINE-HEIGHT: 21px; FONT-FAMILY: 'Times New Roman'"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px">8錛?/span> <span style="FONT: 7pt 'Times New Roman'">聽(tīng)<span id="gqocmsk" class="Apple-converted-space">聽(tīng)</span></span> </span> </span> </span> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鍒涘緩涓涓被鍨嬩負(fù)鈥?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">enhancement</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鈥濈殑</span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">Ticket</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鐢ㄤ簬璺熻釜榪欎釜淇敼銆?/span> </span> </p> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; PADDING-TOP: 0px; TEXT-ALIGN: justify"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鍦ㄤ慨姝d簡(jiǎn)涓涓己闄鋒垨瀹炵幇浜?jiǎn)涓涓?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">RFC</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>涔嬪悗錛岄渶瑕佸皢鐩稿簲鐨勪唬鐮佷慨鏀瑰垱寤轟負(fù)涓涓?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">SVN Patch</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鏂囦歡錛屽皢鍏朵笂浼犲埌鐩稿簲鐨?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">Ticket</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>涓婁究浜庡紑婧愮ぞ鍖虹殑浜轟滑璇勯槄姝や慨鏀癸紝鍦ㄨ瘎闃呭畬鎴愪箣鍚庡氨鍙互鎻愪氦浠g爜浜?jiǎn)銆傚鏋滀綘涓嶆槸欏圭洰寮鍙?/span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>浜哄憳錛屾病鏈夋彁浜ゆ潈闄愶紝</span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>欏圭洰寮鍙?/span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>浜哄憳?shù)細(xì)甯姪浣犳彁浜や唬鐮佺殑銆?/span> </span> </p> </span> </span> <img src ="http://www.tkk7.com/gdws/aggbug/348328.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/gdws/" target="_blank">甯呭瓙</a> 2011-04-15 00:23 <a href="http://www.tkk7.com/gdws/articles/348328.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>MapGuide寮婧愮増鐨勭鐞嗙粍緇?/title><link>http://www.tkk7.com/gdws/articles/348327.html</link><dc:creator>甯呭瓙</dc:creator><author>甯呭瓙</author><pubDate>Thu, 14 Apr 2011 16:22:00 GMT</pubDate><guid>http://www.tkk7.com/gdws/articles/348327.html</guid><wfw:comment>http://www.tkk7.com/gdws/comments/348327.html</wfw:comment><comments>http://www.tkk7.com/gdws/articles/348327.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/gdws/comments/commentRss/348327.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/gdws/services/trackbacks/348327.html</trackback:ping><description><![CDATA[ <span id="qwuqo0q" class="Apple-style-span" style="WORD-SPACING: 0px; FONT: medium Simsun; TEXT-TRANSFORM: none; COLOR: rgb(0,0,0); TEXT-INDENT: 0px; WHITE-SPACE: normal; LETTER-SPACING: normal; BORDER-COLLAPSE: separate; orphans: 2; widows: 2; webkit-border-horizontal-spacing: 0px; webkit-border-vertical-spacing: 0px; webkit-text-decorations-in-effect: none; webkit-text-size-adjust: auto; webkit-text-stroke-width: 0px"> <span id="mso00ec" class="Apple-style-span" style="FONT-SIZE: 14px; LINE-HEIGHT: 21px; FONT-FAMILY: verdana, sans-serif; TEXT-ALIGN: left"> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; PADDING-TOP: 0px"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>浣滀負(fù)</span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">OSGeo</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鐨勪竴涓瓙欏圭洰錛?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">MapGuide</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>閬靛畧涓庡叾浠?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">OSGeo</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>欏圭洰鐨勭被浼肩殑綆$悊鏂瑰紡錛岀敱濡備笅鍥涚被緇勭粐鍜岃鑹茶繘琛岄」鐩殑寮鍙戝拰綆$悊銆?/span> </span> </p> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt 39pt; TEXT-INDENT: -18pt; PADDING-TOP: 0px"> <span lang="EN-US" style="LINE-HEIGHT: 21px"> <span style="LINE-HEIGHT: 21px"> <span style="LINE-HEIGHT: 21px; FONT-FAMILY: 'Times New Roman'"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px">1錛?/span> <span style="FONT: 7pt 'Times New Roman'">聽(tīng)<span id="gsgeosi" class="Apple-converted-space">聽(tīng)</span></span> </span> </span> </span> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>欏圭洰絳瑰垝鎸囧濮斿憳</span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>浼?span lang="EN-US" style="LINE-HEIGHT: 19px">(Project Steering Committee)</span></span> </span> </p> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; PADDING-TOP: 0px"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>欏圭洰絳瑰垝鎸囧濮斿憳?shù)細(xì)绠縐頒負(fù)</span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">PSC</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>錛岃礋璐?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">MapGuide</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>寮婧愰」鐩殑綆$悊宸ヤ綔錛屽喅瀹?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">MapGuide</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>寮婧愮増鐨勫彂甯冩棩鏈熴佸摢浜涘姛鑳藉拰緙洪櫡淇鏁村悎鍒伴偅涓彂甯冪増鏈侀偅浜涗漢鍙互鎴愪負(fù)欏圭洰寮鍙戜漢鍛樼瓑錛岃屼笖</span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">PSC</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>榪樿礋璐e畾鏈熶負(fù)</span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">OSGeo</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>濮斿憳?shù)細(xì)鎻愪緵椤圭洰鐘跺唹|姤鍛娿?/span> </span> </p> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt 39pt; TEXT-INDENT: -18pt; PADDING-TOP: 0px"> <span lang="EN-US" style="LINE-HEIGHT: 21px"> <span style="LINE-HEIGHT: 21px"> <span style="LINE-HEIGHT: 21px; FONT-FAMILY: 'Times New Roman'"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px">2錛?/span> <span style="FONT: 7pt 'Times New Roman'">聽(tīng)<span id="ioa0w2y" class="Apple-converted-space">聽(tīng)</span></span> </span> </span> </span> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>欏圭洰寮鍙?/span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>浜哄憳<span lang="EN-US" style="LINE-HEIGHT: 19px">(Project Developer)</span></span> </span> </p> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; PADDING-TOP: 0px; TEXT-ALIGN: justify"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>欏圭洰寮鍙戜漢鍛樺叿鏈?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">MapGuide</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>婧愪唬鐮佺殑璇誨啓鏉冮檺錛岃兘澶熺洿鎺ヤ慨鏀?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">MapGuide</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鐨勬簮浠g爜錛屽茍涓旇礋璐f闃呴」鐩崘鍔╀漢鍛樼殑浠g爜錛屽府鍔╀粬浠彁浜や唬鐮併?/span> </span> </p> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt 39pt; TEXT-INDENT: -18pt; PADDING-TOP: 0px"> <span lang="EN-US" style="LINE-HEIGHT: 21px"> <span style="LINE-HEIGHT: 21px"> <span style="LINE-HEIGHT: 21px; FONT-FAMILY: 'Times New Roman'"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px">3錛?/span> <span style="FONT: 7pt 'Times New Roman'">聽(tīng)<span id="c2isswc" class="Apple-converted-space">聽(tīng)</span></span> </span> </span> </span> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>欏圭洰鎹愬姪</span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>浜哄憳<span lang="EN-US" style="LINE-HEIGHT: 19px">(Project Contributor)</span></span> </span> </p> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; PADDING-TOP: 0px; TEXT-ALIGN: justify"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>欏圭洰鎹愬姪浜哄憳?shù)篃鏄?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">MapGuide</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鐨勫紑鍙戜漢鍛橈紝浣嗘槸娌℃湁</span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">MapGuide</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>婧愪唬鐮佺殑淇敼鏉冮檺錛屼粬浠氳繃欏圭洰璺熻釜</span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">(Tracker)</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>宸ュ叿涓?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">MapGuide</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>璐$尞琛ヤ竵</span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">(Patch)</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>銆佷唬鐮併佹枃妗g瓑錛岄」鐩紑鍙戜漢鍛樹(shù)細(xì)媯(gè)闃呬粬浠殑淇敼錛屽拰浠栦滑榪涜浜ゆ祦錛屾渶鍚庡府鍔╀粬浠彁浜や唬鐮併傞氬父鎯呭喌涓嬶紝欏圭洰寮鍙戜漢鍛樻槸浠庨」鐩崘鍔╀漢鍛樼潃鎵嬪仛璧鳳紝鍦ㄩ」鐩崘鍔╀漢鍛樿礎(chǔ)鐚簡(jiǎn)澶ч噺鏈変環(huán)鍊肩殑琛ヤ竵</span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">(Patch)</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>涔嬪悗錛屼粬浼?xì)琚彁鍚嶄负椤圭洰寮鍙戜漢鍛橈紝鍦?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">PSC</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鎶曠エ鍚屾剰涔嬪悗錛屼粬灝變細(xì)姝e紡鎴愪負(fù)欏圭洰寮鍙戜漢鍛橈紝鍏鋒湁浜?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">MapGuide</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>浠g爜鐨勪慨鏀規(guī)潈闄愩?/span> </span> </p> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt 39pt; TEXT-INDENT: -18pt; PADDING-TOP: 0px"> <span lang="EN-US" style="LINE-HEIGHT: 21px"> <span style="LINE-HEIGHT: 21px"> <span style="LINE-HEIGHT: 21px; FONT-FAMILY: 'Times New Roman'"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px">4錛?/span> <span style="FONT: 7pt 'Times New Roman'">聽(tīng)<span id="ckwgukq" class="Apple-converted-space">聽(tīng)</span></span> </span> </span> </span> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鐢?/span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鎴?span lang="EN-US" style="LINE-HEIGHT: 19px">(Users)</span></span> </span> </p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"> <span style="FONT-SIZE: 10.5pt; LINE-HEIGHT: 21px; FONT-FAMILY: 瀹?huà)浣?>聽(tīng)聽(tīng)聽(tīng) 鐢ㄦ埛鏄?/span> <span lang="EN-US" style="FONT-SIZE: 10.5pt; LINE-HEIGHT: 21px; FONT-FAMILY: 'Times New Roman', serif">MapGuide</span> <span style="FONT-SIZE: 10.5pt; LINE-HEIGHT: 21px; FONT-FAMILY: 瀹?huà)浣?>鐨勪嬌鐢ㄨ咃紝浠栦滑鍩轟簬</span> <span lang="EN-US" style="FONT-SIZE: 10.5pt; LINE-HEIGHT: 21px; FONT-FAMILY: 'Times New Roman', serif">MapGuide</span> <span style="FONT-SIZE: 10.5pt; LINE-HEIGHT: 21px; FONT-FAMILY: 瀹?huà)浣?>榪涜浜屾寮鍙戙?/span> </p> </span> </span> <img src ="http://www.tkk7.com/gdws/aggbug/348327.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/gdws/" target="_blank">甯呭瓙</a> 2011-04-15 00:22 <a href="http://www.tkk7.com/gdws/articles/348327.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title> 緙栬瘧MapGuidehttp://www.tkk7.com/gdws/articles/348326.html甯呭瓙甯呭瓙Thu, 14 Apr 2011 16:21:00 GMThttp://www.tkk7.com/gdws/articles/348326.htmlhttp://www.tkk7.com/gdws/comments/348326.htmlhttp://www.tkk7.com/gdws/articles/348326.html#Feedback0http://www.tkk7.com/gdws/comments/commentRss/348326.htmlhttp://www.tkk7.com/gdws/services/trackbacks/348326.html

濡傛灉鎯寵嚜宸辯紪璇?span lang="EN-US" style="LINE-HEIGHT: 19px">MapGuide鐨勬簮浠g爜鍜岃繍琛?span lang="EN-US" style="LINE-HEIGHT: 19px">MapGuide錛岄偅涔堣鍙傝?span lang="EN-US" style="LINE-HEIGHT: 19px">MapGuide寮婧愮増鐨勬枃妗?span lang="EN-US" style="LINE-HEIGHT: 19px">聽(tīng)(http://mapguide.osgeo.org/documentation.html)錛屽悇涓増鏈?span lang="EN-US" style="LINE-HEIGHT: 19px">MapGuide鐨勭紪璇戞楠ゅ熀鏈浉鍚岋紝浣嗘槸緇嗚妭鍗翠笉灝界浉鍚岋紝鎵浠ヨ鎵懼埌浣跨敤鐨勬簮浠g爜鎵瀵瑰簲鐨勬枃妗o紝涓ユ牸鎸夌収鏂囨。涓弿榪扮殑姝ラ緙栬瘧MapGuide銆?/span>

鍥犱負(fù)MapGuide鏈嶅姟鍣ㄥ拰Web鎵╁睍鏄袱涓嫭绔嬬殑緇勪歡錛屾墍浠ュ畠浠篃鏄嫭绔嬬紪璇戠殑銆傜紪璇?span lang="EN-US" style="LINE-HEIGHT: 19px">MapGuide鏈嶅姟鍣ㄧ粍浠剁殑鍩烘湰姝ラ濡備笅錛?/span>

1錛?/span> 聽(tīng) 緙栬瘧FDO

浣跨敤浜?span lang="EN-US" style="LINE-HEIGHT: 19px">FDO鏉ヨ闂?span lang="EN-US" style="LINE-HEIGHT: 19px">GIS鏁版嵁錛屼絾鏄?span lang="EN-US" style="LINE-HEIGHT: 19px">MapGuide鐨勬簮浠g爜涓茍娌℃湁鍖呭惈FDO鐨勬簮浠g爜錛屾墍浠ラ渶瑕佸紑鍙戜漢鍛樿嚜宸變笅杞?span lang="EN-US" style="LINE-HEIGHT: 19px">FDO鐨勬簮浠g爜鍜岀紪璇?span lang="EN-US" style="LINE-HEIGHT: 19px">FDO銆?/span>

2錛?/span> 聽(tīng) 璁劇疆鐜鍙橀噺

闇瑕佹敞鎰忕殑鏄笉鍚岀増鏈殑MapGuide婧愪唬鐮侀渶瑕佽緗笉鍚岀殑鐜鍙橀噺錛屾墍浠ヨ娉ㄦ剰鍙傝冨搴旂増鏈殑鏂囨。銆?/span>

3錛?/span> 聽(tīng) 緙栬瘧CS-MAP

浠?span lang="EN-US" style="LINE-HEIGHT: 19px">MapGuide寮婧愮増2.1涔嬪悗錛?span lang="EN-US" style="LINE-HEIGHT: 19px">MapGuide浣跨敤CS-MAP鏇夸唬浜?span lang="EN-US" style="LINE-HEIGHT: 19px">PROJ4鏉ュ鐞嗗潗鏍囩郴銆傜幇鍦?span lang="EN-US" style="LINE-HEIGHT: 19px">CS-MAP涔熸槸OSGeo鐨勪竴涓紑婧愰」鐩紝鍦ㄤ嬌鐢?span lang="EN-US" style="LINE-HEIGHT: 19px">SVN涓嬭澆MapGuide婧愮爜鐨勬椂鍊欎細(xì)鑷姩涓嬭澆CS-MAP鐨勪唬鐮侊紝涓嶈繃闇瑕佺敤鎴風(fēng)嫭绔嬬紪璇?span lang="EN-US" style="LINE-HEIGHT: 19px">CS-MAP銆?/span>

4錛?/span> 聽(tīng) 緙栬瘧OEM

灝辨槸MapGuide鎵渚濊禆鐨勭涓夋柟緇勪歡錛屼緥濡?span lang="EN-US" style="LINE-HEIGHT: 19px">ACE銆?span lang="EN-US" style="LINE-HEIGHT: 19px">SWIG銆?span lang="EN-US" style="LINE-HEIGHT: 19px">DWF Toolkit銆?span lang="EN-US" style="LINE-HEIGHT: 19px">FDO銆?span lang="EN-US" style="LINE-HEIGHT: 19px">Oracle Berkeley DB XML絳夛紝MapGuide鏈嶅姟鍣ㄥ拰Web鎵╁睍閮戒緷璧栦簬OEM錛屾墍浠ュ湪緙栬瘧MapGuide鏈嶅姟鍣ㄥ拰Web鎵╁睍鏃墮兘闇瑕佺紪璇?span lang="EN-US" style="LINE-HEIGHT: 19px">OEM錛屼絾鏄彧闇瑕佺紪璇戜竴嬈°?/span>

鍦?span lang="EN-US" style="LINE-HEIGHT: 19px">Windows騫沖彴涓婏紝鎵撳紑鏂囦歡澶?span lang="EN-US" style="LINE-HEIGHT: 19px">\MgDev\Oem\涓嬬殑Visual Studio Solution鏂囦歡oem.sln灝卞彲浠ョ紪璇?span lang="EN-US" style="LINE-HEIGHT: 19px">OEM緇勪歡銆?/span>

5錛?/span> 聽(tīng) 緙栬瘧MapGuide鏈嶅姟鍣?/span>

榪欓儴鍒嗕唬鐮佹槸MapGuide鏈嶅姟鍣ㄧ湡姝g殑浠g爜錛屽湪Window騫沖彴涓婃墦寮鏂囦歡澶?span lang="EN-US" style="LINE-HEIGHT: 19px">\MgDev\Server\涓嬬殑Visual Studio Solution鏂囦歡Server.sln灝卞彲浠ョ紪璇?span lang="EN-US" style="LINE-HEIGHT: 19px">MapGuide鏈嶅姟鍣ㄣ?/span>

緙栬瘧MapGuide Web鎵╁睍鐨勬楠ゅ涓嬶細(xì)

1錛?/span> 聽(tīng) 瀹夎JDK

鎵╁睍闇瑕佸畨瑁?span lang="EN-US" style="LINE-HEIGHT: 19px">Java JDK 1.3鎴栨洿楂樼殑鐗堟湰錛屽鏋滄病鏈夊畨瑁?span lang="EN-US" style="LINE-HEIGHT: 19px">JDK錛岃璁塊棶http://java.sun.com涓嬭澆瀹夎瀹冦?/span>

2錛?/span> 聽(tīng) 璁劇疆鐜鍙橀噺

闇瑕佹敞鎰忕殑鏄笉鍚岀増鏈殑MapGuide婧愪唬鐮侀渶瑕佽緗笉鍚岀殑鐜鍙橀噺錛屾墍浠ヨ娉ㄦ剰鍙傝冨搴旂増鏈殑鏂囨。銆?/span>

3錛?/span> 聽(tīng) 緙栬瘧OEM

緇勪歡鍙渶瑕佺紪璇戜竴嬈★紝濡傛灉鍦ㄧ紪璇?span lang="EN-US" style="LINE-HEIGHT: 19px">MapGuide鏈嶅姟鍣ㄦ椂宸茬粡緙栬瘧浜?span lang="EN-US" style="LINE-HEIGHT: 19px">OEM錛岄偅涔堟棤闇閲嶆柊緙栬瘧銆?/span>

4錛?/span> 聽(tīng) 緙栬瘧MapGuide Web鎵╁睍

榪欓儴鍒嗕唬鐮佹槸MapGuide Web鎵╁睍鐪熸鐨勪唬鐮侊紝鍦?span lang="EN-US" style="LINE-HEIGHT: 19px">Window騫沖彴涓婃墦寮鏂囦歡澶?span lang="EN-US" style="LINE-HEIGHT: 19px">\MgDev\Web\src涓嬬殑Visual Studio Solution鏂囦歡WebTier.sln灝卞彲浠ョ紪璇?span lang="EN-US" style="LINE-HEIGHT: 19px">MapGuide Web鎵╁睍銆?/span>



甯呭瓙 2011-04-15 00:21 鍙戣〃璇勮
]]>
MapGuide婧愪唬鐮佺粨鏋?/title><link>http://www.tkk7.com/gdws/articles/348325.html</link><dc:creator>甯呭瓙</dc:creator><author>甯呭瓙</author><pubDate>Thu, 14 Apr 2011 16:20:00 GMT</pubDate><guid>http://www.tkk7.com/gdws/articles/348325.html</guid><wfw:comment>http://www.tkk7.com/gdws/comments/348325.html</wfw:comment><comments>http://www.tkk7.com/gdws/articles/348325.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/gdws/comments/commentRss/348325.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/gdws/services/trackbacks/348325.html</trackback:ping><description><![CDATA[ <span id="mcie020" class="Apple-style-span" style="WORD-SPACING: 0px; FONT: medium Simsun; TEXT-TRANSFORM: none; COLOR: rgb(0,0,0); TEXT-INDENT: 0px; WHITE-SPACE: normal; LETTER-SPACING: normal; BORDER-COLLAPSE: separate; orphans: 2; widows: 2; webkit-border-horizontal-spacing: 0px; webkit-border-vertical-spacing: 0px; webkit-text-decorations-in-effect: none; webkit-text-size-adjust: auto; webkit-text-stroke-width: 0px"> <span id="iawiukm" class="Apple-style-span" style="FONT-SIZE: 14px; LINE-HEIGHT: 21px; FONT-FAMILY: verdana, sans-serif; TEXT-ALIGN: left"> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; PADDING-TOP: 0px; TEXT-ALIGN: justify"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">MapGuide</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>婧愪唬鐮佺殑鐩綍緇撴瀯濡?/span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>琛?/span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'"> <span lang="EN-US" style="LINE-HEIGHT: 19px">18</span> <span lang="EN-US" style="LINE-HEIGHT: 19px">鈥?span style="LINE-HEIGHT: 19px">1</span></span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鍜?/span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鍥?/span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'"> <span lang="EN-US" style="LINE-HEIGHT: 19px">18</span> <span lang="EN-US" style="LINE-HEIGHT: 19px">鈥?span style="LINE-HEIGHT: 19px">2</span></span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鎵紺猴紝鍦ㄥ悗緇殑绔犺妭涓垜浠皢閲嶇偣浠嬬粛</span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">Common</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>銆?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">OEM</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>銆佹湇鍔″櫒鍜?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">Web</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鎵╁睍閮ㄥ垎鐨勬簮浠g爜銆?/span> </span> </p> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt; PADDING-TOP: 0px; TEXT-ALIGN: justify"> <span lang="EN-US" style="LINE-HEIGHT: 21px"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'"> </span> </span>聽(tīng)</p> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"> </p> <table class="MsoNormalTable" style="BORDER-COLLAPSE: collapse" cellspacing="0" cellpadding="0" border="1"> <tbody> <tr> <td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: black 1pt solid; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 140.1pt; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent" valign="top" width="187"> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt; PADDING-TOP: 0px; TEXT-ALIGN: center" align="center"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <strong> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鏂囦歡澶?/span> </strong> <strong> </strong> </span> </p> </td> <td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: black 1pt solid; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: rgb(236,233,216); PADDING-BOTTOM: 0cm; WIDTH: 295.85pt; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent" valign="top" width="394"> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt; PADDING-TOP: 0px; TEXT-ALIGN: center" align="center"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <strong> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鎻忚堪</span> </strong> <strong> </strong> </span> </p> </td> </tr> <tr> <td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 140.1pt; BORDER-TOP-COLOR: rgb(236,233,216); PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent" valign="top" width="187"> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt; PADDING-TOP: 0px; TEXT-ALIGN: justify"> <span lang="EN-US" style="LINE-HEIGHT: 21px"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">Installer</span> </span> </p> </td> <td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: rgb(236,233,216); PADDING-BOTTOM: 0cm; WIDTH: 295.85pt; BORDER-TOP-COLOR: rgb(236,233,216); PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent" valign="top" width="394"> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt; PADDING-TOP: 0px; TEXT-ALIGN: justify"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">MapGuide</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>瀹夎紼嬪簭鐨勬簮浠g爜銆?/span> </span> </p> </td> </tr> <tr> <td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-BOTTOM-COLOR: rgb(236,233,216); PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 140.1pt; BORDER-TOP-COLOR: rgb(236,233,216); PADDING-TOP: 0cm; BACKGROUND-COLOR: transparent" valign="top" width="187"> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt; PADDING-TOP: 0px; TEXT-ALIGN: justify"> <span lang="EN-US" style="LINE-HEIGHT: 21px; FONT-FAMILY: Calibri, sans-serif"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px">MgDev</span> </span> </p> </td> <td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: rgb(236,233,216); BORDER-BOTTOM-COLOR: rgb(236,233,216); PADDING-BOTTOM: 0cm; WIDTH: 295.85pt; BORDER-TOP-COLOR: rgb(236,233,216); PADDING-TOP: 0cm; BACKGROUND-COLOR: transparent" valign="top" width="394"> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt; PADDING-TOP: 0px; TEXT-ALIGN: justify"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <span lang="EN-US" style="LINE-HEIGHT: 19px; FONT-FAMILY: Calibri, sans-serif">MapGuide</span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鏈嶅姟鍣ㄥ拰</span> <span lang="EN-US" style="LINE-HEIGHT: 19px; FONT-FAMILY: Calibri, sans-serif">Web</span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鎵╁睍鐨勬簮浠g爜銆?/span> </span> </p> </td> </tr> <tr> <td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-BOTTOM-COLOR: rgb(236,233,216); PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 140.1pt; BORDER-TOP-COLOR: rgb(236,233,216); PADDING-TOP: 0cm; BACKGROUND-COLOR: transparent" valign="top" width="187"> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt; PADDING-TOP: 0px; TEXT-ALIGN: justify"> <span lang="EN-US" style="LINE-HEIGHT: 21px; FONT-FAMILY: Calibri, sans-serif"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px">聽(tīng)<span id="io0iu0c" class="Apple-converted-space">聽(tīng)</span></span>BuildTools</span> </span> </p> </td> <td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: rgb(236,233,216); BORDER-BOTTOM-COLOR: rgb(236,233,216); PADDING-BOTTOM: 0cm; WIDTH: 295.85pt; BORDER-TOP-COLOR: rgb(236,233,216); PADDING-TOP: 0cm; BACKGROUND-COLOR: transparent" valign="top" width="394"> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt 21pt; TEXT-INDENT: -21pt; PADDING-TOP: 0px; TEXT-ALIGN: justify"> <span lang="EN-US" style="LINE-HEIGHT: 21px; FONT-FAMILY: Wingdings"> <span style="LINE-HEIGHT: 21px"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px">l</span> <span style="FONT: 7pt 'Times New Roman'">聽(tīng)<span id="euc0osw" class="Apple-converted-space">聽(tīng)</span></span> </span> </span> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>緙栬瘧</span> <span lang="EN-US" style="LINE-HEIGHT: 19px; FONT-FAMILY: Calibri, sans-serif">MapGuide</span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>闇瑕佷嬌鐢ㄧ殑涓浜涘伐鍏楓?/span> </span> </p> </td> </tr> <tr> <td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-BOTTOM-COLOR: rgb(236,233,216); PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 140.1pt; BORDER-TOP-COLOR: rgb(236,233,216); PADDING-TOP: 0cm; BACKGROUND-COLOR: transparent" valign="top" width="187"> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt; PADDING-TOP: 0px; TEXT-ALIGN: justify"> <span lang="EN-US" style="LINE-HEIGHT: 21px; FONT-FAMILY: Calibri, sans-serif"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px">聽(tīng)<span id="e2kgcs0" class="Apple-converted-space">聽(tīng)</span></span>Common</span> </span> </p> </td> <td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: rgb(236,233,216); BORDER-BOTTOM-COLOR: rgb(236,233,216); PADDING-BOTTOM: 0cm; WIDTH: 295.85pt; BORDER-TOP-COLOR: rgb(236,233,216); PADDING-TOP: 0cm; BACKGROUND-COLOR: transparent" valign="top" width="394"> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt 21pt; TEXT-INDENT: -21pt; PADDING-TOP: 0px; TEXT-ALIGN: justify"> <span lang="EN-US" style="LINE-HEIGHT: 21px; FONT-FAMILY: Wingdings"> <span style="LINE-HEIGHT: 21px"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px">l</span> <span style="FONT: 7pt 'Times New Roman'">聽(tīng)<span id="oso20gm" class="Apple-converted-space">聽(tīng)</span></span> </span> </span> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <span lang="EN-US" style="LINE-HEIGHT: 19px; FONT-FAMILY: Calibri, sans-serif">MapGuide</span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鏈嶅姟鍣ㄥ拰</span> <span lang="EN-US" style="LINE-HEIGHT: 19px; FONT-FAMILY: Calibri, sans-serif">Web</span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鎵╁睍鍏卞悓渚濊禆鐨勪竴浜涙ā鍧椼?/span> </span> </p> </td> </tr> <tr> <td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-BOTTOM-COLOR: rgb(236,233,216); PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 140.1pt; BORDER-TOP-COLOR: rgb(236,233,216); PADDING-TOP: 0cm; BACKGROUND-COLOR: transparent" valign="top" width="187"> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt; PADDING-TOP: 0px; TEXT-ALIGN: justify"> <span lang="EN-US" style="LINE-HEIGHT: 21px; FONT-FAMILY: Calibri, sans-serif"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px">聽(tīng)<span id="2aks00a" class="Apple-converted-space">聽(tīng)</span></span>Doc</span> </span> </p> </td> <td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: rgb(236,233,216); BORDER-BOTTOM-COLOR: rgb(236,233,216); PADDING-BOTTOM: 0cm; WIDTH: 295.85pt; BORDER-TOP-COLOR: rgb(236,233,216); PADDING-TOP: 0cm; BACKGROUND-COLOR: transparent" valign="top" width="394"> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt 21pt; TEXT-INDENT: -21pt; PADDING-TOP: 0px; TEXT-ALIGN: justify"> <span lang="EN-US" style="LINE-HEIGHT: 21px; FONT-FAMILY: Wingdings"> <span style="LINE-HEIGHT: 21px"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px">l</span> <span style="FONT: 7pt 'Times New Roman'">聽(tīng)<span id="woyiswy" class="Apple-converted-space">聽(tīng)</span></span> </span> </span> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <span lang="EN-US" style="LINE-HEIGHT: 19px; FONT-FAMILY: Calibri, sans-serif">MapGudie</span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鏂囨。銆佸簲鐢ㄧ▼搴忕ず渚嬪拰鐢熸垚</span> <span lang="EN-US" style="LINE-HEIGHT: 19px; FONT-FAMILY: Calibri, sans-serif">MapGuide</span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鏂囨。闇瑕佺敤鍒扮殑宸ュ叿銆?/span> </span> </p> </td> </tr> <tr> <td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-BOTTOM-COLOR: rgb(236,233,216); PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 140.1pt; BORDER-TOP-COLOR: rgb(236,233,216); PADDING-TOP: 0cm; BACKGROUND-COLOR: transparent" valign="top" width="187"> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt; PADDING-TOP: 0px; TEXT-ALIGN: justify"> <span lang="EN-US" style="LINE-HEIGHT: 21px; FONT-FAMILY: Calibri, sans-serif"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px">聽(tīng)<span id="agqyu0u" class="Apple-converted-space">聽(tīng)</span></span>OEM</span> </span> </p> </td> <td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: rgb(236,233,216); BORDER-BOTTOM-COLOR: rgb(236,233,216); PADDING-BOTTOM: 0cm; WIDTH: 295.85pt; BORDER-TOP-COLOR: rgb(236,233,216); PADDING-TOP: 0cm; BACKGROUND-COLOR: transparent" valign="top" width="394"> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt 21pt; TEXT-INDENT: -21pt; PADDING-TOP: 0px; TEXT-ALIGN: justify"> <span lang="EN-US" style="LINE-HEIGHT: 21px; FONT-FAMILY: Wingdings"> <span style="LINE-HEIGHT: 21px"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px">l</span> <span style="FONT: 7pt 'Times New Roman'">聽(tīng)<span id="kssakao" class="Apple-converted-space">聽(tīng)</span></span> </span> </span> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <span lang="EN-US" style="LINE-HEIGHT: 19px; FONT-FAMILY: Calibri, sans-serif">MapGuide</span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鎵渚濊禆鐨勭涓夋柟緇勪歡銆?/span> </span> </p> </td> </tr> <tr> <td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-BOTTOM-COLOR: rgb(236,233,216); PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 140.1pt; BORDER-TOP-COLOR: rgb(236,233,216); PADDING-TOP: 0cm; BACKGROUND-COLOR: transparent" valign="top" width="187"> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt; PADDING-TOP: 0px; TEXT-ALIGN: justify"> <span lang="EN-US" style="LINE-HEIGHT: 21px; FONT-FAMILY: Calibri, sans-serif"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px">聽(tīng)<span id="smw2sia" class="Apple-converted-space">聽(tīng)</span></span>Server</span> </span> </p> </td> <td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: rgb(236,233,216); BORDER-BOTTOM-COLOR: rgb(236,233,216); PADDING-BOTTOM: 0cm; WIDTH: 295.85pt; BORDER-TOP-COLOR: rgb(236,233,216); PADDING-TOP: 0cm; BACKGROUND-COLOR: transparent" valign="top" width="394"> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt 21pt; TEXT-INDENT: -21pt; PADDING-TOP: 0px; TEXT-ALIGN: justify"> <span lang="EN-US" style="LINE-HEIGHT: 21px; FONT-FAMILY: Wingdings"> <span style="LINE-HEIGHT: 21px"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px">l</span> <span style="FONT: 7pt 'Times New Roman'">聽(tīng)<span id="u2m0e0o" class="Apple-converted-space">聽(tīng)</span></span> </span> </span> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <span lang="EN-US" style="LINE-HEIGHT: 19px; FONT-FAMILY: Calibri, sans-serif">MapGuide</span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鏈嶅姟鍣ㄧ殑婧愪唬鐮併?/span> </span> </p> </td> </tr> <tr> <td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-BOTTOM-COLOR: rgb(236,233,216); PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 140.1pt; BORDER-TOP-COLOR: rgb(236,233,216); PADDING-TOP: 0cm; BACKGROUND-COLOR: transparent" valign="top" width="187"> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt; PADDING-TOP: 0px; TEXT-ALIGN: justify"> <span lang="EN-US" style="LINE-HEIGHT: 21px; FONT-FAMILY: Calibri, sans-serif"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px">聽(tīng)<span id="kqqmy2o" class="Apple-converted-space">聽(tīng)</span></span>UnitTest</span> </span> </p> </td> <td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: rgb(236,233,216); BORDER-BOTTOM-COLOR: rgb(236,233,216); PADDING-BOTTOM: 0cm; WIDTH: 295.85pt; BORDER-TOP-COLOR: rgb(236,233,216); PADDING-TOP: 0cm; BACKGROUND-COLOR: transparent" valign="top" width="394"> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt 21pt; TEXT-INDENT: -21pt; PADDING-TOP: 0px; TEXT-ALIGN: justify"> <span lang="EN-US" style="LINE-HEIGHT: 21px; FONT-FAMILY: Wingdings"> <span style="LINE-HEIGHT: 21px"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px">l</span> <span style="FONT: 7pt 'Times New Roman'">聽(tīng)<span id="kckuq2a" class="Apple-converted-space">聽(tīng)</span></span> </span> </span> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <span lang="EN-US" style="LINE-HEIGHT: 19px; FONT-FAMILY: Calibri, sans-serif">MapGuide Web</span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鎵╁睍鍗曞厓嫻嬭瘯浠g爜銆?/span> </span> </p> </td> </tr> <tr> <td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-BOTTOM-COLOR: rgb(236,233,216); PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 140.1pt; BORDER-TOP-COLOR: rgb(236,233,216); PADDING-TOP: 0cm; BACKGROUND-COLOR: transparent" valign="top" width="187"> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt; PADDING-TOP: 0px; TEXT-ALIGN: justify"> <span lang="EN-US" style="LINE-HEIGHT: 21px; FONT-FAMILY: Calibri, sans-serif"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px">聽(tīng)<span id="m0sqosu" class="Apple-converted-space">聽(tīng)</span></span>Web</span> </span> </p> </td> <td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: rgb(236,233,216); BORDER-BOTTOM-COLOR: rgb(236,233,216); PADDING-BOTTOM: 0cm; WIDTH: 295.85pt; BORDER-TOP-COLOR: rgb(236,233,216); PADDING-TOP: 0cm; BACKGROUND-COLOR: transparent" valign="top" width="394"> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt 21pt; TEXT-INDENT: -21pt; PADDING-TOP: 0px; TEXT-ALIGN: justify"> <span lang="EN-US" style="LINE-HEIGHT: 21px; FONT-FAMILY: Wingdings"> <span style="LINE-HEIGHT: 21px"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px">l</span> <span style="FONT: 7pt 'Times New Roman'">聽(tīng)<span id="2iuqmg0" class="Apple-converted-space">聽(tīng)</span></span> </span> </span> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <span lang="EN-US" style="LINE-HEIGHT: 19px; FONT-FAMILY: Calibri, sans-serif">MapGuide Web</span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鎵╁睍鐨勬簮浠g爜銆?/span> </span> </p> </td> </tr> <tr> <td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: black 1pt solid; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 140.1pt; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent" valign="top" width="187"> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt; PADDING-TOP: 0px; TEXT-ALIGN: justify"> <span lang="EN-US" style="LINE-HEIGHT: 21px"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">Tools</span> </span> </p> </td> <td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: black 1pt solid; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: rgb(236,233,216); PADDING-BOTTOM: 0cm; WIDTH: 295.85pt; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent" valign="top" width="394"> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt; PADDING-TOP: 0px; TEXT-ALIGN: justify"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">MapGuide Maestro</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鐨勬簮浠g爜錛屽叧浜?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">Maestro</span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>鏇磋緇嗙殑淇℃伅璇峰弬鑰?/span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">2.1.3.2.2</span> </span> </span> <span style="LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>銆?/span> </span> </p> </td> </tr> </tbody> </table> <p style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 1em 0px 0.5em; PADDING-TOP: 0px"> </p> <p class="MsoCaption" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt; PADDING-TOP: 0px"> <a style="COLOR: rgb(51,102,153); TEXT-DECORATION: none" name="_Ref244355689"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px; FONT-FAMILY: 瀹?huà)浣?>琛?span class="Apple-converted-space">聽(tīng)</span></span> </a> <span style="LINE-HEIGHT: 21px; FONT-FAMILY: 瀹?huà)浣?> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px"> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px">18</span> </span> </span> <span style="LINE-HEIGHT: 19px"> <span lang="EN-US" style="LINE-HEIGHT: 19px">鈥?/span> </span> <span style="LINE-HEIGHT: 19px"> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span style="LINE-HEIGHT: 19px">1</span> </span> </span> <span lang="EN-US" style="LINE-HEIGHT: 19px"> <span id="c2wgcsu" class="Apple-converted-space">聽(tīng)</span>MapGuide</span>婧愪唬鐮佺洰褰曠粨鏋?/span> </span> </p> <p class="MsoCaption" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt; PADDING-TOP: 0px">聽(tīng)</p> <p class="MsoNormal" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0cm 0cm 0pt; PADDING-TOP: 0px"> <span lang="EN-US" style="LINE-HEIGHT: 21px"> <span style="FONT-SIZE: small; LINE-HEIGHT: 19px; FONT-FAMILY: 'Times New Roman'">聽(tīng)<img style="BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height="487" alt="MapGuide Source Code Structure" src="http://p.blog.csdn.net/images/p_blog_csdn_net/MapGuide_Inside/EntryImages/20091104/MapGuide_Source_Code.JPG" width="631" /></span> </span> </p> </span> </span> <img src ="http://www.tkk7.com/gdws/aggbug/348325.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/gdws/" target="_blank">甯呭瓙</a> 2011-04-15 00:20 <a href="http://www.tkk7.com/gdws/articles/348325.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>MapGuide婧愮爜鍒嗘瀽http://www.tkk7.com/gdws/articles/348324.html甯呭瓙甯呭瓙Thu, 14 Apr 2011 16:20:00 GMThttp://www.tkk7.com/gdws/articles/348324.htmlhttp://www.tkk7.com/gdws/comments/348324.htmlhttp://www.tkk7.com/gdws/articles/348324.html#Feedback0http://www.tkk7.com/gdws/comments/commentRss/348324.htmlhttp://www.tkk7.com/gdws/services/trackbacks/348324.html

MapGuide Subversion Subversion ( http://subversion.tigris.org/ ) Subversion TortoiseSVN MapGuide SVN Windows Shell TortoiseSVN ( http://tortoisesvn.tigris.org/ ) TortoiseSVN Subversion http://svn.osgeo.org/mapguide/ Windows Shell SVN Checkout 鍥?/span> 18 鈥?span style="LINE-HEIGHT: 19px">1 Checkout Directory OK MapGuide Trunk MapGuide branches MapGuide 1.0.0 2.1 聽(tīng)SVN for MapGuide

聽(tīng)

聽(tīng) 18 鈥?/span> 1 聽(tīng)TortoiseSVN鐢ㄤ簬Checkout浠g爜鐨勭敤鎴風(fēng)晫闈?/span>

聽(tīng)

MapGuide http://trac.osgeo.org/mapguide/browser MapGuide

甯呭瓙 2011-04-15 00:20 鍙戣〃璇勮
]]>
MapGuide Web APIhttp://www.tkk7.com/gdws/articles/348323.html甯呭瓙甯呭瓙Thu, 14 Apr 2011 16:18:00 GMThttp://www.tkk7.com/gdws/articles/348323.htmlhttp://www.tkk7.com/gdws/comments/348323.htmlhttp://www.tkk7.com/gdws/articles/348323.html#Feedback0http://www.tkk7.com/gdws/comments/commentRss/348323.htmlhttp://www.tkk7.com/gdws/services/trackbacks/348323.html

璁稿浜洪兘鐭ラ亾MapGuide鎻愪緵浜?NET銆丳HP鍜孞ava涓夌綾誨瀷鐨刉eb API錛屼絾鏄笉鐭ラ亾MapGuide鏄浣曞垱寤鴻繖涓夌綾誨瀷鐨凙PI鐨勩傝瘯鎯充竴涓嬶紝濡傛灉鍒嗗埆鍘誨垱寤鴻繖涓夌API錛岃繖灝嗘槸涓涓緢闅劇淮鎶ょ殑宸ヤ綔銆傛瘡嬈″鍔犳垨淇敼涓浜涘姛鑳斤紝灝遍渶瑕佸涓夌綾誨瀷鐨凙PI閮借繘琛屼慨鏀廣傛墍浠ワ紝MapGuide浣跨敤浜?jiǎn)SWIG鏉ヨ嚜鍔ㄧ敓鎴愯繖涓夌綾誨瀷鐨凙PI銆傛垜鎯寵繖涓椂鍊欒澶氫漢浼?xì)闂Q屼粈涔堟槸SWIG鍛紵鎴戞庝箞浠庢潵娌℃湁鍚榪囪繖涓笢涓滃憿錛佸叾瀹烇紝鎴戜篃鏄湪鍋歁apGuide寮鍙戠殑鏃跺欐墠寮濮嬩簡(jiǎn)瑙WIG鐨勩傛墍浠ワ紝棣栧厛璁╂垜浠潵璁よ瘑涓涓婼WIG錛岀劧鍚庡啀鏉ョ湅MapGuide鏄浣曚嬌鐢⊿WIG鏉ョ敓鎴怉PI鐨勩?/p>

1. SWIG綆浠?/strong>

聽(tīng)聽(tīng)聽(tīng) SWIG鏄疭imple Wrapper and Interface Generator鐨勭緝鍐欙紝鏄竴涓府鍔╀嬌鐢–鎴栬匔++緙栧啓鐨勮蔣浠跺垱寤哄叾浠栫紪璇█鐨凙PI鐨勫伐鍏楓備緥濡傦紝鎴戞兂瑕佷負(fù)涓涓狢++緙栧啓鐨勭▼搴忓垱寤?NET API錛屼竴鑸儏鍐典笅鎴戝繀欏諱嬌鐢ㄦ墭綆++(Managed C++)鍘葷紪鍐欏ぇ閲忕殑浠g爜鎵嶈兘鐢熸垚瀹冪殑.NET API銆傛湁浜?jiǎn)SWIG錛岃繖涓満姊扮殑宸ヤ綔灝嗗彉寰楅潪甯哥畝鍗曘備綘鍙』瑕佷嬌鐢ㄤ竴涓帴鍙f枃浠跺憡璇塖WIG瑕佷負(fù)閭d簺綾誨垱寤?NET API錛孲WIG灝變細(xì)鑷姩甯綘鐢熸垚瀹冪殑.NET API銆傛槸涓嶆槸闈炲父鐨勯叿鍟婏紵

聽(tīng)聽(tīng)聽(tīng) 褰撶劧錛孲WIG涓嶄粎浠呮敮鎸佸垱寤?NET API銆傛渶鏂扮増鏈殑SWIG鏀寔甯哥敤鑴氭湰璇█Perl銆丳HP銆丳ython銆乀cl銆丷uby鍜岄潪鑴氭湰璇█C#, Common Lisp (CLISP, Allegro CL, CFFI, UFFI), Java, Modula-3, OCAML浠ュ強(qiáng)R錛岀敋鑷蟲(chóng)槸緙栬瘧鍣ㄦ垨鑰呮眹緙栫殑璁″垝搴旂敤錛圙uile, MzScheme, Chicken錛夈?/p>

聽(tīng)聽(tīng)聽(tīng) 涓嬮潰鎴戜滑閫氳繃涓涓緥瀛愭潵鐪嬬湅SWIG鏄浣曞府鎴戜滑鍒涘緩API鐨勩傚亣璁炬垜鎵撶畻涓哄涓嬬殑C++綾誨垱寤篊#鍜孞ava鐨凙PI銆?/p>

聽(tīng)聽(tīng)聽(tīng) /* SwigTest.h */

聽(tīng)聽(tīng)聽(tīng) class CSwigTest {
聽(tīng)聽(tīng)聽(tīng) public:
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) CSwigTest();
聽(tīng)聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) virtual ~CSwigTest();
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) int Add(int a, int b) { return a + b; }
聽(tīng)聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) int Substract(int a, int b) { return a - b; }

聽(tīng)聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) int Multiple(int a, int b) { return a * b; }
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) float Divide(int a, int b) { return (float)a / (float)b; }
聽(tīng)聽(tīng)聽(tīng) };

1.1 鎺ュ彛鏂囦歡

聽(tīng)聽(tīng)聽(tīng) 棣栧厛錛屼綘闇瑕佸啓涓涓帴鍙f枃浠?Interface File)錛屽憡璇塖WIG瑕佷負(fù)閭d簺綾葷殑閭d簺鏂規(guī)硶鍒涘緩API銆傚涓嬬殑鎺ュ彛鏂囦歡鍙負(fù)綾籆SwigTest鐨勬柟娉旳dd(...)鍜孲ubtract(...)鐢熸垚API錛屽洜涓哄湪鎺ュ彛鏂囦歡鐨勬帴鍙e0鏄庨儴鍒嗗彧澹版槑浜?jiǎn)涓や釜鏂规硶銆?/p>

聽(tīng)聽(tīng)聽(tīng) /* SwigTest.i */
聽(tīng)聽(tīng)聽(tīng) %module SwigTest
聽(tīng)聽(tīng)聽(tīng) %{
聽(tīng)聽(tīng)聽(tīng) #include "SwigTest.h"
聽(tīng)聽(tīng)聽(tīng) %}

聽(tīng) 聽(tīng) /*聽(tīng)--- 鎺ュ彛澹版槑閮ㄥ垎 ---*/
聽(tīng)聽(tīng)聽(tīng) class CSwigTest {
聽(tīng)聽(tīng)聽(tīng) public:
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) int Add(int a, int b);

聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) int Substract(int a, int b);

聽(tīng)聽(tīng)聽(tīng) };

聽(tīng)聽(tīng)聽(tīng) 娉ㄨВ錛?module鏍囪鐢ㄤ簬瀹氫箟SWIG鐢熸垚鐨勬ā鍧楃殑鍚嶇О錛?{%}鏍囪涓殑鍐呭浼?xì)琚竴瀛椾笉宸湴鎻掑叆SWIG鑷姩鐢熸垚鐨勬枃浠秞xx_wrapper.c涓紝鍏朵腑xxx浠h〃鐢?module鎸囧畾鐨勬ā鍧楀悕縐般傝繖涓枃浠朵細(xì)鍦ㄤ笅闈粙緇嶏紝涓嶅繀鐫鎬ュ幓鐞嗚В瀹冪┒绔熸湁浠涔堜綔鐢ㄣ?/p>

聽(tīng)聽(tīng)聽(tīng) 濡傛灉鎵撶畻涓虹被涓墍鏈夋柟娉曞垱寤篈PI錛岄偅涔堟湁涓涓潪甯哥畝鍗曠殑鍔炴硶錛屽湪鎺ュ彛鏂囦歡鐨勭被澹版槑閮ㄥ垎浣跨敤%include鏍囪銆係WIG灝嗗%include鎵鎸囧畾鐨勬枃浠惰繘琛岃娉曞垎鏋愶紝綾諱腑鎵鏈夊叕鏈夋柟娉?Public Method)閮藉皢鍦ˋPI涓毚闇層?/p>

聽(tīng)聽(tīng)聽(tīng) /* SwigTest.i */
聽(tīng)聽(tīng)聽(tīng) %module SwigTest
聽(tīng)聽(tīng)聽(tīng) %{
聽(tīng)聽(tīng)聽(tīng) #include "SwigTest.h"
聽(tīng)聽(tīng)聽(tīng) %}
聽(tīng)聽(tīng)聽(tīng) #include 鈥淪wigTest.h鈥澛?/p>

1.2 緙栬瘧妯″潡

聽(tīng)聽(tīng)聽(tīng) 鏈変簡(jiǎn)鎺ュ彛鏂囦歡涔嬪悗錛屽墿涓嬬殑浜嬪氨鏄墽琛屽嚑鏉″懡浠ゃ備笅闈㈡垜浠互Windows騫沖彴涓婄敓鎴?NET API涓轟緥浠嬬粛榪欎簺鍛戒護(hù)銆?/p>

聽(tīng)聽(tīng)聽(tīng) (a) 璋冪敤SWIG鑷姩鐢熸垚浠g爜

聽(tīng)聽(tīng)聽(tīng) swig -csharp聽(tīng) SwigTest.i

聽(tīng)聽(tīng)聽(tīng) 鎵ц涓婇潰鐨勫懡浠や細(xì)浜х敓涓涓狢璇█鏂囦歡SwigTest_wrapper.c鍜屽涓狢#鏂囦歡銆傚湪鏂囦歡SwigTest_wrapper.c涓紝SWIG涓烘帴鍙f枃浠朵腑鎺ュ彛澹版槑閮ㄥ垎鎸囧畾鐨勬瘡涓柟娉曚駭鐢熶竴涓叏灞鏂規(guī)硶錛屼互渚緾#浣跨敤Pinvoke璋冪敤榪欎簺鍑芥暟銆傝岄偅浜汣#鏂囦歡灝辨槸鐢ㄦ潵鐢熸垚.NET API鐨勩?/p>

聽(tīng)聽(tīng)聽(tīng)聽(tīng)(b) 涓篊++浠g爜鐢熸垚DLL(鍔ㄦ侀摼鎺ュ簱)

聽(tīng)聽(tīng)聽(tīng) cl SwigTest_wrapper.c *.cpp

聽(tīng)聽(tīng)聽(tīng) link *.obj /out:SwigTest.dll

聽(tīng)聽(tīng)聽(tīng) 鎵ц涓婇潰鐨勫懡浠わ紝浼?xì)湄?fù)鎴戜滑緙栧啓C(jī)++浠g爜鐢熸垚DLL銆傚湪緙栬瘧C++鏂囦歡鏃訛紝涓瀹氳鍖呮嫭SWIG涓烘垜浠敓鎴愮殑C++鏂囦歡SwigTest_wrapper.cpp銆?/p>

聽(tīng)聽(tīng)聽(tīng) 娉ㄦ剰錛氫負(fù)浜?jiǎn)璁╁ぇ瀹朵究浜庣悊瑙d笂杩板懡渥o(hù)錛岃繖浜涘懡浠ゅ茍娌℃湁鍒楀嚭瀹屾暣鐨勭紪璇戝拰閾炬帴閫夐」銆?/p>

聽(tīng)聽(tīng)聽(tīng)聽(tīng)(C) 鐢熸垚.NET妯″潡

聽(tīng)聽(tīng)聽(tīng) csc /out:SwigTestNotNetAPI.dll /target:library *.cs

聽(tīng)聽(tīng)聽(tīng) 鎵ц涓婇潰鐨勫懡浠ゅ氨鐢熸垚浜?NET API妯″潡SwigTestNotNetAPI.dll銆傚鏋滅敤鎴鋒兂浣跨敤榪欎簺API錛屽彧闇瑕佹坊鍔犲SwigTestNotNetAPI.dll鐨勫紩鐢?Reference)灝卞彲浠ヤ簡(jiǎn)銆?/p>

聽(tīng)聽(tīng)聽(tīng) 鐢熸垚鍏跺畠璇█綾誨瀷API鐨勫懡浠ゅ熀鏈被浼鹼紝涓嬮潰鎴戜滑鍐嶄互Java鍦║nix騫沖彴涓嬬殑鍛戒護(hù)涓轟緥緇撴潫瀵筍WIG鐨勪粙緇嶃備簨瀹炰笂錛孲WIG涔熸槸涓涓紑婧愰」鐩傚鏋滄兂浜?jiǎn)瑙f洿澶氬叧浜嶴WIG鐨勪俊鎭紝澶у鍙互鐧婚檰SWIG鐨勫畼鏂圭綉绔?a style="COLOR: rgb(51,102,153); TEXT-DECORATION: none" >www.swig.org錛岄偅閲屾湁SWIG鏈璇︾粏鐨勮祫鏂欍?br />聽(tīng)聽(tīng)聽(tīng)聽(tīng)$ swig -java SwigTest_wrapper.i
聽(tīng)聽(tīng) 聽(tīng)$ gcc -c *.cpp SwigTest_wrapper.c -I/c/jdk1.3.1/include -I/c/jdk1.3.1/include/win32
聽(tīng)聽(tīng) 聽(tīng)$ gcc -shared *.o -mno-cygwin -Wl,--add-stdcall-alias聽(tīng) -o SwigTest.dll

2. SWIG鍦∕apGuide涓殑搴旂敤

聽(tīng)聽(tīng)聽(tīng) 鎴戜滑鍦ㄥ墠闈㈠凡緇忔彁鍒拌繃錛孧apGuide浣跨敤浜?jiǎn)SWIG鏉ヨ嚜鍔ㄧ敓鎴?NET銆丣ava鍜孭HP榪欎笁縐嶇被鍨嬬殑API銆備絾鏄紝SWIG涔熸湁涓嶅皯闄愬埗鍜岀己闄鳳紝鎵浠apGuide瀵筍WIG婧愪唬鐮佽繘琛屼簡(jiǎn)澶ч噺鐨勪慨鏀癸紝浠ユ弧瓚寵嚜宸辯殑瑕佹眰銆備笅闈紝鎴戜滑鐪嬬湅榪欎簺鏀硅繘銆?/p>

2.1 IMake宸ュ叿

聽(tīng)聽(tīng)聽(tīng) SWIG瑕佹眰寮鍙戜漢鍛樼紪鍐欎竴涓帴鍙f枃浠訛紝閭d箞鑳藉惁璁╂帴鍙f枃浠惰嚜鍔ㄧ敓鎴愬憿錛熷熺敤涓鍙ヤ腑鍥界Щ鍔ㄧ殑騫垮憡璇嶏紝鎴戣兘錛佽櫧鐒禨WIG娌℃湁鎻愪緵榪欐柟闈㈢殑宸ュ叿錛屼絾鏄垜浠彲浠ヨ嚜宸卞紑鍙戝悧錛両Make(Interface Maker)灝辨槸涓轟簡(jiǎn)婊¤凍榪欐牱鐨勮姹傝屽紑鍙戜竴涓伐鍏鳳紝緇欏畾涓涓猉ML鏂囦歡錛屽畠鑳藉府浣犺嚜鍔ㄧ敓鎴怱WIG鎺ュ彛鏂囦歡銆傜櫥褰昅apGuide寮婧愮増鐨勪唬鐮佹祻瑙堥〉闈?http://trac.osgeo.org/mapguide/browser)錛屽湪root/trunk/MgDev/BuildTools/WebTools/IMake鏂囦歡澶逛笅鍙互鎵懼埌IMake鐨勬簮浠g爜銆?/p>

聽(tīng)聽(tīng)聽(tīng)聽(tīng) 涓嬮潰鎴戜滑浠apGuide涓嬌鐢ㄧ殑XML鏂囦歡/trunk/MgDev/Web/src/MapGuideApi/MapGuideApiGen.xml涓轟緥錛屼粙緇嶄竴涓婭Make鐨勭敤娉曘備負(fù)浜?jiǎn)渚夸簬鐞嗚В锛屽湪姝ゆ垜鍒犳帀浜?jiǎn)鏂囦歡涓殑閮ㄥ垎鍐呭銆?/p>

聽(tīng)聽(tīng)聽(tīng) <?xml version="1.0" encoding="UTF-8"?>
聽(tīng)聽(tīng)聽(tīng) <Parameters>
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) <!-- 瀵瑰簲浜?Module鏍囪. -->
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) <Module name="MapGuideApi" />

聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) <!-- 鐢熸垚鐨勬帴鍙f枃浠剁殑鍚嶇О. -->
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) <Target path="./MapGuideApi.i" />

聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) <!-- 瀵瑰簲浜?{%}鏍囪 -->
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) <CppInline>
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) #include &lt;string&gt;
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) #include &lt;map&gt;
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) #include "MapGuideCommon.h"
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) #include "WebApp.h"
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) ......
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) </CppInline>

聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) <!-- 鐢ㄤ簬鏇挎崲鎺ュ彛涓嬌鐢ㄧ殑閮ㄥ垎綾誨瀷 -->
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) <TypeReplacements>
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) <TypeReplacement oldtype="CREFSTRING" newtype="STRINGPARAM" />
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) <TypeReplacement oldtype="INT64" newtype="long long" />
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) </TypeReplacements>

聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) <!-- 姝ら儴鍒嗙殑鍐呭娣誨姞鍦?{%}涔嬪悗錛屾帴鍙e0鏄庨儴鍒嗕箣鍓?-->
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) <SwigInline>
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) %include "language.i"聽(tīng)聽(tīng) //typemaps specific for each language
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) ......
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) </SwigInline>
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) <!-- 涓烘寚瀹氱殑C++鏂囦歡鐢熸垚鎺ュ彛澹版槑 -->
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) <Headers>
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) <Header path="../../../Common/Foundation/Data/Property.h" />
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) ......
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) </Headers>
聽(tīng)聽(tīng)聽(tīng) </Parameters>

聽(tīng)聽(tīng)聽(tīng) 鎵ц鍛戒護(hù)鈥淚Make MapGuideApiGen.xml鈥濓紝IMake灝卞府鎴戜滑鑷姩鐢熸垚浜?jiǎn)濡備笅SWIG鎺ュ彛鏂囦歡MapGuideApi.i銆?/p>

聽(tīng)聽(tīng)聽(tīng) /* MapGuideApi.i */
聽(tīng)聽(tīng)聽(tīng) %module MapGuideApi聽(tīng)
聽(tīng)聽(tīng)聽(tīng) %{
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) #include <string>;
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) #include <map>;
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) #include "MapGuideCommon.h"
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) #include "WebApp.h"
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) ......
聽(tīng)聽(tīng)聽(tīng) %}
聽(tīng)
聽(tīng)聽(tīng)聽(tīng) %include "language.i"聽(tīng)聽(tīng) //typemaps specific for each language
聽(tīng)聽(tīng)聽(tīng) ......

聽(tīng)聽(tīng)聽(tīng) class MgProperty: public MgNamedSerializable
聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng) public:
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) virtual INT16 GetPropertyType();
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) STRING GetName();
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) void SetName(CREFSTRING name);
聽(tīng)聽(tīng)聽(tīng) };

聽(tīng)聽(tīng)聽(tīng) ......

聽(tīng)聽(tīng)聽(tīng) 濡傛灉鎵撳紑鏂囦歡Proper.h錛屾垜浠彲浠ョ湅鍒癕gProperty鏈夋洿澶氱殑鏂規(guī)硶錛屼緥濡侰anSetName(...)銆備負(fù)浠涔堝彧鏈変笁涓柟娉曟坊鍔犲埌浜?jiǎn)SWIG鎺ュ彛鏂囦歡涓紵IMake鍦ㄧ敓鎴愭帴鍙f枃浠舵椂錛屽畠浼?xì)鏌ユ壘C++澶存枃浠朵腑鐨勫畯PUBLISHED_API銆傚彧鏈夎PUBLISHED_API淇グ鐨勬柟娉曪紝鎵嶄細(xì)娣誨姞鍒版帴鍙f枃浠朵腑銆?/p>

聽(tīng)聽(tīng)聽(tīng) 娉細(xì)瀹廝UBLISHED_API鍜孖NTERNAL_API鐨勫畾涔夊涓嬨?/p>

聽(tīng)聽(tīng)聽(tīng) #define PUBLISHED_API public

聽(tīng)聽(tīng)聽(tīng) #define INTERNAL_API public

聽(tīng)聽(tīng)聽(tīng) class MG_FOUNDATION_API MgProperty : public MgNamedSerializable聽(tīng)
聽(tīng)聽(tīng)聽(tīng) {聽(tīng)
聽(tīng)聽(tīng)聽(tīng) PUBLISHED_API:

聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) virtual INT16 GetPropertyType() = 0;聽(tīng) /// __get聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) STRING GetName();聽(tīng) /// __get, __set聽(tīng)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) void SetName(CREFSTRING name);聽(tīng)
聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng) INTERNAL_API:聽(tīng)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) virtual bool CanSetName();聽(tīng)
聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng) protected:聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) INT32 GetClassId();聽(tīng)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) MgProperty();聽(tīng)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) virtual ~MgProperty();聽(tīng)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) virtual void Dispose();聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) virtual void ToXml(string &str, bool includeType = true, string rootElmName = "Property") = 0;聽(tīng)
聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng) private:聽(tīng)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) friend class MgPropertyCollection;聽(tīng)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) STRING m_propertyName;聽(tīng)
聽(tīng)
聽(tīng)聽(tīng)聽(tīng) CLASS_ID:聽(tīng)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) static const INT32 m_cls_id = Foundation_Property_Property;聽(tīng)
聽(tīng)聽(tīng)聽(tīng) };聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng) 緇欏畾涓涓狢++甯擱噺瀹氫箟鏂囦歡錛孖Make榪樺彲浠ヨ嚜鍔ㄧ敓鎴愬搴旂殑鍏朵粬璇█鐨勫父閲忓畾涔夋枃浠躲侻apGuide .NET Web API涓殑鎵鏈夊父閲忛兘鏄嬌鐢↖Make鏉ョ敓鎴愮殑錛屼緥濡侻gMineType銆丮gPropertyType絳夈備笅闈㈡垜浠互MapGuide涓嬌鐢ㄧ殑XML鏂囦歡/trunk/MgDev/Web/src/MapGuideApi/Constants.xml涓轟緥錛屼粙緇嶅浣曡嚜鍔ㄧ敓鎴愬悇縐嶈璦鐨勫父閲忓畾涔夋枃浠躲傚悓鏍鳳紝涓轟簡(jiǎn)渚夸簬鐞嗚В錛屽湪姝ゆ垜鍒犳帀浜?jiǎn)鏂囦欢涓殑閮ㄥ垎鍐呭畯V備笌MapGuideApiGen.xml涓嶅悓錛孋onstants.xml鍖呭惈涓涓柊鐨勫厓绱燙lasses鐢ㄦ潵鎸囧嚭闇瑕佸湪鐩爣璇█涓駭鐢熷搴旂殑甯擱噺綾葷殑C++綾匯?br />聽(tīng)聽(tīng)聽(tīng) <?xml version="1.0" encoding="UTF-8"?>

聽(tīng)聽(tīng)聽(tīng) <Parameters>

聽(tīng)聽(tīng)聽(tīng) <!-- 鐢ㄤ簬鏇挎崲綾誨瀷 -->

聽(tīng)聽(tīng)聽(tīng) <PHPTypeReplacements>聽(tīng)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) <TypeReplacement oldtype="STRING" newtype="" />
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) <TypeReplacement oldtype="INT16" newtype="" />
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) ......
聽(tīng)聽(tīng)聽(tīng) </PHPTypeReplacements>
聽(tīng)聽(tīng)聽(tīng) <CSharpTypeReplacements>
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) <TypeReplacement oldtype="STRING" newtype="string" />
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) <TypeReplacement oldtype="INT16" newtype="short" />
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) ......
聽(tīng)聽(tīng)聽(tīng) </CSharpTypeReplacements>
聽(tīng)聽(tīng)聽(tīng) <JavaTypeReplacements>
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) <TypeReplacement oldtype="STRING" newtype="String" />
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) <TypeReplacement oldtype="INT16" newtype="short" />
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) ......
聽(tīng)聽(tīng)聽(tīng) </JavaTypeReplacements>

聽(tīng)聽(tīng)聽(tīng) <Namespace>OSGeo.MapGuide</Namespace>
聽(tīng)聽(tīng)聽(tīng) <Package>org.osgeo.mapguide</Package>

聽(tīng)聽(tīng)聽(tīng) <!--聽(tīng)鐢ㄤ簬鎸囧嚭闇瑕佸湪鐩爣璇█涓駭鐢熷搴旂殑甯擱噺綾葷殑C++綾?-->

聽(tīng)聽(tīng)聽(tīng) <Classes>
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) <Class name="MgMineType" />
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) <Class name="MgPropertyType" />
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) ......
聽(tīng)聽(tīng)聽(tīng) </Classes>

聽(tīng)聽(tīng)聽(tīng) <Headers>
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) <Header path="../../../Common/Foundation/Data/MimeType.h" />
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) <Header path="../../../Common/Foundation/Data/PropertyType.h" />
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) ......
聽(tīng)聽(tīng)聽(tīng) </Headers>

聽(tīng)聽(tīng)聽(tīng) </Parameters>

聽(tīng)聽(tīng)聽(tīng) 鎵ц鍛戒護(hù)鈥淚Make.exe Constants.xml C# Constants.cs鈥濓紝IMake灝卞府鎴戜滑鑷姩鐢熸垚浜?jiǎn)涓涓狢#甯擱噺鏂囦歡Constants.cs銆傚浜庢枃浠?trunk/MgDev/Common/Foundation/Data/PropertyType.h涓畾涔変簡(jiǎn)濡備笅甯擱噺錛?/p>

聽(tīng)聽(tīng)聽(tīng) class MgPropertyType聽(tīng)
聽(tīng)聽(tīng)聽(tīng) {聽(tīng)
聽(tīng)聽(tīng)聽(tīng) PUBLISHED_API:聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) static const int Null聽(tīng)聽(tīng)聽(tīng)聽(tīng) =聽(tīng) 0;
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) static const int Boolean聽(tīng) =聽(tīng) 1;聽(tīng)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) static const int Byte聽(tīng)聽(tīng)聽(tīng)聽(tīng) =聽(tīng) 2;聽(tīng)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) static const int DateTime =聽(tīng) 3;
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) static const int Single聽(tīng)聽(tīng) =聽(tīng) 4;聽(tīng)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) ......
聽(tīng)聽(tīng)聽(tīng) };

聽(tīng)聽(tīng)聽(tīng) 鍦ㄧ敓鎴愮殑Constants.cs鏂囦歡涓紝鏈夊涓嬬殑綾誨畾涔夈?br />聽(tīng)聽(tīng)聽(tīng) class MgPropertyType聽(tīng)
聽(tīng)聽(tīng)聽(tīng) {聽(tīng)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) static const int Null聽(tīng)聽(tīng)聽(tīng)聽(tīng) =聽(tīng) 0;
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) static const int Boolean聽(tīng) =聽(tīng) 1;聽(tīng)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) static const int Byte聽(tīng)聽(tīng)聽(tīng)聽(tīng) =聽(tīng) 2;聽(tīng)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) static const int DateTime =聽(tīng) 3;
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) static const int Single聽(tīng)聽(tīng) =聽(tīng) 4;聽(tīng)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) ......
聽(tīng)聽(tīng)聽(tīng) };

聽(tīng)聽(tīng)聽(tīng) 榪欎釜鏂囦歡鍙互琚獵#鐨勭紪璇戝櫒鐩存帴緙栬瘧錛屾墍浠apGuide娌℃湁浣跨敤SWIG鐢熸垚甯擱噺鐨凙PI錛岃屾槸鐩存帴浣跨敤IMake銆偮?tīng)濡傛灉鎯崇敓鎴怭HP鎴朖ava鐨勫父閲忓畾涔夋枃浠訛紝鍙渶瑕佸皢IMake鍛戒護(hù)鐨勫弬鏁?C#"鏇挎崲涓?PHP"鎴?Jave"灝卞彲浠ヤ簡(jiǎn)銆?/p>

2.2 MapGuide瀵筍WIG鐨勪慨鏀?/strong>
聽(tīng)聽(tīng)聽(tīng) 鍦∕apGuide寮濮嬩嬌鐢⊿WIG鐨勬椂鍊欙紝鍙敤鐨凷WIG鐨勬渶楂樼増鏈槸1.3.21錛屼粠閭d互鍚嶮apGuide鍦ㄦ病鏈夊崌綰ц繃SWIG銆傛墍浠ワ紝鍒扮幇鍦ㄤ負(fù)姝紝MapGuide鐨凷WIG鐗堟湰浠嶇劧鏄?.3.21銆傝繖涓増鏈殑SWIG鏈変笉灝戦檺鍒跺拰緙洪櫡錛?/p>

  • 鏃犳硶鍒涘緩鍩轟簬鑷畾涔夋牴寮傚父綾籑gException鐨勫紓甯稿鐞嗘満鍒躲?/li>
  • 鏃犳硶鍒涘緩灞炴?Property)銆?/li>
  • 瀵規(guī)煇浜涙柟娉曟棤娉曚駭鐢熸紜殑API銆備緥濡傦紝濡傛灉鏂規(guī)硶GetA(...)榪斿洖鐨勬槸綾籄鐨勫瓙綾籅鐨勫疄渚嬶紝SWIG鍒涘緩鐨凙PI榪斿洖鐨勪粛鐒舵槸A綾葷殑瀹炰緥銆傛鏃跺鏋滀綘鎶婅繑鍥炲艱漿鎹負(fù)綾籅錛岄偅涔堣漿鎹細(xì)澶辮觸銆?br />聽(tīng)聽(tīng)聽(tīng) A* GetA();
  • ......

聽(tīng)聽(tīng)聽(tīng) 浜嬪疄涓婃渶鏂扮殑SWIG鐗堟湰涔熸病鏈夊叏閮ㄨВ鍐寵繖浜涢棶棰橈紝鎵浠apGuide瀵筍WIG婧愪唬鐮佽繘琛屼簡(jiǎn)澶ч噺鐨勪慨鏀癸紝浠ユ弧瓚寵嚜宸辯殑瑕佹眰銆傜湅鐪婱apGuide鍦ㄤ嬌鐢⊿WIG鍛戒護(hù)鏄紶鍏ョ殑鍙傛暟錛屾垜浠彲浠ュ彂鐜版湁璁稿鍙傛暟涓嶆槸SWIG鏍囧噯鐨勫弬鏁幫紝渚嬪proxydir銆乧lsidcode銆乧lsiddata銆乧atchallcode絳夈?/p>


swig -c++ -csharp -dllname MapGuideUnmanagedApid -namespace OSGeo.MapGuide -proxydir .\custom -baseexception MgException -clsidcode getclassid.code -clsiddata m_cls_id -catchallcode catchall.code -dispose &quot;((MgDisposable*)arg1)-&gt;Release()&quot; -rethrow &quot;e-&gt;Raise();&quot; -nodefault -noconstants -module MapGuideApi -o MgApi_wrap.cpp -lib ..\..\..\Oem\SWIGEx\Lib MapGuideApi.i


聽(tīng)聽(tīng)聽(tīng) 鍦ㄦ錛屾垜浠笉鎵撶畻涓涓浠嬬粛榪欎簺鍙傛暟錛屽洜涓哄湪澶氭暟鎯呭喌涓嬩綘娌℃湁蹇呰瀵逛簡(jiǎn)瑙e弬鏁扮殑鍚箟銆傛垜浠彧浠嬬粛MapGuide鏄浣曟潵瑙e喅涓婅堪SWIG鐨勭浜屽拰絎笁涓棶棰樼殑錛屽洜涓哄湪鎵╁睍MapGuide Web API鐨勬椂鍊欎綘鍙兘浼?xì)鐢ㄥ緱鐫銆?/p>


2.2.1 鍒涘緩灞炴?/strong>
聽(tīng)聽(tīng)聽(tīng) 濡傛灉浣犵湅榪嘙apGuide婧愪唬鐮佺殑璇濓紝浣犱細(xì)鍙戠幇鏈夎澶氭柟娉曞0鏄庝箣鍚庢湁鈥淿_get鈥濄佲淿_set鈥濇垨鈥淿_get, __set鈥濊繖鏍風(fēng)殑娉ㄩ噴錛屽綾籑gProperty涓殑鏂規(guī)硶銆?br />聽(tīng)聽(tīng)聽(tīng) class MgProperty : public MgNamedSerializable聽(tīng)
聽(tīng)聽(tīng)聽(tīng) {聽(tīng)
聽(tīng)聽(tīng)聽(tīng) PUBLISHED_API:聽(tīng)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) virtual INT16 GetPropertyType() = 0;聽(tīng) /// __get聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) STRING GetName();聽(tīng) /// __get, __set聽(tīng)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) void SetName(CREFSTRING name);聽(tīng)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) ......
};
聽(tīng)聽(tīng)聽(tīng) 榪欎簺娉ㄩ噴鏄湁鐗規(guī)畩鍚箟鐨勶紝瀹冧滑灝辨槸鐢ㄦ潵瑙e喅涓婅堪SWIG鐨勭浜屼釜闂鐨勩傚綋IMake宸ュ叿鎵弿C++澶存枃浠舵椂鍙戠幇榪欐敞閲婂悗錛屼細(xì)鍦ㄧ洰褰曗?\custom鈥濅笅涓烘瘡涓被浜х敓涓涓府鍔╁垱寤哄睘鎬х殑浠g爜鏂囦歡銆備緥濡傦紝濡傛灉瑕佺被MgProperty鐢熸垚.NET API錛孖Make浼?xì)鍦ㄢ?\custom鈥濈敓鎴愪竴涓枃浠跺悕涓篗gProperty鐨凜#浠g爜鏂囦歡錛屽畠鐨勫唴瀹瑰涓嬶細(xì)
聽(tīng)聽(tīng)聽(tīng) public int PropertyType {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) get {return GetPropertyType(); }
聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng) public int Name {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) get { return GetPropertyType(); }
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) set { setName(value);}
聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng) 濡傛灉鍦⊿WIG鐨勫懡浠よ涓嬌鐢ㄤ簡(jiǎn)鍙傛暟proxydir錛岄偅涔圫WIG鍦ㄤ負(fù)姣忎釜綾葷敓鎴愪唬鐮佺殑鏃跺欙紝浼?xì)鍦╬roxydir鎵鎸囧畾鐨勭洰褰曚笅鏌ユ壘鍜岀被鍚嶇浉鍚岀殑鏂囦歡錛屽茍涓斿皢榪欎釜鏂囦歡涓殑浠g爜鎻掑叆綾葷殑鐩爣浠g爜涓傞氳繃榪欑鍔炴硶錛屽氨瑙e喅浜?jiǎn)涓姌q癝WIG鐨勭浜屼釜闂銆?/p>

2.2.2 ClassId
聽(tīng)聽(tīng)聽(tīng) MapGuide Web API涓殑鎵鏈夌被閮芥槸浠嶮gObject緇ф壙鑰屾潵鐨勶紝鍦ㄧ被MgObject涓湁涓涓柟娉旼etClassId()鐢ㄦ潵榪斿洖姣忎釜綾誨敮涓鐨処D鍊箋侻apGuide灝辨槸鐢ㄨ繖涓柟娉曟潵瑙e喅涓婅堪SWIG鐨勭涓変釜闂鐨勶紝鎵浠ュ鏋滆鍦∕apGuide Web API涓鍔犱竴涓柊綾伙紝涓瀹氳瑕嗙洊(override)榪欎釜鏂規(guī)硶錛屽茍涓旀彁渚涗竴涓敮涓鐨処D鍊箋?br />聽(tīng)聽(tīng)聽(tīng) class MgObject
聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng) EXTERNAL_API:
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) virtual INT32 GetClassId();
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) virtual STRING GetClassName();
聽(tīng)聽(tīng)聽(tīng) INTERNAL_API:
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) virtual ~MgObject();
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) bool IsOfClass(INT32 classId);
聽(tīng)聽(tīng)聽(tīng) };

3. 鎵╁睍MapGudie Web API

聽(tīng)聽(tīng)聽(tīng)聽(tīng)濡傛灉浣犲彂鐜扮幇鏈夌殑MapGuide Web API鏃犳硶婊¤凍浣犵殑瑕佹眰錛屾病鏈夊叧緋伙紝浣犲彲浠ュ幓灝濊瘯鎵╁睍瀹冿紝鍥犱負(fù)MapGuide鏄紑婧愮殑銆?/p>

聽(tīng)聽(tīng)聽(tīng) 濡傛灉瑕佹柊娣葷被錛屽熀鏈楠ゅ涓嬶細(xì)
聽(tīng)聽(tīng)聽(tīng) (a) 淇敼C++浠g爜錛屾坊鍔犳柊鐨勭被銆傚浜庨渶瑕佹毚闇蹭簬API鐨勬柟娉曪紝浣跨敤瀹廝UBLISHED_API淇グ銆?br />聽(tīng)聽(tīng)聽(tīng) (b) 淇敼XML鏂囦歡/trunk/MgDev/Web/src/MapGuideApi/MapGuideApiGen.xml鐨凥eaders閮ㄥ垎錛屼負(fù)姣忎釜鏂版坊鍔犵被鎵鍦ㄧ殑C++澶存枃浠跺鍔犱竴涓狧eader鍏冪礌銆備笅闈㈢殑紺轟緥涓紝"path"浠h〃C++澶存枃浠剁殑璺緞錛?filename.h"浠h〃鏂囦歡鐨勫悕縐般?br />聽(tīng)聽(tīng)聽(tīng) <Headers>
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) <Header path="path/filename.h" />
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) ......
聽(tīng)聽(tīng)聽(tīng) </Headers>
聽(tīng)聽(tīng)聽(tīng) (c) 閲嶆柊緙栬瘧MapGuide鐨刉eb妯″潡(/trunk/MgDev/Web/src/)銆?br />聽(tīng)
聽(tīng)聽(tīng)聽(tīng) 濡傛灉瑕佸鍔犱竴浜涙柊鐨勬柟娉曞埌鐜版湁鐨勭被涓紝鍩烘湰姝ラ濡備笅錛?br />聽(tīng)聽(tīng)聽(tīng) (a) 淇敼C++浠g爜錛屾坊鍔犳柊鐨勬柟娉曪紝騫朵笖浣跨敤瀹廝UBLISHED_API淇グ榪欎簺鏂規(guī)硶銆?br />聽(tīng)聽(tīng)聽(tīng) (b) 閲嶆柊緙栬瘧MapGuide鐨刉eb妯″潡(/trunk/MgDev/Web/src/)銆?/p>

聽(tīng)聽(tīng)聽(tīng) 濡傛灉瑕佹柊澧炲父閲忕被錛屽熀鏈楠ゅ涓嬶細(xì)
聽(tīng)聽(tīng)聽(tīng) (a) 淇敼C++浠g爜錛屾坊鍔犳柊鐨勫父閲忕被銆?br />聽(tīng)聽(tīng)聽(tīng) (b) 淇敼XML鏂囦歡/trunk/MgDev/Web/src/MapGuideApi/Constants.xml錛屽湪Classes閮ㄥ垎涓烘瘡涓柊娣誨姞甯擱噺綾誨鍔犱竴涓狢lass鍏冪礌錛屽湪Headers閮ㄥ垎涓烘瘡涓柊娣誨姞甯擱噺綾繪墍鍦ㄧ殑C++澶存枃浠跺鍔犱竴涓狧eader鍏冪礌銆備笅闈㈢殑紺轟緥涓紝"ClassName"浠h〃鏂版坊鍔犵殑C++甯擱噺綾葷殑鍚嶇О銆?/p>

聽(tīng)聽(tīng)聽(tīng) <Classes>
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) <Class name="ClassName" />
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) ......
聽(tīng)聽(tīng)聽(tīng) </Classes>
聽(tīng)聽(tīng)聽(tīng) <Headers>
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) <Header path="path/filename.h" />
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) ......
聽(tīng)聽(tīng)聽(tīng) </Headers>聽(tīng)聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng) (c) 閲嶆柊緙栬瘧MapGuide鐨刉eb妯″潡(/trunk/MgDev/Web/src/)銆?/p>

甯呭瓙 2011-04-15 00:18 鍙戣〃璇勮
]]>
主站蜘蛛池模板: 亚洲一区二区三区乱码A| 鲁死你资源站亚洲av| 无码国产精品一区二区免费16| 浮力影院亚洲国产第一页| 牛牛在线精品观看免费正| 无码专区一va亚洲v专区在线| 无码亚洲成a人在线观看| 国产极品粉嫩泬免费观看| 四虎亚洲精品高清在线观看| 91成人免费观看网站| 亚洲国产成人资源在线软件 | 亚洲欧美综合精品成人导航| 在线观看免费高清视频| 97se亚洲国产综合自在线| 无人在线观看完整免费版视频| 激情内射亚洲一区二区三区爱妻 | 亚洲videosbestsex日本| 猫咪社区免费资源在线观看| 亚洲伊人久久大香线蕉结合| 免费看国产精品3a黄的视频| 亚洲中文无码mv| 最近免费字幕中文大全视频| 亚洲精品视频在线观看视频| 免费在线观看视频网站| 亚洲av乱码一区二区三区| 成年女人男人免费视频播放| 亚洲中文字幕AV每天更新| 国产乱人免费视频| 无码免费又爽又高潮喷水的视频 | 精品一区二区三区免费毛片爱| 亚洲精品午夜久久久伊人| 野花高清在线观看免费3中文 | 久久久久久夜精品精品免费啦| 亚洲综合色一区二区三区小说| 免费三级毛片电影片| 亚洲日本VA午夜在线电影| 国产成人免费A在线视频| sss在线观看免费高清| 久久精品国产亚洲沈樵| 人成免费在线视频| 国产亚洲高清不卡在线观看|