新的API MetaTrader 4可用 - 页 18

 

你好,贸易区。

我对使用你们的API很感兴趣,但是,我在尝试登录时得到了和以前的帖子一样的错误。

System.Runtime.InteropServices.SEHException was unhandled
Message="External component has thrown an exception."
Source="WindowsApplication1"
ErrorCode=-2147467259
StackTrace:
at WindowsApplication1.Form1.LogIn_MT4(Int32 login, String password, String server, String proxyserver, String proxytype, String proxylogin, String proxypassword)
at WindowsApplication1.Form1.Login() in C:\...\Form1.cs:line 211
at WindowsApplication1.Form1.ctor() in C:\...\Form1.cs:line 200
at WindowsApplication1.Program.Main() in C:\...\Program.cs:line 17
at System.AppDomain._nExecuteAssembly(Assembly, String[] args)
at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)
at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext,ContextCallback callback,Object state)
at System.Threading.ThreadHelper.ThreadStart()

我没有注意到前面询问的解决方案/解决办法,有没有人遇到这个问题并解决了?

使用的语言是C#,通过Visual Studio 2005,在windows vista上。

谢谢

ADP。

 

没有回应...... 撞击,撞击.....


在VS2008中也有同样的问题,但在VS2003中没有问题。

VS2005在启用vshost并以管理员身份运行时可以工作,否则不能工作,因此在调试时可以工作,但在部署时不能。

据我所知,权限设置是正确的。

谁能帮助解决这个问题,它真的让我很不爽。

ADP。

 
Arlekind:

嗨,TradeZone。

这个API是否支持并行管理多个账户?

有没有人试过用这个API在MT4上平行管理多个账户?

嗨,Arlekind!


是的,API支持一个以上的账户并行。


Tradezone的团队。

 
ADPowers:

你好,贸易区。

我对使用你们的API很感兴趣,但是,我在尝试登录时得到了和以前的帖子一样的错误。

System.Runtime.InteropServices.SEHException was unhandled
Message="External component has thrown an exception."
Source="WindowsApplication1"
ErrorCode=-2147467259
StackTrace:
at WindowsApplication1.Form1.LogIn_MT4(Int32 login, String password, String server, String proxyserver, String proxytype, String proxylogin, String proxypassword)
at WindowsApplication1.Form1.Login() in C:\...\Form1.cs:line 211
at WindowsApplication1.Form1.ctor() in C:\...\Form1.cs:line 200
at WindowsApplication1.Program.Main() in C:\...\Program.cs:line 17
at System.AppDomain._nExecuteAssembly(Assembly, String[] args)
at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)
at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext,ContextCallback callback,Object state)
at System.Threading.ThreadHelper.ThreadStart()

我没有注意到前面询问的解决方案/解决办法,有没有人遇到这个问题并解决了?

使用的语言是C#,通过Visual Studio 2005,在windows vista上。

谢谢

ADP。

HI ADPowers!


TZMT4API在<TZMT4API文件夹>下创建一些工作临时文件夹。如果安装文件夹在<Program Files>下,vista将不允许创建文件夹


例如,尝试在c:\TZMT4API中重新安装TZMT4API。

你必须得到一个有效的登录。


注意。

贸易区的团队。

 
TradeZone wrote>>

HI ADPowers!

TZMT4API在<TZMT4API文件夹>下创建一些工作临时文件夹。如果安装文件夹在<Program Files>下,vista将不允许创建文件夹。

例如,尝试在c:\TZMT4API中重新安装TZMT4API。

你必须得到一个有效的登录。

注意。

Tradezone的团队。

嗨,Tradezone。

'Youi必须得到一个有效的登录名。

是的,我知道这个事实,因此我询问的问题/性质,谢谢你的建议,但不幸的是,这似乎没有任何区别,见下文。



在安装的根目录下创建临时/工作文件夹是没有问题的,无论它是什么(我已经尝试了3个,包括c:/Program Files/Tradezone/TZMT4API作为默认安装路径建议,以及c:/TZMT4API和c:/TradeZone/TZMT4API),由以下screendump证明。

