Clarion:可以使用C#程序集吗?

时间:2009-01-27 10:32:13

标签: c# dll clarion

是否可以使用Clarion的C#组件?如果不。是否可以运行用C#编写的简单控制台应用程序并将其输出读回Clarion?在这两种情况下,你会怎么做?在汇编的情况下,你是否需要为它做一些特别的事情让Clarion能够访问它?在这两种情况下,你将如何在Clarion中做到这一点?

原因是我们有两个用C#编写的方法,它们由用C#编写的应用程序使用。但我们还需要在Clarion应用程序中使用相同的方法。我们真的不想为Clarion再次编写方法,因为它们有点复杂......

4 个答案:

答案 0 :(得分:3)

除非您需要在您的号角程序中显示.Net UserControl,否则我建议使用此处描述的技术:

Robert Giesecke - C# Project Template for Unmanaged Exports

在Clarion端,您只需链接并使用.Net程序集,就像处理任何其他非托管DLL一样。我发现在运行时使用LoadLibrary API加载DLL也很方便。

答案 1 :(得分:1)

Clarion程序不会轻易或很好地调用C#DLL,但反过来不一定正确。

在我的一个项目中,我决定使用TCP / IP将Clarion程序和C#程序集之间的耦合最小化。

我们的想法是让Clarion程序连接到迷你服务器的监听端口,发送请求并接收回复,就像使用参数和结果调用函数一样。

在C#程序集中添加一个类可以很容易地充当TCP / IP服务器。在Clarion方面,有一些提供TCP / IP功能的好模板。我们多年来一直使用CapeSoft的NetTalk模板,它几乎是坚如磐石的。

根据您的要求的紧急程度,您可以考虑这条路线。

仪射线。

答案 2 :(得分:0)

什么是Clarion?这是一个非托管应用程序吗?如果是,那么你要对你的装配做的“特别的东西”称为Com Interop:http://msdn.microsoft.com/en-us/magazine/cc163494.aspx

答案 3 :(得分:0)

Clarion是一种编程语言。我自己也不知道。我工作的旧系统的一部分是用它来完成的,我们正在努力将它移植到C#.NET。所以有一段时间他们必须并肩生活。我们找到了一个解决方案,因此不再需要它。但感谢信息:)也许我们将需要它在未来的道路上。虽然我希望不是......呵呵。

对于那些好奇的人:en.wikipedia.org/wiki/Clarion_(programming_language)