在Delphi中使用外部函数?(20分)

  • 主题发起人 主题发起人 xiajun
  • 开始时间 开始时间
X

xiajun

Unregistered / Unconfirmed
GUEST, unregistred user!
各位高手,我是一名刚使用Delphi的新手,我购买了一套加密狗,随狗提供<br>了一些相应的函数,其中一个例子程序中定义外部函数时使用了external。这一点类似于C语言,但C语言中可定义连接某一文件,但我不知道Delphi中如何告诉系统在哪儿去寻找这些函数?
 
要把dll的路径写上:<br>function SomeFunction(S: string): string; external 'somedll.dll' name 'somefunctionA';<br>
 
first in running directory<br>then in windows and windows/system directory<br><br>calling method is as following:<br>function Myfunction(): integer;StdCall;External 'MyDLL.dll';<br>then you can use myfunction as "ShowMessage"<br>
 
两种可能:<br>1)从OBJ文件中引用的,此时一般在implementation部分会有<br>{$L somefile.obj}<br>然后将其中的函数声明成external就可用了,格式如下:<br>function somefunc : integer; external;<br>看你的问题,多数属于这一种<br><br>2)是动态库中的函数,此时函数所在的DLL名直接写在函数声明后面;<br>function somefunc : integer; external 'somedll.dll';<br><br>更为具体的可见DELPHI的HELP中关于external这个关键字的帮助<br>
 
还要加个far就更好了!<br>function DllFunction(): integer;StdCall;Far;External 'MyDLL.dll';<br>
 
多人接受答案了。
 
后退
顶部