Ò׽ؽØͼÈí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

jnativeµ÷ÓÃdelphiµÄDLLÎļþ

1.ÏÂÔØJNativeµÄ°ü
JNative-1.3.2ÏÂÓÐÈý¸öÎļþ£ºJNativeCpp.dll£¬libJNativeCpp.so£¬JNative.jar¡£
JNativeCpp.dll¿½µ½windows/system32Ŀ¼ÏÂ
libJNativeCpp.soΪLinuxÖÐʹÓõÄÎļþ
JNative.jarÀ©Õ¹°ü¿½µ½%JAVA_HOME%\jre\lib\extÏ»òÕßµ¼Èëµ½¹¤³ÌÖÐ
2.JnativeÖÐʹÓõ½µÄһЩÀàºÍ·½·¨
org
.xvolks
.jnative
.Jnative
:  ×°ÔØdllÎļþ£¬¶¨Î»º¯Êý  Èç:Jnative native=new Jnative("dllName");
JNative
(),setParameter(),setRetVal(),getRetVal()
etc.
org
.xvolks
.jnative
.pointers
.Pointer: Ìæ´ú±¾µØº¯ÊýÖеĵÄÖ¸Õ룬ÐèÒªÏÈÉêÇëÒ»¿éÄÚ´æ¿Õ¼ä£¬²ÅÄÜ´´½¨,Ò»°ãʹÓÃMemoryBlockFactory
ÀûÓù¤³§Ä£Ê½½øÐд´½¨.
Pointer()£¬dispose()
org
.xvolks
.jnative
.pointers
.memory
.MemoryBlockFactory : ÉêÇëÒ»¿éÄÚ´æ¿Õ¼ä
createMemoryBlock()
org
.xvolks
.jnative
.exceptions.NativeException
: Å׳ö×°ÔØ£¬¶¨Î»µÈ·½ÃæµÄÒì³£
org
.xvolks
.jnative
.Type
: Áоٺ͹ÜÀíJnative
ÐèÒªµÄ²»Í¬µÄÊý¾ÝÀà,Ò»°ãÐèÒª´«ÖµµÄʱºòÖ¸¶¨Ëù´«ÖµµÄÀàÐͺͺ¯ÊýµÄ·µ»ØÖµ






