Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö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±à¼­Æ÷”ÀïÃæ¾Í¿ÉÒÔ¿´
µ½¾ßÌåµÄºê´úÂ룬¿ÉÒÔÖ±½Ó½øÐб༭¡£¶øÇÒ»¹¿ÉÒÔʹÓÃÂ¼ÖÆºêµÄ¹¦ÄÜ×Ô¶¯ ......

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

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

delphiÈçºÎ設實現ÈçϽçÃæ

這個½çÃæÊÇÓÃPB×öµÄ£¬delphiÈçºÎ設實現ÄØ£¬ÏëÓÃdbControlGrid來實現(ºÃÏñÒ²×ö²»µ½)£¬
問題ÊÇÈçºÎ實現²»Í¬Éú產類別顯ʾ³ö來µÄ·½Ê½²»Ò»樣
......

¹ØÓÚDelphiÖжþάÊý×éµÄÉùÃ÷ºÍ´óСµ÷Õû

ÕâÊÇÒ»¸öʵÀý£º
procedure TMainForm.Button1Click(Sender: TObject);
var
  arr:array of array of string;
begin
  setlength(arr,2,3);
  arr[1,2]:='this is a test';
  setlength(arr,0,0);
  setlength(arr,4,5);
  showmessage(arr[1,2]);
end;
ÉùÃ÷Ò»¸ö¶þάÊý×éµÄ·½·¨ÊÇÓ ......

Delphi С̸֮TList ƪ

×î½ü¿ª·¢³ÌÐòÐèҪʹÓÃTList¹¦ÄÜ£¬×ªÔØ´ËÎÄÕ£¬ÒÔ×÷²Î¿¼¡£
¿´ÁËÕâÀï±êÌ⣬´ó¼Ò¿ÉÄÜÒÔΪÎÒ»á̸TListBox¿Ø¼þ£¬ÄǾʹíÁË¡£ÎÒҪ̸µÄÊÇDelphiÌṩ¸øÎÒÃǵľßÓÐÁбíÐÔÖʵÄÀࣺTstringList¡¢TListºÍTObjectList¡£TstringListÓÃÀ´´æ·Å×Ö·û´®£¬TList´æ·ÅÖ¸Õ룬¶øTObjectListÔò´æ·Å¶ÔÏó(Object)¡£
ÔÚÎÒÃÇʹÓÃDelphi µÄ¹ý³ÌÖУ¬Óкܶà ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