在MT4中调用自建的dll,为何没有控制台出现? 新评论 Saji 2016.09.04 23:31 各位前辈:小弟为了尝试在MQL4环境中测试第三方dll的调用,编写了以下dll#include <stdio.h> #include <stdlib.h> #include <string> #include <string.h> #include <time.h> #include <iostream> using namespace std; extern "C" __declspec(dllexport) void HelloWorld(); void HelloWorld() { cout<<"Hello,World!"<<endl; getchar(); //---- FILE *fp = NULL; fp = fopen("d:\\test.txt","w"); return; } 以上是个非常简单的dll,执行如下2个动作:1、在控制台输出hello,world!,然后等待用户输入;2、在d盘生成一个txt的空文本;然后,我在MT4终端生成了一个调用该dll的测试脚本,如下:#property copyright "Saji.Ren" #property link "GoldenHeart Investment" //---------- #import "helloworldDLL.dll" void HelloWorld(); #import //+------------------------------------------------------------------+ //| script program start function | //+------------------------------------------------------------------+ int start() { HelloWorld(); return(0); } //+------------------------------------------------------------------+我们得到了很有意思的结果:1、整个过程中没有控制台界面的出现;也没有产生任何报错信息;2、但是在d盘上生成了test.txt,说明该dll被执行了;3、我们在退出MT4终端后,立刻查看了终端的log文件,当中记录脚本的加载成功;我的结论是:该helloworldDLL.dll被成功调用并执行,但是出于某种原因,控制台界面无法跳出。想请教各位,为何没有控制台界面?如何才能让它出来?非常感谢,盼回复! 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
各位前辈:
小弟为了尝试在MQL4环境中测试第三方dll的调用,编写了以下dll
以上是个非常简单的dll,执行如下2个动作:
1、在控制台输出hello,world!,然后等待用户输入;
2、在d盘生成一个txt的空文本;
然后,我在MT4终端生成了一个调用该dll的测试脚本,如下:
我们得到了很有意思的结果:
1、整个过程中没有控制台界面的出现;也没有产生任何报错信息;
2、但是在d盘上生成了test.txt,说明该dll被执行了;
3、我们在退出MT4终端后,立刻查看了终端的log文件,当中记录脚本的加载成功;
我的结论是:该helloworldDLL.dll被成功调用并执行,但是出于某种原因,控制台界面无法跳出。
想请教各位,为何没有控制台界面?如何才能让它出来?
非常感谢,盼回复!