3.ʹÓ÷½·¨
3.1.
¼ÓÔØdllÎļþ
JNative¿ÉʹÓÃÁ½ÖÖ·½Ê½¼ÓÔØdllÎļþ£º
ʹÓÃSystem.loadLibrary
¼ÓÔØ
ʹÓô˷½·¨¿É¼ÓÔØϵͳĿ¼ÖеÄdllÎļþ¡£¿ÉÒÔÏÈ°ÑdllÎļþ¸´ÖƵ½system32
Ŀ¼Ï£¬Ê¹ÓÃÎļþǰ׺Ãû×÷Ϊ²ÎÊýÀ´¼ÓÔØdllÎļþ¡£
ʹÓÃSystem.load
¼ÓÔØ
´Ë·½·¨²ÎÊýΪdllÎļþȫ·¾¶Ãû¡£
3.2.
µ÷Óú¯Êý
1¡¢Ê×ÏÈ´´½¨JNative¶ÔÏó£º
JNative jnative = new
JNative(dllÎļþÃû, º¯ÊýÃû);
2¡¢ÉèÖ÷µ»ØÖµÀàÐÍ£º
jnative.setRetVal(Type.INT);
3¡¢ÉèÖòÎÊý
jnative.setParameter(0,
Type.STRING, …); //ÉèÖõÚÒ»¸ö²ÎÊýΪ×Ö·û´®
jnative.setParameter(1,
Type.INT, String.valueof(…));       //ÉèÖõڶþ¸ö²ÎÊýΪÕûÊý
4¡¢Ö´ÐÐ
n.invoke();
5¡¢»ñÈ¡·µ»ØÖµ
Integer.parseInt(jnative.getRetVal());
4.Ò»¸ö¼òµ¥µÄÀý×Ó£º
import org.xvolks.jnative.JNative;
import org.xvolks.jnative.Type;
import org.xvolks.jnative.exceptions.NativeException;
public class JNativeTest {
    public static final int messageBox(int parentHandle, String
message,
          &nb


Ïà¹ØÎĵµ£º

DelphiÖпØÖÆVBA ºê

ÈçºÎÔÚDelphiÀïÃæÀûÓÃWordµÄVBA´úÂë½øÐÐһЩ×ܽᡣ
1¡¢  Éú³ÉVBA´úÂë¡£Word±¾Éí¾ßÓкÜÇ¿µÄ¿ÉÀ©Õ¹ÐÔ£¬ÓÈÆäÊÇÖ§³ÖÓû§×Ô¶¨Ò幦ÄÜ£¬ÆäʵÏÖ
µÄÖ÷Òª·½Ê½¾ÍÊÇͨ¹ýVBA´úÂëÀ´ÊµÏֵġ£ÔÚ“¹¤¾ß->ºê->Visual Basic±à¼­Æ÷”ÀïÃæ¾Í¿ÉÒÔ¿´
µ½¾ßÌåµÄºê´úÂ룬¿ÉÒÔÖ±½Ó½øÐб༭¡£¶øÇÒ»¹¿ÉÒÔʹÓüÖƺêµÄ¹¦ÄÜ×Ô¶¯ ......

ÊÇvcµÄbug»¹ÊÇdelphiµÄbug?

×î½üÒ»Õó×Ó£¬×ÜÊDZ»Ò»¸öĪÃûÆäÃîµÄbugÀ§ÈÅ¡£×Ô¼ºÐ´µÄocx£¨.net2005£©ÔÚdelphi7Öе÷Óã¬Ã÷Ã÷ûÓÐÊÍ·ÅÖ÷¶¯ÊͷŹýÄڴ棬ȴ±»Á¬ÐøÊÍ·ÅÁËÁ½´Î¡£½á¹û£¬³ÌÐòÍ˳öʱ¾ÍdownµôÁË¡£µ±È»£¬ÕâÊÇÔÚdebugģʽϲŻá³öÏÖ£¬µ«ÊÇexeÅܵÄʱºò»áĪÃûÆæÃîµÄdownµô£¬¶øÇÒ³ö´íÍùÍùÖ¸Ïòocx£¬ÎÒÏëÒ»¶¨ºÍocxµÄµ÷ÓÃÓйء£
ÉÏÍøÕÒÁËpurify£¬boundscheck ......

delphi_·Ö¸ô×Ö·û´®_¶à¼ä¸ô×Ö·û

procedure mc_SplitStr(sourStr:String;splitChar:String;desLst:TStringList);
var
  tmpStr:String;
  sValue:String;
  iStart,iPos:Integer;
begin
  try
    desLst.Clear;             //ºÜÖØÒª£¬·ñÔò£¬»áÒ» ......

delphi Èý·½¿Ø¼þ

VCLÖеÄShapeÊǸöºÜ²»´íµÄ¿Ø¼þ£¬¿ÉÒÔÑ¡Ôñ¼¸ÖÖͼÐΣ¬ÒÔÂú×ãÎÒÃǵÄÐèÇ󣬵«ÓÐʱºò¾ÍÊǾõµÃËüµÄ¿ÉѡͼÐÎÉÙÁËÒ»µã£¬±ÈÈçÎÒÃÇÏëÒªÒ»¸öÈý½ÇÐΣ¬ËüȴûÓС£ÓÚÊǾÍÏëµ½À´À©Õ¹Ò»ÏÂÕâ¸ö¿Ø¼þ£¬ÃûΪShapeEx¡£ÆäʵÀ©Õ¹µÄ¹¦Äܲ»¶à£¬Ö»ÊÇÔö¼ÓÁËһЩͼÐΡ£¶øÀàÒ²²¢²»ÊǼ̳Ð×ÔTShape£¬¶øÊǼ̳Ð×ÔTGraphicControl£¬ÕâÑù¿ÉÒÔÈÃÎÒÃdz¹µ×¿´¿´Í¼ÐÎ ......

(ÕÐƸ£©Delphi³ÌÐòÔ±ËÄÃû

ÕÐƸÈËÊý£º 4ÈË
ѧÀúÒªÇó£º ²»ÏÞ
¹¤×÷ÄêÏÞ£º ²»ÏÞ
н×Ê·¶Î§£º ÃæÒé
¹¤×÷µØµã£º ±±¾©Í¨ÖݾſÃÊ÷
Delphi³ÌÐòÔ±ËÄÃûְλҪÇó
񻂗:
1. ÊìÁ·Ê¹ÓÃDELPHI(C,C++, C#µÈ)½øÐпª·¢£»
2. ¾ßÓÐÁ¼ºÃµÄ³ÌÐò±àдϰ¹ß£»
3. ÔúʵµÄ»ù±¾¹¦£¬½á¹¹ÇåÎú¡¢ºÏÀí£»
4. Á¼ºÃµÄÖ´ÐÐÄÜÁ¦£¬½ÏºÃµÄÍê³ÉÔ¤¶¨ÈÎÎñ£»
5. ÉϽøÐÄÇ¿£¬ÄܳԿ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