锘??xml version="1.0" encoding="utf-8" standalone="yes"?>伊人久久大香线蕉AV色婷婷色,国产精品久久永久免费,无码人妻久久一区二区三区蜜桃http://www.shnenglu.com/FateNo13/archive/2009/08/24/94224.html鎶婃彙鍛借繍鎶婃彙鍛借繍Mon, 24 Aug 2009 02:29:00 GMThttp://www.shnenglu.com/FateNo13/archive/2009/08/24/94224.htmlhttp://www.shnenglu.com/FateNo13/comments/94224.htmlhttp://www.shnenglu.com/FateNo13/archive/2009/08/24/94224.html#Feedback1http://www.shnenglu.com/FateNo13/comments/commentRss/94224.htmlhttp://www.shnenglu.com/FateNo13/services/trackbacks/94224.htmlentryname[=internalname] [@ordinal [NONAME]] [PRIVATE] [DATA]

瀵逛笂闈㈣娉曠殑瑙i噴錛?br>1銆?br>

entryname 鏄瀵煎嚭鐨勫嚱鏁板悕鎴栧彉閲忓悕銆傝繖鏄繀閫夐」銆傚鏋滃鍑虹殑鍚嶇О涓?DLL 涓殑鍚嶇О涓嶅悓錛屽垯閫氳繃 internalname 鎸囧畾 DLL 涓鍑虹殑鍚嶇О銆備緥濡傦紝濡傛灉 DLL 瀵煎嚭鍑芥暟 func1()錛岃灝嗗畠鐢ㄤ綔 func2()錛屽垯搴旀寚瀹氾細

EXPORTS
func2=func1

2銆?br>

@ordinal 鍏佽鎸囧畾鏄簭鍙瘋屼笉鏄嚱鏁板悕灝嗚繘鍏?DLL 鐨勫鍑鴻〃銆傝繖鏈夊姪浜庢渶灝忓寲 DLL 鐨勫ぇ灝忋?LIB 鏂囦歡灝嗗寘鍚簭鍙蜂笌鍑芥暟涔嬮棿鐨勬槧灝勶紝榪欎嬌鎮ㄥ緱浠ュ儚閫氬父鍦ㄤ嬌鐢?DLL 鐨勯」鐩腑閭f牱浣跨敤鍑芥暟鍚嶃?/p>

鍙夌殑 NONAME 鍏抽敭瀛楀厑璁稿彧鎸夊簭鍙峰鍑猴紝騫跺噺灝忕粨鏋?DLL 涓鍑鴻〃鐨勫ぇ灝忋備絾鏄紝濡傛灉瑕佸湪 DLL 涓婁嬌鐢?GetProcAddress錛屽垯蹇呴』鐭ラ亾搴忓彿錛屽洜涓哄悕縐板皢鏃犳晥銆?/p>

鍙夌殑 PRIVATE 鍏抽敭瀛楃姝㈠皢 entryname 鏀懼埌鐢?LINK 鐢熸垚鐨勫鍏ュ簱涓傚畠瀵瑰悓鏍鋒槸鐢?LINK 鐢熸垚鐨勫浘鍍忎腑鐨勫鍑烘棤鏁堛?/p>

鍙夌殑 DATA 鍏抽敭瀛楁寚瀹氬鍑虹殑鏄暟鎹紝鑰屼笉鏄唬鐮併備緥濡傦紝鍙互瀵煎嚭鏁版嵁鍙橀噺錛?/p>

EXPORTS
i DATA

褰撳鍚屼竴瀵煎嚭浣跨敤 PRIVATE 鍜?DATA 鏃訛紝PRIVATE 蹇呴』浣嶄簬 DATA 鐨勫墠闈€?/p>

3銆?

鏈変笁縐嶅鍑哄畾涔夌殑鏂規硶錛屾寜鐓у緩璁殑浣跨敤欏哄簭渚濇涓猴細

  1. 婧愪唬鐮佷腑鐨?__declspec(dllexport) 鍏抽敭瀛?/p>

  2. .def 鏂囦歡涓殑 EXPORTS 璇彞

  3. LINK 鍛戒護涓殑 /EXPORT 瑙勮寖

鎵鏈夎繖涓夌鏂規硶鍙互鐢ㄥ湪鍚屼竴涓▼搴忎腑銆侺INK 鍦ㄧ敓鎴愬寘鍚鍑虹殑紼嬪簭鏃惰繕鍒涘緩瀵煎叆搴擄紝闄ら潪鐢熸垚涓嬌鐢ㄤ簡 .exp 鏂囦歡銆?/p>
4銆佷竴涓緇嗙殑

