Çódelphi´úÂë×¢ÈëµÄʵÏÖ·½·¨
ÎÒÇ°Ãæ·¢ÁËÒ»¸öÌù×Ó¡£¿ÉÄÜÇëµÃ²»ÊÇÌ«Çå³þ¡£
±ÈÈç·´»ã±à³ÌÐòÀïÃæÓÐÕâÑùÒ»¶Î´úÂë¡£
400001 push ecx
400002 call xxxxxxxx
40007 mov [esi+64],eax
call xxxxxxxxxx ÕâÀïÃæÊÇÒ»¸ö¼ÇË㺯Êý¡£×îºóµÃ³öeaxµÄÖµ¡£
ÎÒÔÚCEÀïÃæ£¬¿ÉÒÔÓÃCEµÄ´úÂë×¢Èë°Ñmov [esi+64] ¸Ä³Éjmp 0700001
È»ºóÔÙ 0700001 call xxxxxx
mov [ÎÒ·ÖÅäµÄµØÖ·],eax
jmp 400007
ÎÒÏÖÔÚÓм¸¸öÎÊÌâÏëÇë½ÌÏ¡£
Ê×ÏÈ£¬ÈçºÎÓø߼¶ÓïÑÔÀ´ÊµÏÖCEµÄ´úÂë×¢È빦ÄÜ£¿
ÎÒÏÖÔڵķ½·¨ÊÇ¡£ÔÚCEÀïÃæ¸ÄºÃ¡£°Ñ×Ö½Ú¼ÇÏÂÀ´¡£È»ºóÓÃDд´úÂë¡£Ò»¸ö×Ö½ÚÒ»¸ö×ֽڵĸġ£ÎÒÏëÎÒÕâ¸ö·½·¨¿Ï¶¨ÊDz»Ðеġ£ Âé·³¡£¶øÇÒÎÞ·¨È·¶¨·ÖÅäµÄµØÖ·¡£
Æä´Î£¬Ìý±ðÈË˵»¹¿ÉÒÔ×¢Èë×Ô¼ºµÄº¯Êý¡£
±ÈÈç procedure newfun;
begin
end;
ÓÃ@ È¡µØÖ·¡£
ÄÇÊDz»ÊÇÕâÑùÀ´Ð´
begin
pbyte($0700001)^:=$e9;
pint($0700002)^:=integer(@newfun);
Ï£Íû¸÷λÓпÕÄÜÖ¸µãһϡ£»òÕ߸øÐ©Ïà¹Ø×ÊÁÏÈÃÎÒ×Ô¼ºÈ¥¿´¡£Ð»Ð»¸÷λ¡£
ÄãÈ¥ËÑËÑMeAOP
ÎÒÓÐÒ»·Ý°ÑDLL´úÂë×¢È뵽Ŀ±ê½ø³ÌµÄ´úÂë
¿ÉÒÔ·¢ÓʼþÏòÎÒË÷È¡
showlee_001@163.com
²»ºÃÒâ˼¡£¿ÉÄÜÊ
Ïà¹ØÎÊ´ð£º
Çë½Ì¸÷·¸ßÊÖ¡£ÎäÁÖǰ±²¡£ÎÒ½«B.EXE×ö³É×ÊÔ´Îļþ£¬È»ºó¼Óµ½123.dllÖС£ÓÃA.EXEÀ´µ÷ÓÃ123.dllÖеÄB.EXE
Çë¸÷λǰ±²°ïæָ½ÌÏ¡£A.exeÈçºÎÀ´µ÷ÓÃdllÖеÄexe£¿´úÂëÓÖ¸ÃÈçºÎд£¿
ÎÞÈ˻شð£¿
×ö³É×ÊÔ´Î ......
ÏëÇëÎʸ÷λ£ºÅ̵ãά»¤ÀïÃæ£ºÅÌÓ¯¿÷ÊýÁ¿=¿â´æÊýÁ¿+Èë¿âÊýÁ¿-³ö¿âÊýÁ¿£¬ÕâÑù×öÊǶԵÄÂð£¬
Â¥ÉÏÕý½â,ÕýÊýÅÌÓ¯ ¸ºÊýÅÌ¿÷
һ¥ÕýÈ·£¡
лл¸÷λÀ²
¾ÍÊÇ£ºÊDz»ÊÇ Êµ¼Ê¿â´æÀïµÄ¿â´æÁ¿ ÓëÄãÊÖ¶¯Êä½øÈ¥µÄÊýÁ¿Ö®¼äµ ......
ÎÒÔÚÍøÉÏÕÒÁ˸ö¹ØÓÚIEBHOµÄ´úÂ룬Ȼºó°´ÕÕÄĸöÉèÖÃÁË£¬ºóÀ´ÔËÐеÄʱºò³öÏÖ
[´íÎó] Unit1.pas(15): Undeclared identifier: 'GetTypeInfoCount'
[´íÎó] Unit1.pas(15): Undeclared identifier: 'GetTypeInfo ......
IF THEN ELSEÖжà¸öÌõ¼þÔõôд£¬È磺×Ö·û´®S1£¬S2£¬S3£¬S4¾ùÒª²»Îª¿Õ¡£
ÔõôÑù°ÑËüдµ½IFÖÐÈ¥£¿
Çë¸÷λ°ï°ï棬лл£¡
if (S1<>'') and (S2<>'') and (S3<>'') and (S4<>'') then
begin ......
º¯ÊýÔÐÍ£º
function ReadIC_GRBH(port: SmallInt; baud: LongInt; out_data: PChar): LongInt;
¶ÔÓ¦µÄjavaÊÇʲô£¿ÖصãÔÚout_data: PChar
Char
ÒýÓÃ
Char
´íÁË£¬Ó¦¸ÃÊÇString
ÓÃJNativeÈ¥µ÷dllµÄʱºòout ......