开发人员!你甚至会测试你所创造的东西吗? - 页 15

 

亲爱的开发者们!你真的测试过你发布的东西吗?

我在我的电脑上安装了Windows 8.1 64位--许可--。然后我遇到了一些问题。首先,我把Metatrader 4安装在自动运行的C:\Program Files (x86)中。当试图写入文件时,问题开始了。事实证明,这个Windows系统的安全性很高,请原谅我的语言,低劣的安全性,我是唯一的用户,也是电脑的管理员,在我点击 "作为管理员 "之前,不能在系统目录中做任何事情。看完论坛后,我决定不把Metatrader 4重新安装到Program Files (x86),而是安装到我的C盘上另一个专门创建的文件夹,预装MT4。但这并不奏效。卸载者说,你没有权利这样做。我真的忍不住了,尽力去卸载。我做了我能做的一切。作为管理员,并允许安全部的每个人做任何事情。我甚至重新安装了Windows。 总而言之,我花了将近2天时间。后来我无意中在MT英文论坛上发现一条小消息,说必须检查Win XP SP3的兼容模式,并打上勾--以管理员身份执行操作。然后只以管理员身份卸载了终端。我稍微松了一口气。

然后我决定安装Metatrader 5。我的安装程序没有问我是否要安装64位版本,而是强行安装了64位版本的MT5,我知道把它安装到系统目录是很危险的,我把它安装在C盘专门创建的文件夹里。我试着和它一起工作。经过一些步骤,如创建指标、写文件和尝试连接DLL,我发现安装目录中缺少文件和库。但无论是DLL文件,还是从Code Base下载的例子,都没有被创建或被调用进行编译。我花了很多时间和神经去寻找原因。然后我就把TerminalPath注释掉了--它都消失到哪里去了?结果是到了C:\Users\...\AppData文件夹。我试图找到它--没有运气。它根本没有被列出。然后不知怎的,我意识到它被隐藏了。我在网上找到了如何让隐藏的文件夹显示出来。是的,所有需要的文件夹和文件都出现在C:\Users\...\AppData\Roaming\MetaQuotes\Terminal。虽然我特意避免了系统目录,以避免不必要的问题。不,安装程序确实创建了它们。就是说,你要明白,在我进入这些文件夹之前,那个简单的用户是做不到我所做的。

接下来我尝试连接DLL。就像在坦克里一样安静--它看不到它,无论我将它推到哪里。它是在VS2013桌面上用C++创建的,最新版本,并在MT4上成功运行。在看了 "如何在10分钟内编写DLL "一文中的例子后,我像个傻瓜一样花了半个晚上来尝试连接它。然后我改变了路径,终端终于看到了它,并警告说这不是一个64位DLL,并拒绝连接它。当然,我知道在所有的例子中,DLL都是作为一个Win32应用程序创建的,它们不会创建64位。那么,接下来该怎么做?我决定用MT5--32位进行实验。我的安装程序不允许我这样做,强迫我安装64位。后来,我偶然看到一个论坛,说MT5 32位可以从命令行{mt5setup.exe /32)安装,并安装了32位版本。 我连接了DLLs,得到了正确的工作。我不得不卸载64位版本,因为它是一个死的和有问题的应用程序。

我特意把这一切描述得如此透彻,以便开发者尝试进入用户的皮肤。

问题。问题是,为什么尽管我不在系统目录下安装,安装程序仍然把所有东西放在隐藏的文件夹里,我根本无法进入,至少无法把从代码库下载的指标或脚本放在那里。而我却无法进入Files文件夹,在那里我可以写下我的一些工作成果?说实话,我有一种情绪上的冲动,想把MT5送得远远的,所有这些问题,原谅我的表达方式--时间和神经能量的吸血鬼和缺陷。但我通过纯粹的力量进行了抵抗。

而第二个问题。32位DLL在64位版本中应该是可用的,因为64位终端没有它就有点死了?

还有一个问题。是否有计划提供一个C# DLL连接的机会,让他们毫无问题地创建64位DLLs?

还有一件事。微软正在进行一种几乎是强行的尝试,用C#取代C++作为主要的编程语言。在最新的VS2013中,他们甚至取消了对表单的设置工作,并在论坛上回答 "为什么?"的问题,"你为什么不尝试使用更完美的C#?"。然后事实证明,从长远来看,C++可能会走到第二位或完全消失。新的终端是否应该以C#作为语言的基础?

 
ANG3110:

