锘??xml version="1.0" encoding="utf-8" standalone="yes"?>欧美日韩在线播放一区,国产精品v一区二区三区,国产日韩在线不卡http://www.shnenglu.com/flagman/category/15576.html 鍞愪寒鐨勪釜浜烘妧鏈崥瀹? 銆愭榪庤漿杞斤紝浣嗚鏍囨槑鍘熶綔鑰呫?/description>zh-cnSat, 12 Feb 2011 11:12:19 GMTSat, 12 Feb 2011 11:12:19 GMT60鍙嶅皠鐨勭壒鎬ф槸緇忓父浼氫嬌鐢ㄥ埌鐨?/title><link>http://www.shnenglu.com/flagman/archive/2011/02/12/reflection_feature_used_in_daily_dev.html</link><dc:creator>flagman</dc:creator><author>flagman</author><pubDate>Sat, 12 Feb 2011 09:21:00 GMT</pubDate><guid>http://www.shnenglu.com/flagman/archive/2011/02/12/reflection_feature_used_in_daily_dev.html</guid><wfw:comment>http://www.shnenglu.com/flagman/comments/139944.html</wfw:comment><comments>http://www.shnenglu.com/flagman/archive/2011/02/12/reflection_feature_used_in_daily_dev.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/flagman/comments/commentRss/139944.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/flagman/services/trackbacks/139944.html</trackback:ping><description><![CDATA[<p><em>銆?鏌愮綉鍙嬭璁洪亾: 銆?br>: RT錛屽弽灝勭殑鐗規у彂鐜板緢灝戠敤鍟?/em><br></p> <p><br><br>鎭版伆鐩稿弽錛屾湁浜涘弽灝勭殑鐗規ф槸緇忓父浼氳浣跨敤鍒扮殑銆?/p> <p>鍙嶅皠鎬諱綋涓婂垎鎴愪袱澶х壒鎬э紝涓鏄嚜鐪侊紝浜屾槸鍙戝皠錛?/p> <p>鑷渷鐨勮兘鍔涙瀬涓洪噸瑕侊紝鑰屼笖鍑犱箮浼氬ぉ澶╃敤鍒幫紝寰堝皯瑙佸埌榪囧摢涓?net搴旂敤涓笉浣跨敤attribute鐨勶紝鑰宎ttribute鐗規у氨鏄痬etadata閫氳繃鍦ㄨ嚜鐪佽兘鍔涙敮鎾戜笅瀹炵幇鐨勶紱褰撶劧鑷渷涓嶅崟鍗曟槸attribute鐗規х殑榪愮敤錛屽彧瑕佹槸鍦ㄨ繍琛屾椂鍔ㄦ佹瑙嗙▼搴忚嚜韜殑鐗規ч兘瑕佺敱鍙嶅皠鐨勮嚜鐪佽兘鍔涙潵鏀寔錛屾瘮濡俈isual Studio鐨処DE錛堣繖涓泦鎴愬紑鍙戠幆澧冩湰韜氨鏄?net搴旂敤鐨勫ソ妗堜緥錛夊浜?net緇勪歡鐨勮嚜鍔ㄦ帰嫻嬪姛鑳斤紱鍚屾椂錛岃嚜鐪佺殑鑳藉姏涔熸槸鍩轟簬铏氭嫙鏈哄鉤鍙扮殑璇█錛屾瘮濡俢#鍜宩ava錛屽尯鍒簬浼犵粺璇█姣斿c鍜宑++鐨勯噸瑕佺壒鎬т箣涓錛岃繖鎻愪緵浜嗙▼搴忚璁″紑鍙戞洿涓轟究鍒╁拰瀹夊叏鐨勮繍琛屾椂鐜錛涚浉瀵硅岃█錛屽湪c++錛堝綋鐒舵槸native鑰屼笉鏄痬anaged錛夌殑鐜涓嬶紝闄や簡RTTI鏋佷負鍗曡杽鐨勮繍琛屾椂鑷渷錛屼篃灝辨槸QT榪欎釜搴撻氳繃meta-object system閮ㄥ垎妯℃嫙浜嗚嚜鐪佺殑鐗規э紱</p> <p>鍙嶅皠鐨勫彟澶栦竴涓噸瑕佺壒鎬у氨鏄彂灝勶紝瀹冭“紼嬪簭鍙互鍐欑▼搴?#8221;浜嗭紝綆瑕佺殑璇村氨鏄湪榪愯鏃跺姩鎬佺敓鎴怣SIL騫跺姞杞借繍琛屼互鍙婃寔涔呭寲鍔ㄦ佺敓鎴愮殑MSIL鐨勮兘鍔涳紱鐢辮繖涓壒鎬х殑鏀寔錛岃鍘熷厛涓浜涚▼搴忚璁″拰寮鍙戦鍩熺浉瀵瑰洶闅懼拰綣佺悙鐨勫伐浣滐紝姣斿鍏冪紪紼媘eta programming錛屾瘮濡傚姩鎬佷唬鐞哾ynamic proxy錛屾瘮濡侫OP涓殑鍩虹璁炬柦weaver鐨勫疄鐜幫紝鍙樺緱鍙兘鎴栫浉瀵規槗浜庡疄鐜幫紱鍙嶅皠鐨勭壒鎬э紝涔熸槸鍩轟簬铏氭嫙鏈哄鉤鍙癈LR鐨勬敮鎸侊紝浠etadata涓哄熀紜鏉ュ疄鐜扮殑錛屾墍浠ヨ繖涔熸槸铏氭嫙鏈哄鉤鍙拌璦鐨勭壒鏈変紭鍔匡紝鑰屽湪浼犵粺璇█騫沖彴涓婏紝榪欐槸闅句互瀹炵幇鐨勶紱姣斿鍏充簬meta programming錛宑++灝辨槸閫氳繃妯℃澘鐗規у疄鐜扮殑緙栬瘧鏈焟eta programming錛岃繖涓庤櫄鎷熸満騫沖彴涓婂疄鐜扮殑榪愯鏃秏eta programming榪樻槸鏈夋瘮杈冨ぇ鐨勫樊璺濓紙姣斿鍓嶈呭浣曚繚璇佺敓鎴愮殑浠g爜鐨則ype-safe錛夛紱</p> <p>浠ヤ笂榪欎袱涓壒鎬э紝鑷渷鍜屽彂灝勶紝閮芥湁涓叡鍚岀偣錛屼粬浠兘鏄洿緇曠潃metadata鏈哄埗錛屽茍鍦ㄨ櫄鎷熸満騫沖彴榪愯鏃剁幆澧僀LR鏀寔涓嬪疄鐜扮殑錛屽墠鑰呮槸榪愯鏃舵瑙嗙浉鍏崇殑metadata錛屽悗鑰呮槸榪愯鏃跺姩鎬佺敓鎴愮浉鍏崇殑metadata鍜孧SIL錛涗粠榪欑偣涔熷氨鍙互鐪嬪嚭錛岃鎯蟲繁鍏ョ悊瑙h繖浜涚壒鎬э紝灝遍渶瑕佺爺絀秏etadata鍜孧SIL鐨勫疄鐜幫紝浠ュ強铏氭嫙鏈鴻繍琛屾椂鐜鐨勫疄鐜幫紙鍦╦ava騫沖彴涓婏紝灝辨槸bytecode鍜孞VM錛夛紱</p> <p>鎵浠ワ紝鍙嶅皠錛屽彲鑳芥槸铏氭嫙鏈哄鉤鍙版墍鎻愪緵鐨勭浉瀵規渶涓哄己鍔詫紝鏈涓哄鏉傦紝鍜屽鉤鍙拌繍琛屾椂鏈韓鍏崇郴鏈瀵嗗垏錛屼篃鏄尯鍒簬浼犵粺璇█鍜岃繍琛屾椂鏈椴滄槑鐨勭壒鎬с?/p> <img src ="http://www.shnenglu.com/flagman/aggbug/139944.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/flagman/" target="_blank">flagman</a> 2011-02-12 17:21 <a href="http://www.shnenglu.com/flagman/archive/2011/02/12/reflection_feature_used_in_daily_dev.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>鍏充簬COM鍜?net鐨勬濊?/title><link>http://www.shnenglu.com/flagman/archive/2010/12/19/AboutComAndDotNet.html</link><dc:creator>flagman</dc:creator><author>flagman</author><pubDate>Sun, 19 Dec 2010 03:04:00 GMT</pubDate><guid>http://www.shnenglu.com/flagman/archive/2010/12/19/AboutComAndDotNet.html</guid><wfw:comment>http://www.shnenglu.com/flagman/comments/136922.html</wfw:comment><comments>http://www.shnenglu.com/flagman/archive/2010/12/19/AboutComAndDotNet.html#Feedback</comments><slash:comments>5</slash:comments><wfw:commentRss>http://www.shnenglu.com/flagman/comments/commentRss/136922.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/flagman/services/trackbacks/136922.html</trackback:ping><description><![CDATA[<p><em>銆?鏌愭煇鎻愬埌: 銆?br>: 涓鑸COM澶嶆潅錛岄鍏堟槸鍚嶈瘝澶錛屽叾嬈℃槸鍩轟簬ATL鐨勫疄鐜版瘮杈冮毦鎳?br>: 榪欏茍涓嶆槸COM鏈韓澶嶆潅錛岃屾槸C++宸茬粡钀藉悗浜庢椂浠d簡銆傛墍浠TL鐪嬭搗鏉ユ墠浼氬儚澶╀功涓鑸?/em></p> <p><br>铏界劧瀵逛簬鍏ㄦ柊鐨勫伐紼嬮」鐩紝鎺ㄨ崘閫氳繃.net瀹炵幇錛屼絾鏄紝鍙浣犲伐浣滃湪Windows騫沖彴涓婏紝蹇呯劧浼氶亣鍒板拰COM鐩稿叧鐨勬妧鏈拰鏈哄埗錛屾棤璁烘槸澶ч噺鐨刲egacy鐨勫伐紼嬪拰浠g爜錛岃繕鏄綔涓篛S閲嶈鍔熻兘浠ュ強native緇勪歡鐨勯閫変氦浜掑艦寮忓拰鎺ュ彛鏆撮湶鏂瑰紡錛屾瘮濡侱irectX API錛屾瘮濡備竴浜沇MI鐨凙PI錛涙渶鏈夎叮鐨勬槸錛屽嵆浣挎槸.net鐨勬牳蹇僀LR鏈韓涔熸槸涓涓狢OM緇勪歡錛屽彲浠ラ氳繃Host鐩稿叧鎺ュ彛璁﹏ative搴旂敤鏉ュ姞杞斤紝浠ュ湪褰撳墠榪涚▼涓惎鍔ㄦ暣涓狢LR鐨勮櫄鎷熸墽琛岀幆澧冩垨鑰呭彨鎵樼鎵ц鐜(managed executive environment)銆?/p> <p>鎶婃彙COM鏈変袱鐐瑰緢鍏抽敭錛?br>1錛塈nterface-based design錛屼粠璁捐鍜岀紪鐮佹濊礬涓婂氨鏄瀹屽叏鍩轟簬鎺ュ彛錛?br>2錛塚irtualTable-based binary compatibility, 瀹炵幇涓婃棤璁轟綍縐嶈璦鎴栬呮満鍒訛紝鍙絎﹀悎鍩轟簬铏氳〃鐨勪簩榪涘埗鍏煎瑙勮寖錛屽氨閮藉彲浠ュ疄鏂斤紱</p> <p>COM浠呬粎鏄釜瑙勮寖錛屽熀浜嶤OM鐨勫叿浣撴妧鏈潪甯鎬箣澶氾紝OLE錛孉utomation錛孲tructural storage錛孉ctiveX...姹楃墰鍏呮爧錛岃繕鏈塁OM+錛岃繖涓槸鎻愪緵浼佷笟綰у紑鍙戝繀澶囩殑涓浜涘熀紜鍔熻兘鍜岃鏂斤紝姣斿錛屼簨鍔$鐞嗘満鍒訛紝瀵硅薄姹狅紝瀹夊叏綆$悊錛屾秷鎭槦鍒?..闇瑕佹寚鍑猴紝鐩墠鍗充究鏄?net Framework涔熸病鏈夊疄鐜癈OM+鎵鎻愪緵榪欎簺鏈哄埗錛屽彧鏄畝鍗曠殑灝佽浜嗗悗鑰呫?/p> <p>COM鎶鏈腑鍙兘鏈変竴浜涙瘮杈冨洶闅劇殑鍦版柟錛屾帴鍙g殑涓鑷存э紝瀵硅薄鐨勮仛鍚堝拰鐢熷懡鍛ㄦ湡錛屽闂達紝璺ㄥ闂寸殑鎺ュ彛璁塊棶錛屽悕瀛楀璞★紝絳夌瓑錛涜繖浜涘茍涓嶆槸COM瑙勮寖浜轟負鍒墮犵殑鍥伴毦錛岃屾槸涓轟簡璁捐鍜屾彁渚涳紝鍙互璺ㄨ繘紼嬪拰鏈哄櫒杈圭晫錛岃法寮傛瀯騫沖彴錛堝綋鐒跺繀欏誨疄鐜頒簡COM鎵瑙勫畾鐨勫熀紜鏈嶅姟錛夛紝閫忔槑鍖栧叿浣撳璞$被鍨嬪強瀵硅薄鐢熷懡鍛ㄦ湡錛屼究浜庣粺涓閮ㄧ講鍜岀増鏈鐞嗙殑緇勪歡鎶鏈紝鎵蹇呴』浠樺嚭鐨勪唬浠鳳紝榪欎釜浠d環浠庡紑鍙戜漢鍛樿搴︾湅鍏蜂綋琛ㄧ幇涓猴紝姒傚康鐞嗚В鐨勫洶闅句互鍙婂叿浣撲簩榪涘埗瀹炵幇鐨勫洶闅撅紱</p> <p>涓嶈繃浠庡彟涓涓搴︾湅錛孋OM宸茬粡寰堝鏄撲簡錛?br>a) COM瑙勮寖宸叉妸瑕佽揪鑷磋繖浜涚洰鏍囩殑緋葷粺錛屾墍蹇呴』鎻愪緵鐨勬帴鍙e拰鐗規ф娊璞′簡鍑烘潵錛屽彧涓嶈繃涓轟簡琛ㄨ揪榪欎簺鎶借薄鐨勬蹇佃屾柊閫犵殑鏈鍚嶈瘝鏈変簺闄岀敓鍜岀獊鍏錛涘鏋滆閬囧埌鐩鎬技闂鐨勬瘡涓涓璁″拰寮鍙戜漢鍛橀兘鑷繁鏉ュ仛鎶借薄錛屾湭蹇呬細鐢熸垚鏇村ソ鐨勬柟妗堬紱</p> <p>b) 涓轟簡甯姪璁捐鍜屽紑鍙戜漢鍛橈紝浜轟滑鎻愪緵浜嗗緢澶氱殑寮鍙戝簱錛屼互鎻愰珮COM寮鍙戠殑姝g‘鎬у拰鏁堢巼錛涙渶鏄捐憲鐨勫氨鏄疢FC涓叧浜嶤OM/OLE鐨勮緟鍔╃被鍜屽嚱鏁幫紝浠ュ強涓轟簡COM鑰岀敓鐨凙TL錛涗粠鏈川涓婄湅錛岃繖浜涚被搴撻兘鏄妸COM瑙勮寖涓繀欏誨疄鐜扮殑錛學indows騫沖彴鏈韓娌℃湁鎻愪緵錛屽叿浣撹璁″拰寮鍙戜漢鍛樺疄闄呭疄鏂芥椂浼氶噸澶嶅疄鐜扮殑錛屽悓鏃跺張闈炲父瀹規槗鍑洪敊鐨勯偅閮ㄥ垎鍔熻兘錛岄泦涓埌浜嗚繖浜涚被搴撻噷緇熶竴瀹炵幇錛岃鍏蜂綋璁捐鍜屽紑鍙戜漢鍛樹互浠g爜閲嶇敤鐨勫艦寮忔潵瀹炵幇COM瑙勮寖錛?/p> <p>褰撶劧浜轟滑涔熸剰璇嗗埌浜咰OM榪欐牱鐨勪竴浜涢棶棰橈紝鐗瑰埆鏄叿浣撳疄鐜版椂璁捐鍜屽紑鍙戜漢鍛樺繀欏昏鍏蟲敞鍑犱箮鎵鏈夌殑浜岃繘鍒剁粏鑺傦紝浜庢槸.net灝辮癁鐢熶簡錛屾妸榪欎簺瑙勮寖鐨勮澶氬鏉傛ч兘灝佽鍦ㄤ簡铏氭嫙鏈洪噷闈紝鎶婅繖浜涚洰鏍囧姛鑳斤紙璺ㄨ竟鐣屻侀忔槑鎬х瓑絳夛級閫氳繃涓鑷磋屽張騫蟲粦鐨勫鉤鍙版帴鍙e拰鑷弿榪扮殑meta data錛屼互涓縐嶈璁捐鍜屽紑鍙戜漢鍛樻洿鏄撴帴鍙楃殑椋庢牸寮鏀句簡鍑烘潵錛?/p> <p>COM鐨勫獎鍝嶆槸闈炲父騫垮ぇ鐨勶紝姣斿XPCOM 錛孎irefox涓婄殑涓縐嶆彃浠舵妧鏈爣鍑嗭紝灝辨槸鏍規嵁COM鐨勬濇兂鍜屽師鍒欏埗瀹氱殑錛涜澶氳瘎璁鴻錛孎irefox鐨勬垚鍔熸槸鍥犱負瀹冩彃浠舵槸濡傛鐨勬垚鍔燂紝榪欎篃綆楁槸COM鏈韓鎵鎰忔枡涓嶅埌鐨勮礎鐚箣涓銆?/p> <p>鍦?net鐨勫鉤鍙頒笂錛屽嵆浣挎槸.net CLR/SSCLI鐨勫叿浣撳疄鐜頒篃澶ч噺榪愮敤浜咰OM鐨勬濇兂鍜屾満鍒訛紝鍙互璇?net灝辨槸鎼緩鍦–OM浜岃繘鍒剁粍浠跺鉤鍙頒箣涓婄殑铏氭嫙鏈烘墭綆″鉤鍙般?/p> <p>鏈鍚庯紝.net寮濮嬫椂鐨勫唴閮ㄧ紪鍙鋒槸COM 2.0</p> <p> </p> <p>++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++</p> <p>*) 鍏充簬“鍚嶈瘝澶”<br>榪欐槸瑕佸疄鐜板彲浠ヨ法榪涚▼鍜屾満鍣ㄨ竟鐣岋紝璺ㄥ紓鏋勫鉤鍙幫紙褰撶劧蹇呴』瀹炵幇浜咰OM鎵瑙勫畾鐨勫熀紜鏈嶅姟錛夛紝閫忔槑鍖栧叿浣撳璞$被鍨嬪強瀵硅薄鐢熷懡鍛ㄦ湡錛屼究浜庣粺涓閮ㄧ講鍜岀増鏈鐞嗙殑緇勪歡鎶鏈紝鎵蹇呴』浠樺嚭鐨勪唬浠楓?/p> <p>COM瑙勮寖宸叉妸瑕佽揪鑷磋繖浜涚洰鏍囩殑緋葷粺錛屾墍蹇呴』鎻愪緵鐨勬帴鍙e拰鐗規ф娊璞′簡鍑烘潵錛屽彧涓嶈繃涓轟簡琛ㄨ揪榪欎簺鎶借薄鐨勬蹇佃屾柊閫犵殑鏈鍚嶈瘝鏈変簺闄岀敓鍜岀獊鍏錛涘鏋滆閬囧埌鐩鎬技闂鐨勬瘡涓涓璁″拰寮鍙戜漢鍛橀兘鑷繁鏉ュ仛鎶借薄錛屾湭蹇呬細鐢熸垚鏇村ソ鐨勬柟妗堬紱</p> <p>涓句釜渚嬪瓙錛宎partment錛屽闂達紝灝辨槸涓轟簡鎶借薄浼犵粺OS涓繘紼嬪拰綰跨▼鐨勫疄鐜拌屾柊閫犵殑鏈鍚嶈瘝鍜屾蹇碉紱浠諱綍浜鴻鎶借薄榪欐牱鐨勪竴浜涙蹇碉紝涓嶆柊閫犳湳璇紝鏄潪甯稿洶闅劇殑錛屽姣?net錛屽悗鑰呯敤浜咰LR铏氭嫙鏈烘潵灝佽浜嗗ぇ澶氭暟鐨勫疄鐜扮粏鑺傦紝騫剁敤璁╀漢鏇村鏄撴帴鍙楃殑椋庢牸鏉ュ紑鏀炬帴鍙o紝鍙簨瀹炰笂浠嶇劧鏂伴犱簡涓浜涘悕璇嶅拰姒傚康錛屽綾諱技鑼冪暣鐨凙ppDomain錛?/p> <p>*) 鍏充簬“鍩轟簬ATL鐨勫疄鐜版瘮杈冮毦鎳?#8221;<br>ATL涓昏浣跨敤浜唗emplate鎶鏈紝COM鎺ュ彛鏅鴻兘鎸囬拡錛岀敤闈欐佽漿鎹㈡潵妯℃嫙鍔ㄦ佺粦瀹氾紝絳夌瓑錛屽疄闄呭茍涓嶆槸寰堝鏉傦紝鍙兘綆梒++瀹炵幇鏈哄埗鐨勪腑絳夐毦搴︼紝涓昏娑夊強Modern C++ design涓涔︿腑涓浜涚浉鍏寵璁$悊蹇電殑榪愮敤銆傚姣擝oost涓煇浜涘簱鐨勫疄鐜幫紝ATL寰堜漢閬撲簡銆?/p> <p>*) 鍏充簬“榪欏茍涓嶆槸COM鏈韓澶嶆潅錛岃屾槸C++宸茬粡钀藉悗浜庢椂浠d簡”<br>棣栧厛COM鐨勮鑼冪殑紜槸澶嶆潅鐨勶紝涓哄暐錛熺涓鐐瑰凡緇忚浜嗭紝灝辨槸涓轟簡瑕佹娊璞″嚭璺ㄨ竟鐣屽拰瀵硅薄閫忔槑鐨勭粍浠舵妧鏈紱.net琛ㄨ薄涓婄湅姣旇緝“綆鍗曞鏄?#8221;錛岄鏍間翰榪戣璁″拰寮鍙戜漢鍛橈紝瀹為檯涓婂鏉備簨鍔″拰瀹炵幇緇嗚妭閮借鍒掑垎鍒癈LR閭d釜灞傞潰涓婂幓瀹炵幇浜嗭紱鍘葷湅涓涓婥LR鐨勫紑婧愬疄鐜癝SCLI錛屼綘浼氬彂鐜幫紝鏁翠釜铏氭嫙鏈哄鉤鍙扮殑瀹炵幇錛屽ぇ閲忚繍鐢ㄤ簡COM鐨勬濇兂鍜屾満鍒訛紝灝辨槸涓涓法鍨嬬郴緇熷鉤鍙扮駭鐨凜OM server錛?/p> <p>鍏舵錛孋OM瑙勮寖鏈韓鏄嫭绔嬩簬瀹炵幇璇█鐨勶紝鍙鏋勫緩鍑虹殑緇勪歡絎﹀悎瑙勮寖鍒跺畾鐨勪簩榪涘埗鍏煎錛岀郴緇熷氨鍙互榪愪綔錛岃繖鍜孋++鏄惁钀藉悗鏃朵唬娌℃湁鍏崇郴銆傚鏋滃紑鍙戜漢鍛樿涓猴紝.net鎵嶅鍏堣繘錛屼篃瀹屽叏鍙互鐢?net涓殑鎵樼璇█錛屽C#鏉ュ疄鐜癈OM緇勪歡錛?/p> <p>鏈鍚庯紝姣忕璇█閮芥湁鍏墮傜敤鐨勮寖鍥達紝鐜板湪鍙互榪欎箞璇?#8220;濡傛灉鏈変竴涓叏鏂扮殑欏圭洰闇姹傦紝瑕佽揪鑷磋法杈圭晫鍜屽璞¢忔槑緇勪歡錛屽茍涓旀病鏈夊お榪囦弗鑻涚殑鎬ц兘闇姹傦紝閭d箞.net騫沖彴鍙婂叾涓婄殑鎵樼璇█鏉ュ疄鐜幫紝姣旂敤C++鍙婄浉鍏寵緟鍔╃被搴撴潵浠OM緇勪歡褰㈠紡鏉ュ疄鐜幫紝瑕佹洿鍚堥傦紝涔熸洿蹇熶究鎹峰拰鑺傜渷棰勭畻銆?#8221;浣嗘槸錛屽湪榪欎釜鍒ゆ柇涓婃垜浠姞浜嗗緢澶氫弗鏍肩殑綰︽潫錛屼竴鏃﹂渶姹傚彉鏇達紝鐗瑰埆鏄」鐩殑闈炲姛鑳芥ч渶姹傦紝瑕佹眰楂樻ц兘榪愮畻鎴栬呮洿欏虹晠鐨勪笌legacy鐨刵ative緋葷粺鐩鎬簰錛岄偅涔?#8220;浣跨敤native璇█鏉ュ疄鐜版ц兘鍏抽敭浠ュ強legacy浜や簰鍔熻兘錛岄氳繃COM灝佽錛屽啀鐢盋OMInterop浜?net鎵樼搴旂敤璋冪敤”鍙兘鏄洿鐜板疄鐨勬柟妗堛侰++鏄竴闂ㄦ椿鐨勮璦錛屼笉鏂彂灞曠殑璇█錛屽嵆浣垮湪鏈鏂扮殑鎵樼鏃朵唬閲岋紝C#鎴愪負鏍囧噯涓繪祦錛屼絾C++/CLI浠嶇劧鏄墭綆¤璦閲屽姛鑳芥渶瀹屾暣鐨勮璦銆?/p> <p> </p> <img src ="http://www.shnenglu.com/flagman/aggbug/136922.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/flagman/" target="_blank">flagman</a> 2010-12-19 11:04 <a href="http://www.shnenglu.com/flagman/archive/2010/12/19/AboutComAndDotNet.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>CLR緋誨垪--鎺㈢儲SSCLI銆?銆?/title><link>http://www.shnenglu.com/flagman/archive/2010/12/13/136255.html</link><dc:creator>flagman</dc:creator><author>flagman</author><pubDate>Mon, 13 Dec 2010 01:02:00 GMT</pubDate><guid>http://www.shnenglu.com/flagman/archive/2010/12/13/136255.html</guid><wfw:comment>http://www.shnenglu.com/flagman/comments/136255.html</wfw:comment><comments>http://www.shnenglu.com/flagman/archive/2010/12/13/136255.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/flagman/comments/commentRss/136255.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/flagman/services/trackbacks/136255.html</trackback:ping><description><![CDATA[<p>Fusion is one of the most importants features among ones in the runtime implementation of CLI.</p> <p>In the fusion, or any other components or modules, how to retrieve the execution engine instance and how to generate such engine?</p> <p>UtilExecutionEngine, implemented as COM object, support Queryinterface/AddRef/Release, and exposed via interface IExecutionEngine.</p> <p>With SELF_NO_HOST defined, <br>BYTE g_ExecutionEngineInstance[sizeof(UtilExecutionEngine)];<br>g_ExecutionEngineInstance would be the singleton instance of current execution engine,</p> <p>otherwise, without SELF_NO_HOST, the 'sscoree' dll would be loaded and try to get the exported function, which is named 'IEE' from such dll. Here, it is the well-known shim, in .net CLR, such module is named 'mscoree'. Further, if 'IEE' could not be found in such dll, system would try to locate another exported function, named 'LoadLibraryShim', and use such function to load the 'mscorwks' module, and try to locate the 'IEE' exportd functionin it.</p> <p>It's very obvious that Rotor has implemented its own execution engine, but it also gives or make space for implementation of execution engine from 3rd party. Here, .net CLR is a good candidate definitely, Rotor might load the mscorwks.dll module for its usage.</p> <p>PAL, PALAPI, for example, HeapAlloc, one famous WIN32 API, has been implemented as one PALAPI (defined in Heap.c), to make it possible that the CLI/Rotor be ported smoothly to other OS, such freebsd/mac os.</p> <p>CRT routines are also reimplemented, such as memcpy, it has been implemented as GCSafeMemCpy</p> <p>There're many macros in fuctions, such as SCAN_IGNORE_FAULT/STATIC_CONTRACT_NOTHROW/STATIC_CONTRACT_NOTRIGGER, they are for static analysis tool to scan, analyse and figour out the potential issues in code.</p> <p>From view point of the execution model by CLI, the act of compiling (including JIT) high-level type descriptions would be separated from the act of turning these type descriptions into processor-specific code and memory structures.</p> <p>And such executino model, in other word, the well-known 'managed execution', would defer the loading, verification and compilation of components until runtime really needs; At the same time, the type-loading is the key trigger that causes CLI's tool chain to be engaged at runtime. Deferred compilation(lead to JIT)/linking/loading would get better portability to different target platform and be ready for version change; The whole deferred process would driven by well-defined metadata and policy, and it would be very robust for building a virtual execution environment;</p> <p>At the top of such CLI tool chain, fusion is reponsible for not only finding and binding related assemblies, which are via assembly reference defined in assembly, fusion also takes another important role, loader, and its part of functionality is implemented in PEAssembly, ClassLoader classes. For example, ClassLoader::LoadTypeHandleForTypeKey.</p> <p>For types in virtual execution environment of CLI, rotor defines four kinds of elements for internal conducting, <br>ELEMENT_TYPE_CLASS for ordinary classes and generic instantiations(including value types);<br>ELEMENT_TYPE_ARRAY AND ELEMENT_TYPE_SZARRAY for array types<br>ELEMENT_TYPE_PRT and ELEMENT_TYPE_BYREF for pointer types<br>ELEMENT_TYPE_FNPTR for function pointer types</p> <p>every type would be assigned unique ulong-typed token, and such token would be used to look up in m_TypeDefToMethodTableMap (Linear mapping from TypeDef token to MethodTable *)which is maintained by current module; If there it is, the pointer to method table of such type would be retrieved, or it would look up in the loader module, where the method table should exist in while it's JIT loaded, not launched from NGEN image;</p> <p>And all the unresolved typed would be maintained in a hash table, PendingTypeLoadTable; Types and only those types that are needed, such as dependencies, including parent types, are loaded in runtime, such type is fully loaded and ready for further execution, and other unresolved types would be kept in the previous hash table.</p> <img src ="http://www.shnenglu.com/flagman/aggbug/136255.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/flagman/" target="_blank">flagman</a> 2010-12-13 09:02 <a href="http://www.shnenglu.com/flagman/archive/2010/12/13/136255.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>鎬濊冪郴緇烝PI璁捐鐨勯棶棰?/title><link>http://www.shnenglu.com/flagman/archive/2010/12/01/Thinking_Of_API_Design.html</link><dc:creator>flagman</dc:creator><author>flagman</author><pubDate>Wed, 01 Dec 2010 13:28:00 GMT</pubDate><guid>http://www.shnenglu.com/flagman/archive/2010/12/01/Thinking_Of_API_Design.html</guid><wfw:comment>http://www.shnenglu.com/flagman/comments/135191.html</wfw:comment><comments>http://www.shnenglu.com/flagman/archive/2010/12/01/Thinking_Of_API_Design.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/flagman/comments/commentRss/135191.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/flagman/services/trackbacks/135191.html</trackback:ping><description><![CDATA[<p>鏈榪戞濂藉湪鎬濊冪郴緇烝PI璁捐涓冮噺鐨勪竴浜涢棶棰橈紝<br><br>銆愭煇緗戝弸璁ㄨ鍒般?br><em>: 閭e湴鍧鏄笉鏄悓涓涓湴鍧鍛€傛垜鐜板湪鐨勭悊瑙f槸榪欐牱鐨勶紝鍋囪鏈夊法澶х殑鐪熷疄鍐呭瓨銆倃indows棣栧厛灝嗛珮2G鐨勫唴瀛樿嚜宸卞崰浜嗭紝鐢ㄤ綔鍚勭鍐呮牳瀵硅薄銆傝繖2G鍐呭瓨鍏變韓緇欐瘡涓繘紼嬶紝浣嗚繘紼嬩笉鑳界洿鎺ヨ闂紝鍙兘閫氳繃windows緇欏畾鐨勫嚱鏁拌闂?br>: 鐒跺悗姣忎釜榪涚▼閮界粰浠?G鍐呭瓨錛岃繘紼嬪鏋滃垱寤鴻嚜宸辯殑瀵硅薄灝辨斁鍒拌嚜宸遍偅2G鍐呭瓨閲岄潰錛屽鏋滆寤虹珛鍐呮牳瀵硅薄灝辨斁鍒板叡浜殑閭i珮2G閲岄潰鍘匯?br>: 鎵浠ヤ笉鍚岃繘紼嬪鏋滃彲浠ヨ闂珮2G鍐呭瓨鐨勮瘽錛屼換浣曡繘紼嬭闂埌鍚屼竴涓珮鍦板潃瀹為檯涓婇兘鏄闂埌鍚屼竴涓璞°備絾濡傛灉璁塊棶浣?G鍦板潃鐨勮瘽錛屼笉鍚岃繘紼嬫槸瀵瑰簲涓嶅悓鐨勫璞$殑銆?br></em><br><br><br>鍦ㄤ笉鍚岀殑榪涚▼涓紝璇㈤棶鍚屼竴涓唴鏍稿璞$殑瀹為檯鍦板潃錛堟棤璁烘槸綰挎у湴鍧榪樻槸鐗╃悊鍦板潃錛夛紝鏄棤鎰忎箟鐨勶細</p> <p>棣栧厛錛屽唴鏍稿璞″彧鑳界敱鍦ㄥ唴鏍告佷笅鐨勪緥紼嬫墠鑳界洿鎺ヨ闂紝鍦ㄦ垜浠棩甯哥殑浠g爜涓紝鎵璋冪敤鐨刉indows API錛屾瘮濡侰reateFile, 錛堟敞鎰忚皟鐢ㄥ垰寮濮嬫椂鏄浜庣敤鎴鋒佷笅鐨勶級錛屼竴鑸兘浼氬湪ntdll.dll涓壘鍒板搴旂殑鍐呮牳鍑芥暟鎴栦緥紼嬶紝鎺ョ潃緋葷粺鍒囨崲鍒板唴鏍告侊紝寮濮嬭皟鐢ㄥ疄闄呭搴旂殑鍐呮牳鍑芥暟(KiCreateFile)錛岃繖涓椂鍊欐墠浼氬幓璁塊棶鍐呮牳瀵硅薄鐨勫疄闄呭湴鍧錛岀劧鍚庡緩绔嬩竴涓鍐呮牳瀵硅薄瀵瑰簲褰撳墠榪涚▼鐨凥andle錛屽茍鎶婂畠榪斿洖緇檆aller錛屽悓鏃跺垏鎹㈠洖鐢ㄦ埛鎬侊紱鍥犳錛屽浜庣敤鎴鋒佺▼搴忔潵璇達紝鍙涓斿彧鑳界煡閬撹鍐呮牳瀵硅薄鍦ㄥ綋鍓嶈繘紼嬩腑鐨勫搴旂殑Handle灝卞彲浠ュ鍏惰繘琛屾搷浣滀簡錛?/p> <p>鍏舵錛岃繖鏍風殑璁捐鏄嚭浜庡OS鏍稿績鏁版嵁緇撴瀯錛堝綋鐒跺寘鎷垜浠鍦ㄨ璁虹殑鍐呮牳瀵硅薄錛夌殑淇濇姢錛涘鏋滅敤鎴鋒佺▼搴忓彲浠ヨ交鏄撶殑鑾峰彇鍐呮牳鏁版嵁緇撴瀯鐨勫疄闄呭湴鍧錛岄偅涔堝浜庢暣涓狾S鐨勫畨鍏ㄥ拰紼沖畾鏄劇劧鏋勬垚寰堝ぇ鐨勯棶棰橈紱涓涓敤鎴鋒佺殑璇搷浣滃彲浠ヨ交鏄撶殑寮曡搗鏁翠釜OS鐨勫穿婧冿紝鑰屾湁浜嗚繖涓灞傜殑淇濇姢錛屽穿婧冪殑鍙槸褰撳墠榪涚▼鑰屼笉鏄暣涓郴緇燂紱</p> <p>鎺ョ潃涓婇潰榪欑偣錛屼篃鍙互鐪嬪嚭錛屽唴鏍稿璞$殑濡傛璁捐杈懼埌浜嗘帴綰砄S鏈韓鐨勫鉤婊戞紨榪涚殑鐩殑銆備粠Windows 3.0鍒?5/98錛屼粠NT鍒癢in2k/XP錛屽啀鍒扮溂涓嬬殑Vista/Win7錛學indows鎿嶄綔緋葷粺鏈韓鍙戠敓浜嗗法澶х殑鍙樺寲鍜岃繘姝ワ紝閲囩撼浜嗘棤鏁扮殑鏂版妧鏈柊鏂規硶錛屼絾鏄畠鍩烘湰鐨勭郴緇熷簲鐢ㄧ紪紼嬫帴鍙o紝涔熷氨鏄垜浠墍鐔熺煡鐨剋indows API錛屽嵈騫舵病鏈夊彂鐢熷お澶х殑鏀瑰彉錛屽緢澶歐in 3.0 榪欎釜16浣峅S鏃朵唬鐨勭▼搴忎唬鐮佸彧瑕佸綋鍒濊璁¤鑼冪紪鐮佽鑼冿紝紼嶈淇敼灝卞彲浠ュ湪鏈鏂扮増鐨凮S涓婅繍琛屽椋烇紱鏄粈涔堝仛鍒頒簡榪欎簺錛熶篃灝辨槸鎵璋撶殑鏋佷負閲嶈鐨勫悜鍚庡吋瀹規э紝鎴戜釜浜鴻涓猴紝鎶婃搷浣滅郴緇熺殑閲嶈/涓昏鍔熻兘鎶借薄鎴愬唴鏍稿璞★紝騫墮氳繃涓濂楁瀬涓簊olid鐨凙PI鏆撮湶鍑烘潵錛岃揪鎴愪簡榪欎釜鐩爣銆?/p> <p>榪欐槸涓縐嶆洿楂樺眰嬈′笂鐨勯潰鍚戝璞★紝鎶婂疄鐜扮殑緇嗚妭錛屾妸緋葷粺鐨勫鏉傦紝綆鍗曡屼紭闆呯殑灝佽浜嗚搗鏉ャ備綘鍙璋冪敤CreateFile鍘誨緩涓枃浠舵垨綆¢亾鎴栭偖妲斤紝涓嶇敤鎷呭績褰撳墠OS鏄疻indows 3.0榪樻槸Win7錛岃幏寰楃殑Handle錛屼綘涔熶笉鐢ㄥ幓鍏沖績瀹冧互鍙婂畠鎵鎸囧悜鐨勫唴鏍稿璞℃槸Windows 3.0鐨勫疄鐜拌繕鏄疻in7鐨勫疄鐜般?/p> <p>Windows涓婃墍鏈夌殑綺懼僵鍑犱箮閮芥槸鍩轟簬榪欏閫氳繃鍐呮牳瀵硅薄姒傚康鎶借薄騫舵毚闇茬殑API鍩虹涔嬩笂錛孋OM/OLE錛岃繖涓簩鍗佸勾鍓嶉渿鎾兼х殑ABI鍜孖PC鑼冪暣鐨勬妧鏈鑼冿紝鍏朵腑寰堝鐨勮璁℃濊礬涔熸槸妞嶆牴浜庡唴鏍稿璞$殑璁捐鐞嗗康錛屽COM瀵硅薄鐨勫紩鐢ㄨ鏁板拰鍐呮牳瀵硅薄寮曠敤璁℃暟錛孖Unknown鍜學indows Handle(鍓嶈呮槸鎸囧悜鏌愪釜浜岃繘鍒跺吋瀹圭殑緇勪歡瀵硅薄錛屽悗鑰呭紩鐢ㄦ垨闂存帴鎸囧悜鏌愪釜鍐呮牳瀵硅薄錛岄兘鏄浜庢煇涓鏉傛蹇電殑涓鑷存ф娊璞¤〃榪?錛岀瓑絳夛紱</p> <p>鍗佸勾鍓嶇殑.net錛屾湰鏉ユ槸浣滀負COM鐨勫崌綰х増鏈帹鍑猴紝鎶奀OM/OLE鐨勫疄鐜板鏉傛у皝瑁呭湪浜嗚櫄鎷熸満騫沖彴CLR閲岄潰錛岃屼粠榪欎釜铏氭嫙鏈虹殑寮婧愬疄鐜癝SCLI錛屾垜浠彲浠ョ湅鍒板ぇ閲忕殑COM鏈哄埗鍦?net鐨勫叿浣撳疄鐜伴噷闈㈣搗浜嗕婦瓚寵交閲嶇殑浣滅敤銆傚湪榪欎簺VM涓ぇ閲弒ymbol鏈夌潃COR鐨勫墠緙鎴栬呭悗緙錛孋OR鎸囦唬浠涔堬紵Common Object Runtime, 鍘熸潵CLR/SSCLI鐨勮璁℃濊礬涔熸槸鎶奜S閫氳繃铏氭嫙鏈篤M鐨勫艦寮忥紝騫墮氳繃common object鍚戝簲鐢ㄧ▼搴忔毚闇插姛鑳姐?/p> <p>灝忕粨涓涓嬶紝<br>OS鍐呮牳瀵硅薄API錛屼笁鍗佸勾鍓嶇郴緇熺駭鍒殑瀵硅薄鎶借薄錛?br>COM/OLE錛屼簩鍗佸勾鍓嶄簩榪涘埗緇勪歡綰у埆鐨勫璞℃娊璞★紱<br>.net/CLR, 鍗佸勾鍓嶈櫄鎷熸満騫沖彴綰у埆鐨勫璞℃娊璞★紱</p> <p>鍐欏埌榪欓噷鍊掓槸寮曡搗浜嗘垜鍏朵粬鐨勪竴浜涙濊冿紝杞歡宸ヤ笟鐣屼竴鐩翠互鏉ュ闈㈠悜瀵硅薄OO鏄儹鐏湞澶╋紝鐗瑰埆鏄璦灞傞潰錛屼粠C++/Java/C#鍒癙ython/JScript錛屼笉涓鑰岃凍錛?/p> <p>浣嗘槸鎴戜滑鏈夋病鏈変粠鏍規湰鎬х殑璁捐鐞嗗康涓婂闈㈠悜瀵硅薄錛屽療綰抽泤璦浜嗗憿錛?/p> <p>濡傛灉鐜板湪璁捐Windows榪欏API鐨勪換鍔℃斁鍦ㄥぇ瀹墮潰鍓嶏紝浼氶噰鐢ㄥ唴鏍稿璞?Handle鏂規榪樻槸鐩存帴鎸囧悜OS鍐呴儴鏁版嵁緇撴瀯鐨勬柟寮忔潵鏆撮湶鍔熻兘錛?/p> <p>浠庝笁鍗佸勾鍓嶇殑榪欏API鐨勮璁′腑錛屾垜浠湡鐨勫彲浠ュ鍒板緢澶氥?/p> <p><br> </p> <img src ="http://www.shnenglu.com/flagman/aggbug/135191.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/flagman/" target="_blank">flagman</a> 2010-12-01 21:28 <a href="http://www.shnenglu.com/flagman/archive/2010/12/01/Thinking_Of_API_Design.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item></channel></rss> <a href="http://www.shnenglu.com/">青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品</a> <div style="position:fixed;left:-9000px;top:-9000px;"><font id="pjuwb"></font><button id="pjuwb"><pre id="pjuwb"></pre></button><sub id="pjuwb"></sub><tbody id="pjuwb"><var id="pjuwb"><address id="pjuwb"></address></var></tbody><listing id="pjuwb"><label id="pjuwb"><strong id="pjuwb"></strong></label></listing><wbr id="pjuwb"><small id="pjuwb"><tbody id="pjuwb"></tbody></small></wbr><ins id="pjuwb"><xmp id="pjuwb"></xmp></ins><style id="pjuwb"></style><label id="pjuwb"><em id="pjuwb"><li id="pjuwb"></li></em></label><samp id="pjuwb"></samp><menu id="pjuwb"><input id="pjuwb"></input></menu><pre id="pjuwb"><tbody id="pjuwb"><tfoot id="pjuwb"><button id="pjuwb"></button></tfoot></tbody></pre><form id="pjuwb"></form><i id="pjuwb"><style id="pjuwb"><label id="pjuwb"><sup id="pjuwb"></sup></label></style></i><li id="pjuwb"><table id="pjuwb"><abbr id="pjuwb"></abbr></table></li><video id="pjuwb"></video><dfn id="pjuwb"></dfn><progress id="pjuwb"></progress><strong id="pjuwb"></strong><mark id="pjuwb"></mark><em id="pjuwb"></em><tbody id="pjuwb"><p id="pjuwb"><strike id="pjuwb"><acronym id="pjuwb"></acronym></strike></p></tbody><option id="pjuwb"></option><strike id="pjuwb"></strike><u id="pjuwb"></u><td id="pjuwb"><center id="pjuwb"><tr id="pjuwb"></tr></center></td><em id="pjuwb"><mark id="pjuwb"><em id="pjuwb"><tt id="pjuwb"></tt></em></mark></em><strong id="pjuwb"></strong><wbr id="pjuwb"></wbr><s id="pjuwb"></s><strong id="pjuwb"></strong><legend id="pjuwb"></legend><nav id="pjuwb"></nav><dl id="pjuwb"><th id="pjuwb"><dl id="pjuwb"></dl></th></dl><noframes id="pjuwb"><ins id="pjuwb"></ins></noframes><font id="pjuwb"></font><strike id="pjuwb"><i id="pjuwb"><style id="pjuwb"><label id="pjuwb"></label></style></i></strike><output id="pjuwb"></output><thead id="pjuwb"><pre id="pjuwb"></pre></thead><source id="pjuwb"></source><menuitem id="pjuwb"><wbr id="pjuwb"></wbr></menuitem><pre id="pjuwb"><span id="pjuwb"><pre id="pjuwb"><big id="pjuwb"></big></pre></span></pre><cite id="pjuwb"><fieldset id="pjuwb"><s id="pjuwb"><rt id="pjuwb"></rt></s></fieldset></cite><big id="pjuwb"><progress id="pjuwb"><big id="pjuwb"></big></progress></big><samp id="pjuwb"><delect id="pjuwb"></delect></samp><dl id="pjuwb"></dl><strike id="pjuwb"><nav id="pjuwb"><dl id="pjuwb"><strong id="pjuwb"></strong></dl></nav></strike><tbody id="pjuwb"><b id="pjuwb"><optgroup id="pjuwb"><rp id="pjuwb"></rp></optgroup></b></tbody><em id="pjuwb"></em><xmp id="pjuwb"><blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote></xmp> <i id="pjuwb"><abbr id="pjuwb"><i id="pjuwb"><abbr id="pjuwb"></abbr></i></abbr></i><center id="pjuwb"><acronym id="pjuwb"><center id="pjuwb"></center></acronym></center><pre id="pjuwb"></pre><ul id="pjuwb"><thead id="pjuwb"></thead></ul><blockquote id="pjuwb"><pre id="pjuwb"><sup id="pjuwb"></sup></pre></blockquote><acronym id="pjuwb"></acronym><big id="pjuwb"><s id="pjuwb"></s></big><th id="pjuwb"></th><th id="pjuwb"></th><tbody id="pjuwb"></tbody><thead id="pjuwb"><strike id="pjuwb"></strike></thead><th id="pjuwb"><dl id="pjuwb"><wbr id="pjuwb"></wbr></dl></th><dl id="pjuwb"><strong id="pjuwb"></strong></dl><abbr id="pjuwb"><noframes id="pjuwb"><noscript id="pjuwb"></noscript></noframes></abbr><td id="pjuwb"><ol id="pjuwb"></ol></td><li id="pjuwb"><noscript id="pjuwb"><abbr id="pjuwb"></abbr></noscript></li><small id="pjuwb"><bdo id="pjuwb"><nav id="pjuwb"></nav></bdo></small><style id="pjuwb"></style><optgroup id="pjuwb"><table id="pjuwb"></table></optgroup><center id="pjuwb"><tr id="pjuwb"><dfn id="pjuwb"></dfn></tr></center><th id="pjuwb"></th><u id="pjuwb"></u><tfoot id="pjuwb"><legend id="pjuwb"><i id="pjuwb"></i></legend></tfoot><mark id="pjuwb"></mark><meter id="pjuwb"></meter><nav id="pjuwb"></nav><acronym id="pjuwb"><pre id="pjuwb"><acronym id="pjuwb"><ul id="pjuwb"></ul></acronym></pre></acronym><acronym id="pjuwb"><pre id="pjuwb"><acronym id="pjuwb"><ul id="pjuwb"></ul></acronym></pre></acronym><nobr id="pjuwb"></nobr><sub id="pjuwb"><th id="pjuwb"><menuitem id="pjuwb"><wbr id="pjuwb"></wbr></menuitem></th></sub><thead id="pjuwb"><sub id="pjuwb"></sub></thead><ul id="pjuwb"><address id="pjuwb"><menuitem id="pjuwb"><meter id="pjuwb"></meter></menuitem></address></ul><dfn id="pjuwb"></dfn><pre id="pjuwb"></pre><input id="pjuwb"><cite id="pjuwb"><fieldset id="pjuwb"></fieldset></cite></input><u id="pjuwb"><form id="pjuwb"><u id="pjuwb"></u></form></u><kbd id="pjuwb"><em id="pjuwb"><mark id="pjuwb"></mark></em></kbd><tr id="pjuwb"></tr><del id="pjuwb"><form id="pjuwb"><address id="pjuwb"></address></form></del><tfoot id="pjuwb"><legend id="pjuwb"><ol id="pjuwb"><dl id="pjuwb"></dl></ol></legend></tfoot><menu id="pjuwb"><nobr id="pjuwb"><th id="pjuwb"><nobr id="pjuwb"></nobr></th></nobr></menu><fieldset id="pjuwb"></fieldset><pre id="pjuwb"><blockquote id="pjuwb"><samp id="pjuwb"></samp></blockquote></pre><xmp id="pjuwb"><sup id="pjuwb"><pre id="pjuwb"></pre></sup></xmp><span id="pjuwb"><progress id="pjuwb"></progress></span><font id="pjuwb"></font><var id="pjuwb"><abbr id="pjuwb"></abbr></var><strong id="pjuwb"><label id="pjuwb"><i id="pjuwb"><legend id="pjuwb"></legend></i></label></strong><tr id="pjuwb"><em id="pjuwb"><em id="pjuwb"><output id="pjuwb"></output></em></em></tr><thead id="pjuwb"><strike id="pjuwb"></strike></thead> <acronym id="pjuwb"></acronym><i id="pjuwb"></i><tt id="pjuwb"></tt><rt id="pjuwb"><source id="pjuwb"><rt id="pjuwb"></rt></source></rt><strike id="pjuwb"><acronym id="pjuwb"></acronym></strike><del id="pjuwb"></del><font id="pjuwb"><output id="pjuwb"><ins id="pjuwb"><output id="pjuwb"></output></ins></output></font><kbd id="pjuwb"><tr id="pjuwb"><kbd id="pjuwb"></kbd></tr></kbd><pre id="pjuwb"><sup id="pjuwb"><delect id="pjuwb"><samp id="pjuwb"></samp></delect></sup></pre><samp id="pjuwb"></samp><track id="pjuwb"></track><tr id="pjuwb"></tr><center id="pjuwb"></center><fieldset id="pjuwb"></fieldset><i id="pjuwb"></i><td id="pjuwb"></td><rt id="pjuwb"></rt><object id="pjuwb"></object><pre id="pjuwb"><progress id="pjuwb"><sub id="pjuwb"><thead id="pjuwb"></thead></sub></progress></pre><kbd id="pjuwb"><tr id="pjuwb"><option id="pjuwb"></option></tr></kbd><output id="pjuwb"><ins id="pjuwb"></ins></output><ol id="pjuwb"></ol><source id="pjuwb"></source><strong id="pjuwb"></strong><ruby id="pjuwb"></ruby><sub id="pjuwb"><meter id="pjuwb"><menuitem id="pjuwb"><meter id="pjuwb"></meter></menuitem></meter></sub><pre id="pjuwb"></pre><center id="pjuwb"></center><tr id="pjuwb"><tbody id="pjuwb"><xmp id="pjuwb"><dd id="pjuwb"></dd></xmp></tbody></tr><video id="pjuwb"></video><pre id="pjuwb"></pre><form id="pjuwb"><optgroup id="pjuwb"></optgroup></form><samp id="pjuwb"></samp><kbd id="pjuwb"></kbd><strong id="pjuwb"><option id="pjuwb"></option></strong><object id="pjuwb"></object><abbr id="pjuwb"><noframes id="pjuwb"><abbr id="pjuwb"></abbr></noframes></abbr><ul id="pjuwb"><del id="pjuwb"><button id="pjuwb"><pre id="pjuwb"></pre></button></del></ul><abbr id="pjuwb"></abbr><strong id="pjuwb"><code id="pjuwb"><strong id="pjuwb"></strong></code></strong><option id="pjuwb"></option><optgroup id="pjuwb"><bdo id="pjuwb"><code id="pjuwb"></code></bdo></optgroup><mark id="pjuwb"><em id="pjuwb"><font id="pjuwb"></font></em></mark><acronym id="pjuwb"><code id="pjuwb"></code></acronym><dl id="pjuwb"></dl><em id="pjuwb"></em><object id="pjuwb"><input id="pjuwb"><object id="pjuwb"></object></input></object><output id="pjuwb"><dd id="pjuwb"></dd></output><option id="pjuwb"><button id="pjuwb"><option id="pjuwb"></option></button></option><small id="pjuwb"></small></div> <a href="http://666777v3.com" target="_blank">久久精品盗摄</a>| <a href="http://8xn66w.com" target="_blank">欧美va天堂在线</a>| <a href="http://haohetour.com" target="_blank">亚洲制服av</a>| <a href="http://1194123.com" target="_blank">欧美jizzhd精品欧美巨大免费</a>| <a href="http://kk1xx-com.com" target="_blank">怡红院精品视频</a>| <a href="http://emu160.com" target="_blank">先锋影音网一区二区</a>| <a href="http://4kmz.com" target="_blank">亚洲啪啪91</a>| <a href="http://977764.com" target="_blank">亚洲婷婷综合色高清在线</a>| <a href="http://myav2.com" target="_blank">老司机免费视频久久</a>| <a href="http://wwww76.com" target="_blank">亚洲一区中文字幕在线观看</a>| <a href="http://1588vip.com" target="_blank">欧美高清视频一区二区</a>| <a href="http://www-577511.com" target="_blank">国外成人免费视频</a>| <a href="http://55kam.com" target="_blank">欧美一区二区三区播放老司机 </a>| <a href="http://cp50088.com" target="_blank">国产精品高潮呻吟</a>| <a href="http://ddnwater.com" target="_blank">亚洲人成7777</a>| <a href="http://xmzszx.com" target="_blank">免费在线观看一区二区</a>| <a href="http://17vx.com" target="_blank">一本色道久久综合亚洲精品小说 </a>| <a href="http://211186.com" target="_blank">欧美美女福利视频</a>| <a href="http://sh-hxjdkj.com" target="_blank">亚洲国产黄色片</a>| <a href="http://htzhuanli.com" target="_blank">麻豆精品在线视频</a>| <a href="http://www-222304.com" target="_blank">欧美日韩福利</a>| <a href="http://seo8138.com" target="_blank">亚洲婷婷国产精品电影人久久</a>| <a href="http://794579.com" target="_blank">亚洲欧美一区二区三区极速播放 </a>| <a href="http://www-222304.com" target="_blank">香蕉尹人综合在线观看</a>| <a href="http://sh-hxjdkj.com" target="_blank">欧美伊人久久</a>| <a href="http://ccc982.com" target="_blank">国产一区二区三区久久 </a>| <a href="http://85041960.com" target="_blank">久久亚洲高清</a>| <a href="http://xkm663y.com" target="_blank">亚洲国产精品一区二区第一页</a>| <a href="http://wwww999.com" target="_blank">亚洲美女在线视频</a>| <a href="http://ndr666.com" target="_blank">欧美日韩一区二区三区在线视频</a>| <a href="http://621791.com" target="_blank">亚洲精品一区二区三区福利</a>| <a href="http://6688se.com" target="_blank">亚洲第一搞黄网站</a>| <a href="http://www31931.com" target="_blank">欧美激情一区二区三区</a>| <a href="http://sesese98.com" target="_blank">亚洲精品国产精品国产自</a>| <a href="http://xiehaihua.com" target="_blank">正在播放欧美一区</a>| <a href="http://jgj230230.com" target="_blank">欧美日韩另类字幕中文</a>| <a href="http://arielteam.com" target="_blank">欧美二区在线看</a>| <a href="http://seyuav4.com" target="_blank">亚洲国产影院</a>| <a href="http://hbzbjxzz.com" target="_blank">亚洲精品国产精品乱码不99按摩</a>| <a href="http://www-733999.com" target="_blank">国产精品嫩草影院一区二区</a>| <a href="http://cqrehoo.com" target="_blank">欧美一二三区精品</a>| <a href="http://hh474.com" target="_blank">欧美日韩精品免费</a>| <a href="http://playav999.com" target="_blank">欧美成年人视频</a>| <a href="http://cm168168.com" target="_blank">国产一区二区三区久久</a>| <a href="http://quoviajes.com" target="_blank">99pao成人国产永久免费视频</a>| <a href="http://989766.com" target="_blank">1769国产精品</a>| <a href="http://78gde.com" target="_blank">日韩亚洲欧美一区二区三区</a>| <a href="http://lyminghang.com" target="_blank">亚洲成人自拍视频</a>| <a href="http://sese912.com" target="_blank">性欧美在线看片a免费观看</a>| <a href="http://www-893333.com" target="_blank">韩国av一区二区三区在线观看</a>| <a href="http://jiyixitong.com" target="_blank">99精品国产热久久91蜜凸</a>| <a href="http://994745.com" target="_blank">国产精品视频免费一区</a>| <a href="http://8868866.com" target="_blank">噜噜噜在线观看免费视频日韩</a>| <a href="http://56lin.com" target="_blank">国产欧美精品xxxx另类</a>| <a href="http://imaben.com" target="_blank">欧美a级在线</a>| <a href="http://qqx123.com" target="_blank">国产有码在线一区二区视频</a>| <a href="http://wce-expo.com" target="_blank">欧美韩日高清</a>| <a href="http://979695.com" target="_blank">国产精品裸体一区二区三区</a>| <a href="http://phdy999.com" target="_blank">亚洲精品自在久久</a>| <a href="http://hnjlhgw.com" target="_blank">激情偷拍久久</a>| <a href="http://jiajianpei.com" target="_blank">aa国产精品</a>| <a href="http://rezel-zj.com" target="_blank">一区二区久久</a>| <a href="http://sishengnv.com" target="_blank">久久久精品国产99久久精品芒果</a>| <a href="http://91ymz.com" target="_blank">亚洲美女视频在线观看</a>| <a href="http://uuuu79.com" target="_blank">亚洲欧美日韩一区二区三区在线观看 </a>| <a href="http://857sds.com" target="_blank">亚洲一级在线</a>| <a href="http://sifeksa.com" target="_blank">黄色一区二区三区四区</a>| <a href="http://69xxx6.com" target="_blank">99精品国产在热久久</a>| <a href="http://8x588.com" target="_blank">一本色道久久精品</a>| <a href="http://xjksrbh.com" target="_blank">久久精品视频在线播放</a>| <a href="http://www-876810.com" target="_blank">久久精品一区</a>| <a href="http://kk5551.com" target="_blank">欧美视频在线一区</a>| <a href="http://c7lc.com" target="_blank">农夫在线精品视频免费观看</a>| <a href="http://liuyangzi.com" target="_blank">狠狠色丁香久久综合频道</a>| <a href="http://848585.com" target="_blank">久久久久一区二区</a>| <a href="http://yjizz08.com" target="_blank">亚洲免费视频在线观看</a>| <a href="http://wwwiqiuxia.com" target="_blank">美女91精品</a>| <a href="http://javliabary.com" target="_blank">久久精品天堂</a>| <a href="http://7a7d.com" target="_blank">伊人精品在线</a>| <a href="http://xjksrbh.com" target="_blank">欧美成人精品一区</a>| <a href="http://wwwgay456.com" target="_blank">玖玖精品视频</a>| <a href="http://ztsctgs.com" target="_blank">亚洲精品国产精品国自产在线 </a>| <a href="http://259758.com" target="_blank">欧美影院在线播放</a>| <a href="http://tubcup.com" target="_blank">另类图片综合电影</a>| <a href="http://www330088.com" target="_blank">日韩视频在线观看免费</a>| <a href="http://www01614.com" target="_blank">久久青草福利网站</a>| <a href="http://xjksrbh.com" target="_blank">亚洲国产你懂的</a>| <a href="http://6k7a.com" target="_blank">亚洲国产1区</a>| <a href="http://sese699.com" target="_blank">欧美激情一区二区</a>| <a href="http://jiuzuifusheng.com" target="_blank">亚洲天天影视</a>| <a href="http://syntheticnets.com" target="_blank">久热精品在线视频</a>| <a href="http://www-65581.com" target="_blank">99这里有精品</a>| <a href="http://kxm6868.com" target="_blank">国内自拍视频一区二区三区</a>| <a href="http://114499com.com" target="_blank">美日韩精品视频</a>| <a href="http://580078.com" target="_blank">亚洲女ⅴideoshd黑人</a>| <a href="http://jlhao123.com" target="_blank">久久综合五月天婷婷伊人</a>| <a href="http://00000i.com" target="_blank">另类图片国产</a>| <a href="http://tizenkorea.com" target="_blank">亚洲黄色免费网站</a>| <a href="http://301110.com" target="_blank">欧美日韩在线免费</a>| <a href="http://jsgf444.com" target="_blank">欧美一区二区三区在线看</a>| <a href="http://vvvv81.com" target="_blank">亚洲欧美日韩高清</a>| <a href="http://251aaa.com" target="_blank">娇妻被交换粗又大又硬视频欧美</a>| <a href="http://www107aa.com" target="_blank">欧美11—12娇小xxxx</a>| <a href="http://ccnn33.com" target="_blank">亚洲欧美日韩区</a>| <a href="http://mxkaozi.com" target="_blank">亚洲精品一区久久久久久</a>| <a href="http://251aaa.com" target="_blank">久久国产日韩</a>| <a href="http://6k7a.com" target="_blank">一区二区三区四区蜜桃</a>| <a href="http://by33336.com" target="_blank">一区二区视频免费完整版观看</a>| <a href="http://rainbowbpm.com" target="_blank">欧美激情一区二区三区在线视频观看</a>| <a href="http://414670.com" target="_blank">亚洲一区二区三区中文字幕</a>| <a href="http://muwendada.com" target="_blank">欧美韩日一区二区</a>| <a href="http://ad377.com" target="_blank">欧美在线亚洲</a>| <a href="http://916969.com" target="_blank">在线日韩电影</a>| <a href="http://by1473.com" target="_blank">国产目拍亚洲精品99久久精品 </a>| <a href="http://www-13413.com" target="_blank">久久久久久免费</a>| <a href="http://tristooges.com" target="_blank">国产在线拍揄自揄视频不卡99</a>| <a href="http://wy77777.com" target="_blank">欧美精品色网</a>| <a href="http://042225.com" target="_blank">久久香蕉国产线看观看av</a>| <a href="http://wwwxigua66.com" target="_blank">亚洲欧洲av一区二区</a>| <a href="http://yw1998.com" target="_blank">亚洲免费高清</a>| <a href="http://414670.com" target="_blank">亚洲国产高清aⅴ视频</a>| <a href="http://www-78733.com" target="_blank">久久久成人网</a>| <a href="http://aidingcai.com" target="_blank">欧美尤物一区</a>| <a href="http://ll992.com" target="_blank">亚洲欧美日韩在线综合</a>| <a href="http://www-188445.com" target="_blank">日韩一级在线观看</a>| <a href="http://szywsj.com" target="_blank">亚洲国产精品成人综合色在线婷婷</a>| <a href="http://wwmm9.com" target="_blank">国产精品一区视频网站</a>| <a href="http://921367.com" target="_blank">国产精品草草</a>| <a href="http://xianqyd.com" target="_blank">久久9热精品视频</a>| <a href="http://5858yp.com" target="_blank">亚洲一区二区三区中文字幕</a>| <a href="http://302262.com" target="_blank">日韩视频在线观看国产</a>| <a href="http://343119.com" target="_blank">亚洲经典在线</a>| <a href="http://7373se.com" target="_blank">亚洲激情在线</a>| <a href="http://kgg93.com" target="_blank">亚洲国产精品www</a>| <a href="http://www515678.com" target="_blank">欧美成人在线免费观看</a>| <a href="http://8222666.com" target="_blank">一区二区三区精品在线 </a>| <a href="http://5858yp.com" target="_blank">国产精品你懂得</a>| <a href="http://91nbs.com" target="_blank">国产精品久久中文</a>| <a href="http://luqintang.com" target="_blank">欧美私人网站</a>| <a href="http://bkf23.com" target="_blank">国产精品免费一区二区三区在线观看 </a>| <a href="http://www-ty66.com" target="_blank">国产视频一区免费看</a>| <a href="http://www47777.com" target="_blank">久久久国产一区二区</a>| <a href="http://jm1688e.com" target="_blank">亚洲欧美日韩一区二区三区在线</a>| <a href="http://yzsss.com" target="_blank">最新国产成人在线观看</a>| <a href="http://www-13978.com" target="_blank">亚洲国产三级网</a>| <a href="http://51120guahao.com" target="_blank">亚洲黄色尤物视频</a>| <a href="http://mmmm43.com" target="_blank">亚洲人成在线观看</a>| <a href="http://9a5x.com" target="_blank">日韩午夜剧场</a>| <a href="http://szzzzzzz.com" target="_blank">亚洲午夜激情网页</a>| <a href="http://320ur.com" target="_blank">午夜久久黄色</a>| <a href="http://av0333.com" target="_blank">久久久噜噜噜久噜久久</a>| <a href="http://97aixxxx.com" target="_blank">麻豆久久婷婷</a>| <a href="http://hakuihoso.com" target="_blank">欧美激情第1页</a>| <a href="http://44779c.com" target="_blank">国产精品大片</a>| <a href="http://baoyu1313.com" target="_blank">国产亚洲精品aa午夜观看</a>| <a href="http://quintostdio.com" target="_blank">国产真实精品久久二三区</a>| <a href="http://6055365.com" target="_blank">激情婷婷久久</a>| <a href="http://qimao360.com" target="_blank">99精品国产在热久久下载</a>| <a href="http://www3344xz.com" target="_blank">在线性视频日韩欧美</a>| <a href="http://qkspvip.com" target="_blank">午夜精品视频在线观看一区二区</a>| <a href="http://ccc159.com" target="_blank">91久久久精品</a>| <a href="http://actinview.com" target="_blank">亚洲视频一二</a>| <a href="http://seqingdao.com" target="_blank">欧美在线日韩在线</a>| <a href="http://cnc800.com" target="_blank">蜜桃精品一区二区三区</a>| <a href="http://x946.com" target="_blank">最新成人在线</a>| <a href="http://www249aaa.com" target="_blank">99精品热视频只有精品10</a>| <a href="http://www49853b.com" target="_blank">亚洲欧洲一区二区在线播放</a>| <a href="http://78gde.com" target="_blank">中日韩高清电影网</a>| <a href="http://921367.com" target="_blank">欧美在线观看网站</a>| <a href="http://2323nn.com" target="_blank">欧美国产一区二区在线观看</a>| <a href="http://yjizz08.com" target="_blank">国产精品白丝av嫩草影院</a>| <a href="http://qvod777.com" target="_blank">国产一区二区三区奇米久涩 </a>| <a href="http://www433444.com" target="_blank">欧美日韩国产123</a>| <a href="http://yjizz08.com" target="_blank">国产精品亚洲欧美</a>| <a href="http://8880850.com" target="_blank">亚洲国产高清在线</a>| <a href="http://9955377.com" target="_blank">午夜精品视频一区</a>| <a href="http://www-452.com" target="_blank">亚洲第一天堂无码专区</a>| <a href="http://zooxoft.com" target="_blank">亚洲天堂av在线免费</a>| <a href="http://392294.com" target="_blank">久热精品视频在线</a>| <a href="http://www-kkjj88.com" target="_blank">国产精品久久久久久久久搜平片 </a>| <a href="http://caokk1.com" target="_blank">日韩视频在线一区二区</a>| <a href="http://aass123.com" target="_blank">午夜国产不卡在线观看视频</a>| <a href="http://vipaiqiyi.com" target="_blank">久久夜色精品国产欧美乱</a>| <a href="http://6661639.com" target="_blank">午夜精品久久久久久久</a>| <a href="http://2235e.com" target="_blank">免费亚洲一区二区</a>| <a href="http://5xxm.com" target="_blank">中文一区二区在线观看</a>| <a href="http://xxxsxx.com" target="_blank">欧美 日韩 国产 一区</a>| <a href="http://www-777324.com" target="_blank">国产精品日韩在线</a>| <a href="http://114mz.com" target="_blank">一区二区91</a>| <a href="http://mm778899.com" target="_blank">欧美r片在线</a>| <a href="http://wslsp.com" target="_blank">先锋影音一区二区三区</a>| <a href="http://xb735.com" target="_blank">欧美日韩成人在线观看</a>| <a href="http://6677ch.com" target="_blank">在线观看成人小视频</a>| <a href="http://tv-miya188.com" target="_blank">亚洲欧美久久久</a>| <a href="http://6u6uuu666.com" target="_blank">亚洲黄色成人久久久</a>| <a href="http://www35211.com" target="_blank">久久久久久有精品国产</a>| <a href="http://021jjjflaw.com" target="_blank">国产精品最新自拍</a>| <a href="http://666043.com" target="_blank">亚洲午夜激情在线</a>| <a href="http://win-mdk.com" target="_blank">欧美一区二区三区播放老司机 </a>| <a href="http://ad377.com" target="_blank">亚洲精品乱码久久久久久日本蜜臀</a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>