Now not so many developers remember how to write a simple DLL, and what are special features of different system binding. Using several examples, I will try to show the entire process of the simple DLL's creation in 10 minutes, as well as to discuss some technical details of our binding implementation. I will show the step-by-step process of DLL creation in Visual Studio with examples of exchanging different types of variables (numbers, arrays, strings, etc.). Besides I will explain how to protect your client terminal from crashes in custom DLLs.
我在策略测试仪 中也遇到了崩溃。
有人找到解决办法了吗?
亚历山大,干得漂亮。我以前从未用 C# 编写过代码,我一直在研究如何在不使用 DDE 服务器的情况下让 MT5 报价在 Excel 中流动。
通过调整您的 MT5 32 位代码,我终于成功了。下一步是 x64。
SM
TradePlatform.NET
我目前正试图为我的 c#dll 植入我自己的 c++ 封装程序,以实现 mql5 的 互操作。在向我的 c++ 库中添加 c# dll 引用时,我遇到了一个问题。能否请您解释一下下面这句话"......将 CLR 支持、System.dll、QExport.dll、Qexport.Service.dll 添加到构建引用中"。我使用 regasm 工具注册了我的 dll,将其添加到 gac 中,并获得了 .tlb 类型定义文件。我的问题是,在你提供的源代码中找不到任何 #import 或 #include 语句。你的项目似乎以某种神秘的方式引用了你的 dll 库。谁能解释一下在 c++ 库中添加 .NET dll 引用的正确方法?尽管这不是一个纯粹的 mql5 问题,但它与这篇文章直接相关。我研究这个问题已经有一段时间了,但仍然无法理解一个 c++ 库如何能在其 "外部依赖关系 "中包含 .NET dll,而不使用任何 #import 语句。这是我第一次接触 c++,到目前为止还不是很愉快,我甚至想把 .dll 转换为 .lib 并添加一个引用,但在我做任何事情之前,我决定向 COM 专家寻求建议。我运行的是 Windows 8 Ultimate x64,使用 VS2012 Ultimate 编译 c# dll。请帮助我这个新手。
非常有趣......谢谢......不过,也许如今有更简单的方法*?
这篇文章很好地向那些不熟悉 WCF 技术的人介绍了 WCF。顺便说一下,我在彼得-敖德萨的距离上通过互联网检查了 WCF 的性能,在 1kB 数据包的情况下,我得到了大约每秒 14000 次双边交易的速度。我个人喜欢这种面向对象的技术,即传输的不是字节流(尽管你可以这么做),而是类的实例,即在接收端不需要解码这个字节流。
关于引用的问题--使用内存映射更容易。我们在.NET 应用程序中使用互斥启动一个单独的任务,MQL4 将数据加载到内存中并重置互斥,然后应用程序读取数据。这样做更简单、更快捷,而且不需要 DLL。只需在 MQL4 中添加系统 DLL,即可支持映射和互斥,最近有一篇文章介绍了这一主题。
我设法让它在 32 位 MT5 上运行,并在为 x64 重新配置后,设法让它在 64 位 MT5 上运行....,但是,当我尝试在策略测试器中运行 EA 时,它们都发生了严重的崩溃。
我想用它将一些价格和指标数据导出到数据库表中,以便用外部软件进行一些分析.....,您知道是什么原因导致了这种崩溃吗? 这是我迄今为止最接近可行的解决方案。
乔
你好,乔、
有什么特殊技巧可以让它在 x64 上运行吗?我刚编译了 x64 版,但启动时 dll 会崩溃并出现奇怪的错误。