然后我决定安装Metatrader 5。我知道把它安装在系统目录下是很危险的,所以我把它安装在我的C盘上一个专门创建的文件夹里。我试着和它一起工作。经过一些步骤,如创建指标、写文件和尝试连接DLL,我发现安装目录中缺少文件和库。但无论是DLL文件,还是从Code Base下载的例子,都没有被创建或被调用进行编译。我花了很多时间和神经去寻找原因。然后我就把TerminalPath注释掉了--它都消失到哪里去了?结果是到了C:\Users\...\AppData文件夹。我试图找到它--没有运气。它根本没有被列出。然后不知怎的,我意识到它被隐藏了。我在网上找到了如何让隐藏的文件夹显示出来。是的,所有需要的文件夹和文件都出现在C:\Users\...\AppData\Roaming\MetaQuotes\Terminal。虽然我特意避免了系统目录,以避免不必要的问题。不,安装程序确实创建了它。所以你要明白,一个简单的用户根本无法做我在进入这些文件夹之前所做的事情。


安装完64位终端后,不要立即打开,先创建一个快捷方式,在对象所在的属性中加上/portable键。

像这样:D:\MT5\terminal64.exe /portable

然后所有的文件夹将不会出现在某个地方,而是出现在你的终端的文件夹中。

 
Olegts:

像这样:D:\MT5\terminal64.exe /portable

然后所有的文件夹将不会出现在任何地方,而是出现在你的终端的文件夹中。

也为编辑

也可以在注册表中的任何地方通过双击打开mql文件。

 
sergeev:

以及为编辑

也可以在注册表中的任何地方通过双击打开mql文件。

你是版主还是什么?

这个人有一个问题,我告诉他如何部分地解决这个问题,你为什么要讽刺他呢?

 
Olegts:

你是版主还是什么?

这个人有一个问题,我建议如何部分地解决这个问题,为什么要讽刺他?

你小时候怕过版主吗? 为什么你会变得愤怒和咄咄逼人?

我只是对你不完整的回答进行了扩展。

你自己写道,你建议他如何 "部分地 "解决这个问题。为什么他需要一半?

 
sergeev:

你小时候被版主吓到过吗? 为什么你会变得如此火大?

我只是对你不完整的回答进行了扩展。

你自己说你给他的建议是 "部分"。为什么他需要半个脑袋?

就个人而言,没有便携设备我就不工作。我有一个单独的文件夹,里面有大约20个终端,我清楚地知道MQL5和其他文件夹的位置,而不是不知名的地方。他的想法是,他遇到了一些由Softwares公司制造的名为8.1的奇迹的麻烦,他认为这是元引号的错。他应该得到帮助,而不是显示出优越性。

 
为什么快捷方式上没有列出终端的路径?这是比尔-盖茨,他们不会白白向他扔鸡蛋)。
 
Olegts:

就我个人而言,我的工作没有便携式的,我有一个单独的文件夹。

我的硬盘上有几千兆,上面还有FAT32,我甚至不需要便携式。

 
ANG3110:

亲爱的开发者们!你真的测试过你发布的东西吗?

我们测试它。而且我们已经公开做了十三年了。


我在我的电脑上安装了Windows 8.1 64位--许可--。然后我遇到了一些问题。首先,我把Metatrader 4安装在自动运行的C:\Program Files (x86)中。当试图写入文件时,问题开始了。事实证明,这个Windows系统的安全性很高,请原谅我的语言,低劣的安全性,我是唯一的用户,也是电脑的管理员,在我点击 "作为管理员 "之前,不能在系统目录中做任何事情。看完论坛后,我决定不把Metatrader 4重新安装到Program Files (x86),而是安装到我的C盘上另一个专门创建的文件夹,预装MT4。但这并不奏效。卸载者说,你没有权利这样做。我真的忍不住了,尽力去卸载。我做了我能做的一切。作为管理员,并允许安全部的每个人做任何事情。我甚至重新安装了Windows。 总而言之,我花了将近2天时间。后来我无意中在MT英文论坛上发现一条小消息,说必须检查Win XP SP3的兼容模式,并打上勾--以管理员身份执行操作。然后只以管理员身份卸载了终端。我稍微松了一口气。

你遇到了老程序不能很好地适应Windows 8的通常问题。也就是说,问题出在操作系统的安全性上。是的,微软在Windows 8中真的把所有人都放在了墙上,不再允许你在任何你想去的地方写入和存储数据。

为了解决这样的问题,我们正在发布新的MetaTrader 4,它使用一个现代的数据存储模型,就像MetaTrader 5那样。


然后我决定安装Metatrader 5。已经知道,安装在