EXPORTS
DllCanUnloadNow      @1     PRIVATE   DATA
DllWindowName = Name        DATA
DllGetClassObject    @4 NONAME   PRIVATE
DllRegisterServer    @7
DllUnregisterServer
娉ㄦ剰錛屼嬌鐢?.def 鏂囦歡浠?DLL 涓鍑哄彉閲忔椂錛屼笉闇瑕佸湪鍙橀噺涓婃寚瀹?__declspec(dllexport)銆備絾鏄紝鍦ㄤ換浣曚嬌鐢?DLL 鐨勬枃浠朵腑錛屼粛蹇呴』鍦ㄦ暟鎹0鏄庝笂浣跨敤 __declspec(dllimport)銆?/pre>
 
涓嬮潰鐨勬槸涓涓緥瀛愶紝鍙互鐪嬪埌def鏂囦歡瀹為檯涓婄殑浣滅敤銆?br>










Node_t node;

BOOL APIENTRY DllMain( HMODULE hModule,
                       DWORD  ul_reason_for_call,
                       LPVOID lpReserved
                     )
{
    node.x 
= 5;
    node.y 
= 6;
    
return TRUE;
}



int Max(int x, int y)
{
    
if(x>=y)
        
return x;
    
else
        
return y;
}


int Min(int x, int y)
{
    
if(x>=y)
        
return y;
    
else
        
return x;
}


Node_t 
* func1()
{
    
return &node;
}


Node_t 
* func2()
{
    
return &node;
}

涓嬮潰鏄痙ef鏂囦歡


EXPORTS
Max            
=Max    @2
MinChange    
=Min    @1
func1        
=func1    @3    NONAME 
func2        
=func2    @5    PRIVATE 
node        
=node    @8    PRIVATE        

涓嬮潰鏄搴旂殑lib鐨勫鍑?br>

 2    ?Max@@YAHHH@Z (int __cdecl Max(int,int))
 
1    ?MinChange@@YAHHH@Z (int __cdecl MinChange(int,int))
 
3    ?func1@@YAPAUNode_t@@XZ (struct Node_t * __cdecl func1(void))

涓嬮潰鏄搴旂殑dll鏂囦歡鐨勫鍑?br>

    ordinal hint RVA      name

          
2    0 00001020 Max = ?Max@@YAHHH@Z (int __cdecl Max(int,int))
          
1    1 00001030 MinChange = ?Min@@YAHHH@Z (int __cdecl Min(int,int))
          
5    2 00001040 func2 = ?func1@@YAPAUNode_t@@XZ (struct Node_t * __cdecl func1(void))
          
8    3 00003348 node = ?node@@3UNode_t@@A (struct Node_t node)
          
3      00001040 [NONAME] ?func1@@YAPAUNode_t@@XZ (struct Node_t * __cdecl func1(void))

浠庝笂闈㈠彲浠ョ湅鍑烘潵錛宒ef鏂囦歡鐨勭鍙峰湪lib涓殑浣滅敤騫朵笉澶э紝浣嗘槸鍑芥暟鍚嶇О錛屾瘮濡?span style="COLOR: #000000">?MinChange@@YAHHH@Z涓殑MinChange鏄洜涓篸ef涓?/a>鎶奙in鏀規垚浜哅inChange錛屾墍浠ib涓篃榪涜浜嗕慨鏀癸紝浣嗘槸榪欎釜MinChange絎﹀彿瀹為檯涓婂嚭鐜板湪dll鏂囦歡鐨刵ame鍒椾腑銆傚叾瀹炶繖涔熺湅鍑烘潵浜嗭紝def鏂囦歡鍙槸鍦╨oadlibrary榪欑榪愯鏃跺姞杞芥湁鏁堛?br>鐢變簬lib涓殑鍑芥暟鍚嶅彉鎴愪簡?MinChange@@YAHHH@Z錛屽鑷翠嬌鐢?strong>__declspec(dllimport)榪涜瀵煎叆鐨勫惎鍔ㄦ椂鍔犺澆錛岀敓鎴愮殑?Min@@YAHHH@Z鏃犳硶涓?span style="COLOR: #000000">?MinChange@@YAHHH@Z瀵瑰簲錛岃屽嚭鐜伴摼鎺ユ椂鐨勯敊璇傛墍浠ヤ笉搴旇鏀瑰彉鍑芥暟鍚嶏紝鑰屽簲璇ュ湪def鏂囦歡涓洿鎺ヤ嬌鐢ㄥ嚱鏁板悕錛岃繖鏍峰惎鍔ㄦ椂鍔犺澆鍜岃繍琛屾椂鍔犺澆閮借兘澶熼『鍒╄繘琛屻?br>鍚屾椂浠庝笂闈篃鍙互鐪嬪嚭NONAME鍜孭RIVATE鐨勪綔鐢ㄧ殑銆?br>闂錛氳瘯楠屼腑浣跨敤DATA鎬繪槸鍑洪敊錛屼笉鐭ラ亾鎬庝箞寮勩?br>















