|
|
导航: |
论坛 -> DELPHI技术
斑竹:liumazi,sephil |
|
作者: |
|
2019/6/12 15:56:41 |
标题: |
求搬运 .Net Runtime Library for Delphi |
浏览:2302 |
|
加入我的收藏 |
楼主: |
找了很久,找不到,以前delphi6论坛上有很多控件发布的,后来一下子就没有了,苦死我了, board4all又不开放注册,求搬运一下,十万个thx
搬运连接地址
----------------------------------------------
只会简单使用,并未精通深入 |
作者: |
|
2019/6/12 16:01:39 |
1楼: |
要调用.net功能? 推荐用crosstalk 或者 jvcl 比.Net Runtime Library for Delphi强
----------------------------------------------
健康快乐每一天
|
作者: |
|
2019/6/12 16:08:34 |
2楼: |
@sinagirl是的,需要调用C#写的DLL,你说的crosstalk在哪里有的下载?jvcl不应该是组件库么,不用在这个上面的吧
----------------------------------------------
只会简单使用,并未精通深入
|
作者: |
|
2019/6/12 22:19:22 |
3楼: |
https://mega.nz/#!xYE23SiK!M1G1fCn9SEvUcyl96kKdVfockNJ1_u2QqzL3q51rkBA
----------------------------------------------
-
|
作者: |
|
2019/6/12 22:25:37 |
4楼: |
这个是哪个控件?竟然连不上。
此帖子包含附件:
大小:35.5K |
----------------------------------------------
只会简单使用,并未精通深入
|
作者: |
lsuper (lsuper) |
★☆☆☆☆ |
-
|
盒子活跃会员 |
|
2019/6/12 22:33:45 |
4楼: |
刚淌完坑,.Net Runtime Library、Crosstalk、Jvcl ClrHost 等都搞过,都不推荐;个人结论: 1、功能简单的话直接 .Net + DllExport 导出普通函数 Delphi 按照普通 Dll 方式调用;推荐 vs2015 + DllExport.1.6.2 封装 2、功能复杂,如涉及对象、回调等,建议 .Net 封装成 COM 生成 TLB 然后 Delphi Import 使用,如果嫌弃 COM 需要注册不想 regasm、想绿色,网上搜索 Registration-Free COM with .NET 照做,Delphi TLB 代码不需要任何修改!
----------------------------------------------
-
|
作者: |
|
2019/6/12 23:59:05 |
5楼: |
非常感谢楼上两位的回复, @lsuper 1、DllExport.1.6.2在哪里有的下载,有没有使用范例? 2、这个是不是C#写DLL类库的时候,勾选上“使程序集COM可见”,然后生成DLL,使用TlbExp命令生成对应的TLB文件, 接着打开Delphi,选择“Project”--“import type library”找到刚才的tlb,点击 CreateUnit,向delphi中引入一个com接口。 但是我使用这个方法,发现生成的xxx_TLB.pas文件里面并没有对应的方法接口的定义, 相关帖子:https://www.cnblogs.com/bayzhang/p/5162757.html 3、Registration-Free COM with .NET找不到,是否能提供一下
----------------------------------------------
只会简单使用,并未精通深入
|
作者: |
|
2019/6/13 7:46:49 |
6楼: |
你不看自己的旧贴啊,不都说了,要tlb导入,然后有代码提示,必须charp要做改动,实际上既然createoleobject方式能用,也没必要非折腾tlb导入,关注实现不要太关注形式
----------------------------------------------
-
|
作者: |
|
2019/6/13 8:00:27 |
7楼: |
实际上还有一招,就是看C#的DLL是否能被反编译,如果能被反编译,反编译后按标准的COM输出方式重新把方法、事件都重新加上正确的attribute属性标签,然后重新编译成DLL,自然就能满足TLB导入并能自动提示方法的需求了。
----------------------------------------------
-
|
作者: |
glwang (glwang) |
★☆☆☆☆ |
-
|
盒子活跃会员 |
|
2019/6/13 11:25:57 |
8楼: |
我是直接用.NET Reflector反编译了C#的DLL,然后参考C#代码用Delphi重写了一遍,当然我的Dll比较简单。
----------------------------------------------
|
作者: |
lsuper (lsuper) |
★☆☆☆☆ |
-
|
盒子活跃会员 |
|
2019/6/13 15:30:31 |
9楼: |
lz 直接 vs2015+ nuget 搜索 dllexport,属性标注一下需要导出的函数,此时会编译不过,然后 bat 处理工程注入依赖然后编译即可,参考他主页 https://github.com/3F/DllExport
----------------------------------------------
-
|
|