为什么第一个MessageBox()
有效而第二个无效?
我不知道问题出在哪里。
MQL5
可以访问dll
文件吗?
我需要调用C#
读取的函数JSON
。
中没有出现错误MetaEditor。
C# .dll
文件:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Runtime.InteropServices;
namespace TestMe
{
class Test
{
// [DllExport("Add", CallingConvention = CallingConvention.StdCall)]
public static int Add(int left, int right)
{
return left + right;
}
public static int Sub(int left, int right)
{
return left - right;
}
public static double AddDouble(double left, double right)
{
return left + right;
}
public static float AddFloat(float left, float right)
{
return left + right;
}
}
}
这是一个MQL5
代码:
#import "TestMe.dll"
int Add( int left, int right );
int Sub( int left, int right );
float AddFloat( float left, float right );
double AddDouble( double left, double right );
#import
#property strict // MQL-syntax-mode-modifier == "strict"
int OnInit()
{ int k = 0;
MessageBox( k ); // this call works
k = Add( 1, 666 );
MessageBox( k ); // Doesn't work
return( INIT_SUCCEEDED );
}