delphi 调用.net的dll问题,急

huaya1127 2009-02-27 09:31:55
我有要调用个dll,叫path.dll
在vb下面可以调用方法
Dim client As dao.test
client = New dao.test
Dim returninfo As String

returninfo = client.playdll("2048")
Label1.Text = returninfo

可以正常返回,
不知道delphi中该怎么调用,以前直接调用一个dll中的函数是很简单的,直接external就可以了
也看了网上 http://tech.ddvip.com/2008-11/122759992194963.html的帖子,但是最后gacutil -i path.dll的时候出错了
Failure adding assembly to the cache: Attempt to install an assembly without a s
trong name
还忘高手指教,我用的是delphi 7.0
...全文
172 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
loskill 2009-03-06
  • 打赏
  • 举报
回复
delphi是调不了托管代码的
huaya1127 2009-03-05
  • 打赏
  • 举报
回复
会不会是dll有问题哦?
huaya1127 2009-03-05
  • 打赏
  • 举报
回复
我这里提示出错,could not load type library:加载类型库dll时出错
lingyin55 2009-03-01
  • 打赏
  • 举报
回复
在Project-->import type library-->Add-->选择你这个path.dll -->Create Unit
这样就在你的工程里增加了一个.tlb单元,然后Use这个单元。
接下来就是调用接口了。
bdmh 2009-03-01
  • 打赏
  • 举报
回复
widestring 改为 Pwidechar试试
或者
uses
ShareMem
xjq2003 2009-02-28
  • 打赏
  • 举报
回复
先加载DLL声明函数,再调用
starluck 2009-02-28
  • 打赏
  • 举报
回复
[Quote=引用楼主 huaya1127 的帖子:]
我有要调用个dll,叫path.dll
在vb下面可以调用方法
Dim client As dao.test
client = New dao.test
Dim returninfo As String

returninfo = client.playdll("2048")
Label1.Text = returninfo

可以正常返回,
不知道delphi中该怎么调用,以前直接调用一个dll中的函数是很简单的,直接external就可以了
也看了网上 http://tech.ddvip.com/2008-11/122759992194963…
[/Quote]

導出函數是什麼?? 導出函數聲明DLL有說明嗎?
huaya1127 2009-02-28
  • 打赏
  • 举报
回复
一般dll调用我以前掉过,不过这个dll好像是.net下的
函数是 dao.test 类下的playdll
如果直接写 function playdll(param:widestring):widestring;
是不能加载playdll的
DelphiJavaDominoVB 2009-02-28
  • 打赏
  • 举报
回复
得把path.dll文件放到DELPHI的工程目录下面
然后你的语法是VB的得转化成DELPHI的

5,386

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