鎶婃彙鍛借繍 2009-08-24 10:29 鍙戣〃璇勮
]]>WSAStartup綆鍗曡В閲?/title><link>http://www.shnenglu.com/FateNo13/archive/2009/08/24/94219.html</link><dc:creator>鎶婃彙鍛借繍</dc:creator><author>鎶婃彙鍛借繍</author><pubDate>Mon, 24 Aug 2009 01:51:00 GMT</pubDate><guid>http://www.shnenglu.com/FateNo13/archive/2009/08/24/94219.html</guid><wfw:comment>http://www.shnenglu.com/FateNo13/comments/94219.html</wfw:comment><comments>http://www.shnenglu.com/FateNo13/archive/2009/08/24/94219.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/FateNo13/comments/commentRss/94219.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/FateNo13/services/trackbacks/94219.html</trackback:ping><description><![CDATA[<strong>int WSAStartup (<br>  WORD</strong><em> wVersionRequested</em><strong>,  </strong><br><strong>  LPWSADATA</strong><em> lpWSAData  </em><br><strong>);<br>絎竴涓弬鏁版槸璋冪敤鑰呰兘澶熶嬌鐢ㄧ殑鏈楂樼増鏈彿銆?br>絎簩涓弬鏁頒腑鐨勫墠涓や釜鎴愬憳涓紝絎竴涓垚鍛樻槸sock dll榪斿洖鐨勭増鏈彿錛岀浜屼釜鍙傛暟鏄痙ll鏀寔鐨勬渶楂樼増鏈彿銆?br><br>榪欎釜鍑芥暟鎴愬姛榪斿洖鐨勬潯浠舵槸錛岀涓涓弬鏁扮殑鐗堟湰鍙烽珮浜巗ock dll鑳藉鏀寔鐨勬渶浣庣増鏈紝閭d箞灝辮〃紺篸ll鑲畾鏀寔璋冪敤鑰呰兘澶熶嬌鐢ㄧ殑涓涓増鏈傚湪絎簩涓弬鏁頒腑鐨勭涓涓彉閲忕榪斿洖絎竴涓弬鏁板拰dll鏀寔鐨勬渶楂樼増鏈腑鐨勯偅涓皬鐨勭増鏈?br>紺轟緥鍥撅紝鏈夐噸鍙狅紝璇存槑瀛樺湪鍙互浣跨敤鐨勭増鏈?br><img height=246 alt="" src="http://www.shnenglu.com/images/cppblog_com/fateno13/pp.JPG" width=400 border=0><br>絎竴琛屾槸璋冪敤鑰呰兘澶熶嬌鐢ㄧ殑鎵鏈夌増鏈紝絎簩琛屾槸dll鏀寔鐨勬墍鏈夌増鏈紝鑰岃繖涓嚱鏁頒腑鐨勭涓涓弬鏁版槸絎竴琛屼腑鐨勬渶澶х増鏈傜浜屼釜鍙傛暟涓殑絎竴涓垚鍛樻槸閲嶅彔閮ㄥ垎鐨勬渶澶х殑閭d釜銆傚鏋滄病鏈夐噸鍙犻儴鍒嗭紝閭d箞鍑芥暟澶辮觸銆?/strong> <img src ="http://www.shnenglu.com/FateNo13/aggbug/94219.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/FateNo13/" target="_blank">鎶婃彙鍛借繍</a> 2009-08-24 09:51 <a href="http://www.shnenglu.com/FateNo13/archive/2009/08/24/94219.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>綰跨▼鍚屾鐨勫嚑縐嶆柟娉?/title><link>http://www.shnenglu.com/FateNo13/archive/2009/08/23/94194.html</link><dc:creator>鎶婃彙鍛借繍</dc:creator><author>鎶婃彙鍛借繍</author><pubDate>Sun, 23 Aug 2009 12:30:00 GMT</pubDate><guid>http://www.shnenglu.com/FateNo13/archive/2009/08/23/94194.html</guid><wfw:comment>http://www.shnenglu.com/FateNo13/comments/94194.html</wfw:comment><comments>http://www.shnenglu.com/FateNo13/archive/2009/08/23/94194.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/FateNo13/comments/commentRss/94194.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/FateNo13/services/trackbacks/94194.html</trackback:ping><description><![CDATA[1.CreateMutex<br>   WaitForSingleObject<br>   RealseMutex<br><br>2.CreateThread涓殑涓寸晫鍖? <img src ="http://www.shnenglu.com/FateNo13/aggbug/94194.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/FateNo13/" target="_blank">鎶婃彙鍛借繍</a> 2009-08-23 20:30 <a href="http://www.shnenglu.com/FateNo13/archive/2009/08/23/94194.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>istream_iterator鐨勮嚜澧?/title><link>http://www.shnenglu.com/FateNo13/archive/2009/08/20/93897.html</link><dc:creator>鎶婃彙鍛借繍</dc:creator><author>鎶婃彙鍛借繍</author><pubDate>Thu, 20 Aug 2009 04:45:00 GMT</pubDate><guid>http://www.shnenglu.com/FateNo13/archive/2009/08/20/93897.html</guid><wfw:comment>http://www.shnenglu.com/FateNo13/comments/93897.html</wfw:comment><comments>http://www.shnenglu.com/FateNo13/archive/2009/08/20/93897.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/FateNo13/comments/commentRss/93897.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/FateNo13/services/trackbacks/93897.html</trackback:ping><description><![CDATA[<p> </p> <p>  // TEMPLATE CLASS istream_iterator<br>template<class _Ty,<br> class _Elem = char,<br> class _Traits = char_traits<_Elem>,<br> class _Diff = ptrdiff_t><br> class istream_iterator<br>  : public iterator<input_iterator_tag, _Ty, _Diff,<br>   const _Ty *, const _Ty&><br> { // wrap _Ty extracts from input stream as input iterator<br> typedef istream_iterator<_Ty, _Elem, _Traits, _Diff> _Myt;<br>public:<br> typedef _Elem char_type;<br> typedef _Traits traits_type;<br> typedef basic_istream<_Elem, _Traits> istream_type;</p> <p>#if _SECURE_SCL<br> typedef _Range_checked_iterator_tag _Checked_iterator_category;<br>#endif</p> <p> istream_iterator()<br>  : _Myistr(0)<br>  { // construct singular iterator<br>  }</p> <p> istream_iterator(istream_type& _Istr)<br>  : _Myistr(&_Istr)<br>  { // construct with input stream<br>  _Getval();<br>  }</p> <p> const _Ty& operator*() const<br>  { // return designated value</p> <p> #if _HAS_ITERATOR_DEBUGGING<br>  if (_Myistr == 0)<br>   {<br>   _DEBUG_ERROR("istream_iterator is not dereferencable");<br>   _SCL_SECURE_OUT_OF_RANGE;<br>   }<br> #else<br>  _SCL_SECURE_VALIDATE_RANGE(_Myistr != 0);<br> #endif /* _HAS_ITERATOR_DEBUGGING */</p> <p>  return (_Myval);<br>  }</p> <p> const _Ty *operator->() const<br>  { // return pointer to class object<br>  return (&**this);<br>  }</p> <p style="COLOR: #ff0000"> _Myt& operator++()<br>  { // preincrement</p> <p style="COLOR: #ff0000"> #if _HAS_ITERATOR_DEBUGGING<br>  if (_Myistr == 0)<br>   {<br>   _DEBUG_ERROR("istream_iterator is not incrementable");<br>   _SCL_SECURE_OUT_OF_RANGE;<br>   }<br> #else<br>  _SCL_SECURE_VALIDATE_RANGE(_Myistr != 0);<br> #endif /* _HAS_ITERATOR_DEBUGGING */</p> <p><span style="COLOR: #ff0000">  _Getval();<br>  return (*this);<br>  }</span></p> <p><span style="COLOR: #ff0000"> _Myt operator++(int)<br>  { // postincrement<br>  _Myt _Tmp = *this;<br>  ++*this;<br>  return (_Tmp);<br>  }</span></p> <p> bool _Equal(const _Myt& _Right) const<br>  { // test for iterator equality<br>  return (_Myistr == _Right._Myistr);<br>  }</p> <p>protected:<br><span style="COLOR: #ff0000"> void _Getval()<br>  { // get a _Ty value if possible<br>  if (_Myistr != 0 && !(*_Myistr >> _Myval))<br>   _Myistr = 0;<br>  }</span></p> <p> static void _Xran()<br>  { // report an out_of_range error<br>  _THROW(out_of_range, "invalid istream_iterator");<br>  }</p> <p> istream_type *_Myistr; // pointer to input stream<br> _Ty _Myval; // lookahead value (valid if _Myistr is not null)<br> };</p> <p>  // istream_iterator TEMPLATE OPERATORS<br>template<class _Ty,<br> class _Elem,<br> class _Traits,<br> class _Diff> inline<br> bool operator==(<br>  const istream_iterator<_Ty, _Elem, _Traits, _Diff>& _Left,<br>  const istream_iterator<_Ty, _Elem, _Traits, _Diff>& _Right)<br> { // test for istream_iterator equality<br> return (_Left._Equal(_Right));<br> }</p> <p>template<class _Ty,<br> class _Elem,<br> class _Traits,<br> class _Diff> inline<br> bool operator!=(<br>  const istream_iterator<_Ty, _Elem, _Traits, _Diff>& _Left,<br>  const istream_iterator<_Ty, _Elem, _Traits, _Diff>& _Right)<br> { // test for istream_iterator inequality<br> return (!(_Left == _Right));<br> }<br><br>綰㈣壊閮ㄥ垎灝辨槸閲嶇偣浜嗭紝鍏跺疄榪欑榪唬鍣ㄤ笉鑳借嚜澧烇紝鍙槸涓嶆柇鎶婃祦涓殑鍏冪礌鏀懼埌鑷繁鎵瀛樼殑鍊奸噷錛屽綋鍒拌揪嫻佹湯灝炬椂錛岀洿鎺ュ皢鍒ゆ柇鎸囬拡璁句負0銆?/p> <img src ="http://www.shnenglu.com/FateNo13/aggbug/93897.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/FateNo13/" target="_blank">鎶婃彙鍛借繍</a> 2009-08-20 12:45 <a href="http://www.shnenglu.com/FateNo13/archive/2009/08/20/93897.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>C++緇冧範5浣滀笟http://www.shnenglu.com/FateNo13/archive/2009/08/20/93895.html鎶婃彙鍛借繍鎶婃彙鍛借繍Thu, 20 Aug 2009 04:05:00 GMThttp://www.shnenglu.com/FateNo13/archive/2009/08/20/93895.htmlhttp://www.shnenglu.com/FateNo13/comments/93895.htmlhttp://www.shnenglu.com/FateNo13/archive/2009/08/20/93895.html#Feedback0http://www.shnenglu.com/FateNo13/comments/commentRss/93895.htmlhttp://www.shnenglu.com/FateNo13/services/trackbacks/93895.html闃呰鍏ㄦ枃

]]>
鍏充簬縐佹湁鎴愬憳http://www.shnenglu.com/FateNo13/archive/2009/08/19/93870.html鎶婃彙鍛借繍鎶婃彙鍛借繍Wed, 19 Aug 2009 14:57:00 GMThttp://www.shnenglu.com/FateNo13/archive/2009/08/19/93870.htmlhttp://www.shnenglu.com/FateNo13/comments/93870.htmlhttp://www.shnenglu.com/FateNo13/archive/2009/08/19/93870.html#Feedback0http://www.shnenglu.com/FateNo13/comments/commentRss/93870.htmlhttp://www.shnenglu.com/FateNo13/services/trackbacks/93870.html

]]>
__cdecl銆乢_stdcall銆乢_fastcallhttp://www.shnenglu.com/FateNo13/archive/2009/08/18/93743.html鎶婃彙鍛借繍鎶婃彙鍛借繍Tue, 18 Aug 2009 15:05:00 GMThttp://www.shnenglu.com/FateNo13/archive/2009/08/18/93743.htmlhttp://www.shnenglu.com/FateNo13/comments/93743.htmlhttp://www.shnenglu.com/FateNo13/archive/2009/08/18/93743.html#Feedback0http://www.shnenglu.com/FateNo13/comments/commentRss/93743.htmlhttp://www.shnenglu.com/FateNo13/services/trackbacks/93743.html闃呰鍏ㄦ枃

]]>
exe銆乨ll鐨勮繘鍏ョ偣錛屼互鍙妋ain銆亀inmain銆乨llmain鐨勫叧緋?/title><link>http://www.shnenglu.com/FateNo13/archive/2009/08/18/93719.html</link><dc:creator>鎶婃彙鍛借繍</dc:creator><author>鎶婃彙鍛借繍</author><pubDate>Tue, 18 Aug 2009 10:50:00 GMT</pubDate><guid>http://www.shnenglu.com/FateNo13/archive/2009/08/18/93719.html</guid><wfw:comment>http://www.shnenglu.com/FateNo13/comments/93719.html</wfw:comment><comments>http://www.shnenglu.com/FateNo13/archive/2009/08/18/93719.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/FateNo13/comments/commentRss/93719.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/FateNo13/services/trackbacks/93719.html</trackback:ping><description><![CDATA[<p>闈欐侀摼鎺ョ殑鎯呭喌涓嶈冭檻錛屽洜涓鴻繖縐嶆儏鍐靛氨鏄妸鎵鏈変唬鐮佸悎騫跺埌exe涓紝涓嶉渶瑕佽繘鍏ョ偣銆?br><br>榪涘叆鐐瑰氨鏄郴緇熷湪鍔犺澆涓涓彲鎵ц浠g爜鍧楋紙涓昏鏄痚xe鍜宒ll錛夊埌鍐呭瓨鐨勬椂鍊欙紝緋葷粺灝嗚璋冪敤鐨勮搗濮嬩唬鐮佺殑浣嶇疆銆?br><br>鍔犺澆鍒嗕負鍚姩鏃跺姞杞藉拰榪愯鏃跺姞杞斤紝榪欎袱縐嶈娉曚富瑕佹槸閽堝dll鐨勶紝鍥犱負exe鍔犺澆蹇呯劧浼氬垱寤轟竴涓柊鐨勮繘紼嬶紝鎵浠xe鍔犺澆閮芥槸鍚姩鏃跺姞杞斤紝灝辯畻鏄痗reateprocess涔熷簲璇ヨ鏄惎鍔ㄦ椂鍔犺澆銆傝宒ll鍒嗕負涓ょ鎯呭喌錛岀涓縐嶅氨鏄殢鐫exe鐨勫姞杞戒竴璧峰姞杞藉埌鍐呭瓨鐨勫悓涓榪涚▼鍦板潃絀洪棿涓紝鍙︿竴縐嶅垯鏄痚xe涓殑浠g爜loadlibrary鍦ㄨ繍琛屾椂鍔犺澆dll鍒板綋鍓峞xe鐨勮繘紼嬪湴鍧絀洪棿涓?br>鏃犺涓婇潰鍝鎯呭喌錛屽彧瑕佸姞杞斤紝緋葷粺灝變細涓瀹氬湪鍔犺澆鐨勬椂鍊欒皟鐢ㄨ繘鍏ョ偣浠g爜錛屾墍浠ュ姞杞芥柟寮忎笌榪涘叆鐐瑰畬鍏ㄤ笉褰卞搷銆?br><br>win sdk鏂囨。涓璭xe鐨勮繘鍏ョ偣鏈変袱涓紝涓涓槸main錛屽彟涓涓槸winmain錛岃繖涓繘鍏ョ偣鏄彲浠ユ敼鐨勶紝浣嗘槸鍦╟榪愯鐜涓嬶紝榪炴帴鍣ㄤ竴鑸妸榪涘叆鐐歸粯璁よ緗負<strong>mainCRTStartup</strong>鍜?strong>WinMainCRTStartup</strong>錛屽洜涓篶榪愯鏃墮渶瑕佸湪浠g爜鎵ц鍓嶈繘琛屼竴浜涘埆鐨勫伐浣滐紝鎵浠ュ氨淇敼涓哄墠闈袱涓猚鍏ュ彛鐐癸紝鐒跺悗榪欎袱涓嚱鏁板啀鍒嗗埆璋冪敤main鍜寃inmain銆俢榪愯鏃墮渶瑕佷綔鐨勭壒鍒伐浣滃氨鏄垵濮嬪寲c榪愯鏃剁幆澧冿紝鍖呮嫭闈欐併佸叏灞鍙橀噺鍜屽璞″垵濮嬪寲銆傚綋main鎴栬厀inmain榪斿洖鏃跺氨鍙堝洖鍒頒簡鍓嶄袱涓嚱鏁頒腑錛岃繖涓や釜鍑芥暟鐨勫悗鍗婇儴鍒嗗氨鏄礋璐f竻鐞嗕箣鍓嶇殑鍒濆鍖栧伐浣溿?br><br>win sdk鏂囨。涓殑dll鐨勮繘鍏ュ簵鏄痙llmain錛屽悓鏍峰湪c榪愯鏃朵笅錛屾敼涓?strong>_DllMainCRTStartup</strong>錛岀郴緇熷姞杞絛ll鏃惰皟鐢ㄨ繖涓嚱鏁幫紝鐒跺悗榪欎釜鍑芥暟鍋氫簺鍒濆鍖栧伐浣滐紝鍐嶈皟鐢╠llmain錛岀劧鍚庤繑鍥?strong>_DllMainCRTStartup</strong>緇撴潫鎵ц銆傛鏃訛紝dll宸茬粡鍦ㄨ繘紼嬬殑鍦板潃絀洪棿涓簡錛岃榪涚▼鐨別xe鍙互浣跨敤dll涓殑浠g爜浜嗐傚鏋滆dll鏄惎鍔ㄦ椂鍔犺澆錛岄偅涔堝湪紼嬪簭緇撴潫鏃朵細鍐嶆璋冪敤<strong>_DllMainCRTStartup</strong>榪涜娓呯悊涔嬪墠dll鍒濆鍖栫殑宸ヤ綔錛屽鏋滄槸閫氳繃loadlibrary鏉ヨ繍琛屾椂鍔犺澆dll錛岄偅涔堥渶瑕乪xe鑷繁鍗歌澆dll錛屽嵏杞界殑鏃跺欎細鍐嶆璋冪敤<strong>_DllMainCRTStartup</strong></p> <p> </p> <img src ="http://www.shnenglu.com/FateNo13/aggbug/93719.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/FateNo13/" target="_blank">鎶婃彙鍛借繍</a> 2009-08-18 18:50 <a href="http://www.shnenglu.com/FateNo13/archive/2009/08/18/93719.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>CreateFile鍜學riteFilehttp://www.shnenglu.com/FateNo13/archive/2009/08/12/93066.html鎶婃彙鍛借繍鎶婃彙鍛借繍Wed, 12 Aug 2009 11:46:00 GMThttp://www.shnenglu.com/FateNo13/archive/2009/08/12/93066.htmlhttp://www.shnenglu.com/FateNo13/comments/93066.htmlhttp://www.shnenglu.com/FateNo13/archive/2009/08/12/93066.html#Feedback0http://www.shnenglu.com/FateNo13/comments/commentRss/93066.htmlhttp://www.shnenglu.com/FateNo13/services/trackbacks/93066.html#include"windows.h"
#include
"tchar.h"