安装程序没有问我是否要安装64位版本,强行安装了MT5 64位。我试着和它一起工作。经过一些步骤,如创建指标、写文件和尝试连接DLL,我发现安装目录中缺少文件和库。但无论是DLL文件,还是从Code Base下载的例子,都没有被创建或被调用进行编译。我花了很多时间和神经去寻找原因。然后我就把TerminalPath注释掉了--它都消失到哪里去了?结果是到了C:\Users\...\AppData文件夹。我试图找到它--没有运气。它根本没有被列出。然后不知怎的,我意识到它被隐藏了。我在网上找到了如何让隐藏的文件夹显示出来。是的,所有需要的文件夹和文件都出现在C:\Users\...\AppData\Roaming\MetaQuotes\Terminal。虽然我特意避免了系统目录,以避免不必要的问题。不,安装程序确实创建了它们。也就是说,你要明白,一个简单的用户不能像我在进入这些文件夹之前那样做。

你这样推理,批评和给开发者提供建议,但你不知道Windows安全的基本规则。就这样,操作系统不再授予写入程序文件的权利。推荐的存储位置是只在AppData中。

如果你在正常模式下工作,一切都很好--所有的数据都已到位,工作目录在文件->打开数据目录中可用。


接下来我尝试连接DLL。像在坦克里一样安静--无论我把它塞到哪里,它都看不到。它是在VS2013桌面上用C++创建的,最新版本,在MT4中运行良好。在看了 "如何在10分钟内编写DLL "一文中的例子后,我像个傻瓜一样花了半个晚上来尝试连接它。然后我改变了路径,终端终于看到了它,并警告说它不是64位DLL,拒绝连接它。当然,我知道在所有的例子中,DLL都是作为一个Win32应用程序创建的,它们不会创建64位。那么,接下来该怎么做?我决定用MT5--32位进行实验。我的安装程序不允许我这样做,强迫我安装64位。后来,我偶然看到一个论坛,说MT5 32位可以从命令行{mt5setup.exe /32)安装,并安装了32位版本。 我连接了DLLs并得到了工作。64位版本不得不作为一个死的问题应用程序被卸载。

如果是你的DLL,只要在64位模式下重新编译即可。

你不必用头去撞墙,假装32位库可以或应该在64位程序中工作。在一个邻近的论坛上已经向你解释过了,但你仍然假装不明白。

我特意以如此详细的方式描述了一切,以便开发人员可以尝试进入用户的皮肤。

不幸的是,你已经详细地描述了你的错误观念。表面上是程序员的话(DLL、目录、程序),但你并不真正了解基础知识。

问题。为什么,尽管我没有安装到系统目录中,安装程序还是把所有的东西都放到了隐藏的文件夹中,我就是进不去,至少要把从代码库中下载的指标或脚本放在那里。而我却无法进入Files文件夹,在那里我可以写下我的一些工作成果?说实话,我有一种情绪上的冲动,想把MT5送得远远的,所有这些问题,原谅我的表达方式--时间和神经能量的吸血鬼和缺陷。但我通过纯粹的力量进行了抵抗。

因为这些是微软的规则(是的,没错)。随着Windows 8的发布,几乎是要么按微软说的做,要么为客户设置写禁令。

对于那些想在自己的目录中保留工作文件的人来说,有一个/portable开关来对付它。


还有第二个问题。32位DLLs是否会在64位版本中出现,因为64位终端没有它就有点死了?

不,这在技术上是不可能的(没有狂热)。需要的是64位库。


还有一个问题。你是否计划提供一个C# DLL连接的机会,让他们毫无问题地创建64位DLLs?

通常的程序也很容易做出64位版本。你是怎么想到这个问题的?


还有一件事。微软正在进行一种几乎是强行的尝试,用C#取代C++作为主要的编程语言。在最新的VS2013中,他们甚至取消了对表单的设置工作,并在论坛上回答 "为什么?"的问题,"你为什么不尝试使用更完美的C#?"。然后事实证明,从长远来看,C++可能会走到第二位或完全消失。是否计划以C#作为语言的基础制作一个新的终端?

当我们想毁掉我们的生意时,那么是的--我们会改用C#。这将是一个伟大的方法。

这样你就不会有问题,使用MQL4/MQL5--它们像C#一样工作,并会在运行时自动对接32位和64位本地代码。

Выпущена бета-версия MetaTrader 4 Build 555 с обновленным языком MQL4 и Маркетом приложений - MQL4 форум
  • www.mql5.com
Выпущена бета-версия MetaTrader 4 Build 555 с обновленным языком MQL4 и Маркетом приложений - MQL4 форум
 

当然,我完全理解。

几个月前从Windows XP切换到Windows 7/Windows 8的人,必然会打破模式。但是,正如他们所说,每个人都是自己的邪恶匹诺曹--这就是十年来自欺欺人和对操作系统的变化视而不见的代价。