因此,为了消除在system32文件夹中的tzmt4api.dll文件的访问/安全问题,所以我试着将.dll从system32文件夹中移出,进入本地工作目录,即c:\Tradezone\并在代码中明确引用它,即使用[ DllImport ( @"c:\TradeZone\tzmt4api.dll"] 从VersionGet_MT4函数中获得了一个正确的结果(因此.dll被识别),但在试图登录时仍然抛出一个SEHException。

但正如前面提到的,在某些情况下可以获得句柄......这让人困惑。

当vshost.exe在vs2005中被启用时,作为成功登录的证据,请看下面(登录细节被遮住了),你可以看到,句柄的值是'1'(参考鼠标悬停框),这是有效的(如果无效,就会被分配为-1,而且不会抛出SEH异常)。


为了演示 vshost.exe 进程被禁用时的情况,这是输出结果......



澄清一下,当vshost.exe启用时,其他功能似乎工作正常,比如获取报价和账户细节,完美,这导致了一个可能的解决方向,即调试器主机做的是什么,使其能够工作,而正常的操作环境缺乏导致错误的抛出?但我没有主意了...

请帮助我,我真的很想让它工作起来。


请注意。

ADP。

 
ADPowers:

你好,贸易区。

你必须获得一个有效的登录。

是的,我知道这个事实,因此我询问的问题/性质,谢谢你的建议,但不幸的是,这似乎没有任何区别,见下文。



在安装的根目录下创建临时/工作文件夹是没有问题的,不管是哪个目录(我现在已经尝试了3个,包括c:/Program Files/Tradezone/TZMT4API作为默认安装路径建议,以及c:/TZMT4API和c:/TradeZone/TZMT4API),下面的截屏可以证明。

因此,为了消除在system32文件夹中的tzmt4api.dll文件的访问/安全问题,所以我试着将.dll从system32文件夹中移出,进入本地工作目录,即c:\Tradezone\并在代码中明确引用它,即使用[ DllImport ( @"c:\TradeZone\tzmt4api.dll"] 从VersionGet_MT4函数中获得了一个正确的结果(因此.dll被识别),但在试图登录时仍然抛出一个SEHException。

但正如前面提到的,在某些情况下可以获得句柄......这让人困惑。

当vshost.exe在vs2005中被启用时,作为成功登录的证据,请看下面(登录细节被遮住了),你可以看到,句柄的值是'1'(参考鼠标悬停框),这是有效的(如果无效,就会被分配为-1,而且不会抛出SEH异常)。


为了演示 vshost.exe 进程被禁用时的情况,这是输出结果......



澄清一下,当vshost.exe启用时,其他功能似乎工作正常,比如获取报价和账户细节,完美,这导致了一个可能的解决方向,即调试器主机做的是什么,使其能够工作,而正常的操作环境缺乏导致错误的抛出?但我没有主意了...

请帮助我,我真的很想让它工作起来。


请注意。

ADP。

你好!


你是使用vista64还是32?


如果你使用的是vista64,在项目的属性下,进入构建,强制altform目标为x86。

你的项目将被构建为32位,与TZMT4API相同。

64位的程序与32位的程序之间有一些问题。


请注意。

 
TradeZone wrote>>

你好!

你是用vista64还是32?

如果你使用的是vista64,在项目的属性下,进入构建,强制altform目标为x86。

你的项目将被建立在32位上,TZMT4API也是如此。

64位的程序与32位的程序之间有一些问题。

请注意。

我正在运行32位vista,见下文。

有其他建议吗?

ADP

 

你好,贸易区。
当我发布我的应用程序时,哪些文件应该包括在我的应用程序中? 以及哪些键在regedit中也应该包括?

谢谢。我期待着收到你的快速回复!在这封邮件之前我已经发了一封邮件.但是没有回复.

当我试图使用登录功能登录到mt4账户时,我收到INVALID_HANDLE_VALUE 。怎么了?

我在我的虚拟电脑上做了这些,它是运行VirtualBox的。

我没有在虚拟电脑上安装api。我的应用程序中包括这些文件。
lpk.dll
borlndmm.dll
secur32.dll
msvcrt.dll
usp10.dll
oleaut32.dll
rpcrt4.dll
advapi32.dll
ole32.dll
tzmt4api.dll
我的注册表已经正确地指向了tzmt4api.dll文件夹。

我还应该做什么?

提前感谢。

 

嗨!

我们发现一些问题,主要是安全问题(许可证模式)。由于这个原因,在解决这些问题之前,我们将停止销售API。

请注意。

 

致。TradeZone

当你解决问题时,你能不能告知我出售API的条件(通过电子邮件)?

顺便说一下。

如果这不是秘密,你在写这个软件时,是只看TCP协议还是反编译terminal.exe文件?据我所知,这个.exe文件是加密的,不能反编译。

你是否考虑编写软件将.ex4文件转换成.mq4?