LRESULT CALLBACK WindowProc(HWND hWnd,UINT uMsg,WPARAM wParam,LPARAM lParam);

HANDLE g_hFile;
HANDLE g_hFile1;
struct sMsg
{
    DWORD time;
    DWORD message;
}
;

    

int WINAPI _tWinMain(HINSTANCE hInstance, HINSTANCE ,LPTSTR lpCmdLine,int nCmdShow)
{
    
if(!hInstance) return 0;
    WNDCLASSEX wcex;
    wcex.style 
= CS_HREDRAW |    CS_OWNDC|CS_VREDRAW ;          //甯哥敤璁劇疆,榪欎釜璁劇疆瀹氫箟綾誨湪閬囧埌鍚勭鎯呭喌鏃剁殑琛屼負,涓嶈繃閮芥槸浜涘彲鏈夊彲鏃犵殑涓滆タ
    wcex.lpszClassName = TEXT("FIRSTCLASS");                         //綾誨悕,蹇呴』瀛樺湪,榪欐槸寮曠敤綾葷殑宸笉澶氬敮涓鐨勬爣蹇?鍙︿竴涓槸class atom
    wcex.hInstance = hInstance;                                                    //綾繪墍灞炵殑妯″潡鍙ユ焺,濡傛灉style涓湁CS_OWNDC,鐩稿弽,濡傛灉鏄疌S_CLASSDC鐨勮瘽,榪欎釜綾誨氨灞炰簬榪欎釜榪涚▼
    wcex.lpszMenuName = NULL;                                               //榪欐槸涓寚鍚戣彍鍗曡祫婧愮殑鎸囬拡,濡傛灉鏄疦ULL鐨勮瘽,鍒欐病鏈夎彍鍗?/span>
    wcex.hCursor = LoadCursor(NULL,IDC_ARROW);           //鍔犺澆榧犳爣鍥炬爣,濡傛灉鏄疦ULL鐨勮瘽,緋葷粺娌℃湁榛樿鐨勯紶鏍囧浘鏍?鍥犳鍥炬爣浼氬嚭鐜版湭瀹氫箟鎯呭喌
    wcex.hIcon  = NULL;                                                               //緋葷粺浼氬姞杞介粯璁ゅ浘鏍?/span>
    wcex.hbrBackground = (HBRUSH)(COLOR_WINDOW+1);
    wcex.lpfnWndProc 
= WindowProc;
    wcex.cbClsExtra 
=0;                                                               //鍒嗛厤緇欑被鐨勯澶栧唴瀛?鏍規湰鐢ㄤ笉涓?璁句負0
    wcex.cbWndExtra = 0;                                                        //鍒嗛厤緇欑敱榪欎釜綾諱駭鐢熺殑鎵鏈夌獥鍙g殑姣忎竴涓唴瀛樺ぇ灝?鐢ㄤ笉涓?0
    wcex.cbSize = sizeof(WNDCLASSEX);                             //綾葷殑澶у皬,榪欎釜浼拌鏄互鍚庢墿灞曠殑鏃跺欑敤鐨勫惂,鎬誨叡涓ょ,闅鵑亾鏄敤鏉ュ尯鍒嗘櫘閫氱被鍜屾墿灞曠被???
    wcex.hIconSm = NULL;                                                          //灝忓瀷鍥炬爣,NULL,緋葷粺鐭ラ亾濡備綍澶勭悊,褰卞搷涓嶄簡紼嬪簭鐨勬甯歌繍琛?/span>

    
if(!RegisterClassEx(&wcex))                                //鍑芥暟澶辮觸,榪斿洖0,鍚﹀垯榪斿洖涓涓猘tom,榪欎釜atom鏄敤鏉ユ爣璁扮被鐨?浣嗘槸鐢ㄧ殑涓嶅,鑳界敤綾誨悕鐨勫湴鏂?涔熻兘鐢ㄨ繖涓滆タ
    {
        
return 0;
    }


    g_hFile   
=   CreateFile(L"d:\\pe\\messagefile.txt",         //   file   to   open   
    GENERIC_WRITE,                     //   open   for   reading   
    FILE_SHARE_WRITE,               //   share   for   reading   
    NULL,                                     //   default   security   
    OPEN_ALWAYS,                   //   existing   file   only   
    FILE_ATTRIBUTE_NORMAL,   //   normal   file   
    NULL);   

    g_hFile1 
= CreateFile(L"messagefile1.txt",
        GENERIC_WRITE,
        FILE_SHARE_WRITE,
        NULL,
        OPEN_ALWAYS,
        FILE_ATTRIBUTE_NORMAL,
        NULL);

    
//涓嬮潰鐨勮繖涓嚱鏁板拰CreateWindow鏄悓涓涓?鍙槸define浜嗗嚑涓弬鏁拌屼互,鎵浠ョ幇鍦ㄤ嬌鐢ㄧ殑CreateWindow灝辨槸CreateWindowEx
    HWND hWnd = CreateWindowEx(0L,_T("FIRSTCLASS"),_T("name"),WS_OVERLAPPEDWINDOW ,CW_USEDEFAULT,CW_USEDEFAULT,640,480,NULL,NULL,hInstance,NULL);
    
if(!hWnd)
    
{
        
return 0;
    }

        
    ShowWindow(hWnd,nCmdShow  );
    

    MSG msg 
= {0};
    DWORD nbuffer;
    
while(GetMessage(&msg,NULL,0,0))
    
{
        TranslateMessage(
&msg);

        sMsg smsg 
= {0};
        smsg.time 
= msg.time;
        smsg.message 
= msg.message;
        WriteFile(  g_hFile1,   
&smsg,   sizeof(smsg),   &nbuffer,   NULL  );  
        
        DispatchMessage(
&msg);
    }


    CloseHandle(g_hFile); 
    CloseHandle(g_hFile1);

    
return (int)msg.wParam;


}



LRESULT CALLBACK WindowProc(HWND hWnd,UINT uMsg,WPARAM wParam,LPARAM lParam)
{
    DWORD nbuffer;
    WriteFile( g_hFile,   
&uMsg,   sizeof(uMsg),   &nbuffer,   NULL  );   



    PAINTSTRUCT ps;
    HDC hdc;

    
switch(uMsg)
    
{
    
case WM_PAINT:
        hdc 
= BeginPaint(hWnd,&ps);
        EndPaint(hWnd,
&ps);
        
break;
    
case WM_DESTROY:
        PostQuitMessage(
0);
        
break;
    
default:
        
return DefWindowProc(hWnd,uMsg,wParam,lParam);
    }

    
return 0;
}



]]>
国产V综合V亚洲欧美久久| 99久久成人国产精品免费| 国产精品狼人久久久久影院| 丰满少妇人妻久久久久久4| 久久中文字幕视频、最近更新| 久久亚洲AV无码精品色午夜| 国产亚洲精久久久久久无码| 亚洲精品综合久久| 996久久国产精品线观看| 亚洲七七久久精品中文国产| 国产人久久人人人人爽| 亚洲欧美国产日韩综合久久 | 国产女人aaa级久久久级| 中文字幕久久精品| 久久综合狠狠综合久久激情 | 久久久亚洲欧洲日产国码二区 | 伊人精品久久久久7777| 国产高潮国产高潮久久久| 一本色综合久久| 91精品国产91久久久久久蜜臀| 精品一二三区久久aaa片| 久久精品无码一区二区日韩AV| 日韩AV无码久久一区二区| 深夜久久AAAAA级毛片免费看| 久久精品国内一区二区三区| 亚洲中文字幕久久精品无码喷水| 久久精品视频91| 国产精品99久久久久久猫咪| 韩国三级大全久久网站| avtt天堂网久久精品| 日韩人妻无码一区二区三区久久 | 99久久精品国产麻豆| 久久国产精品成人影院| 亚洲AV无码久久精品色欲| 久久久久久伊人高潮影院| 一本色道久久综合狠狠躁| AV无码久久久久不卡蜜桃| 99精品国产综合久久久久五月天| 久久中文字幕人妻丝袜| 久久人人爽爽爽人久久久| 久久天天躁狠狠躁夜夜96流白浆 |