并再次进行dll和营销

 

下午好!

规则一:市场上不允许有零钱。好吧,这是可以理解的 )

现在的情况是

我认为有一个有用的功能,在专家顾问包装器中运作良好,但它不是完全的非交易。它使用onTimer方法进行操作。DLL用于文件重命名操作(好吧,在MQL中没有可能创建一个扩展名为vbs的文件:),并使用shell命令启动这个可视化基本脚本。危险的,我明白。

如何通过市场提供具有这种输入的功能?

 
Nikolai Karetnikov:

下午好!

规则一:市场上不允许有零钱。好吧,这是可以理解的 )

现在的情况是

我认为有一个有用的功能,在专家顾问包装器中运作良好,但它不是完全的非交易。它使用onTimer方法进行操作。DLL用于文件重命名操作(好吧,在MQL中没有可能创建一个扩展名为vbs的文件:),并使用shell命令启动这个可视化基本脚本。危险的,我明白。

我如何通过市场提供具有这些输入的功能?

有人吗?

到目前为止,我有一个想法,把执行dll调用的类移到一个单独的库中,并把它钉在描述中。

顺便说一下,为了使该功能发挥作用,我需要更多的csv文件,这些文件应该在mql5\files目录中。有没有办法把它附在描述中?

 
Nikolai Karetnikov:

有人吗?

到目前为止,我有一个想法,将调用dll的类移到一个单独的库中,并通过引用将其附加到描述中。

顺便说一句,为了工作

为什么?

市场的主要规则是--禁止dll和其他可疑的活动。禁止对任何外部对象(指标和库)的依赖。

通过取消对一个类或库的调用,你根本无法摆脱DLL。

PS/出售这样一个可疑的东西(从封闭的软件中形成并运行VBS),你必须承担个人责任,没有人会愿意做中间人。

 
Nikolai Karetnikov:

有人吗?

到目前为止,我有一个想法,就是把调用dll的类放到一个单独的库中,并把它附在描述中。

顺便说一下,我需要csv文件,它应该位于mql5\files目录中。是否可以将其作为附件附在描述中?

难道你的功能还不够多吗,终端本身? 第三方程序能做什么,而终端不能做?????????????????????。

 
Maxim Kuznetsov:

为什么?

市场的基本规则是,禁止dll和其他可疑活动。禁止对任何外部对象(指标和库)的依赖。

通过对类或库的调用,你将无法摆脱DLL。

PS/出售这样一个可疑的东西(从封闭的软件中形成和运行VBS),你必须承担个人责任,没有人会愿意做中间人。

到目前为止,我还不明白这种划分的机制是什么。比方说,这里是访问dll的类的代码

class cIntSpeech
  {

public:
   void Say(string aText)
     {
      
      if(!MQL5InfoInteger(MQL5_DLLS_ALLOWED))
        {
         Alert(__FUNCTION__+": Allow dll");
         return;
        }
     
     string m_fntxt="sspeechexample.txt";
     string m_fnvbs="sspeechexample.vbs";
      
     int h=FileOpen("sspeechexample.txt",FILE_ANSI|FILE_WRITE);
     FileWrite(h,"CreateObject(\"SAPI.SpVoice\").Speak\""+aText+"\"");
     FileClose(h);

     string srcvbs = TerminalInfoString(TERMINAL_DATA_PATH)+"\\MQL5\\Files\\sspeechexample.txt"; //+MQLInfoString(MQL_PROGRAM_NAME)+".mq5";
     string dstvbs = TerminalInfoString(TERMINAL_DATA_PATH)+"\\MQL5\\Files\\sspeechexample.vbs"; //"+MQLInfoString(MQL_PROGRAM_NAME)+".vbs";
         if(CopyFileW(srcvbs,dstvbs,0)){
            Print("Файл скопирован");
            }
             else{
         Print("Не удалоcь скопировать файл");   
   }
   int r = -1;
   r = ShellExecuteW(NULL,NULL,dstvbs,"","",0);
   Print("Код ошибки %d", r);
      
     }
  };



在专家顾问本身中,将位于市场中,还有3-4个类,而DLL只在一个类中涉及。假设我修改了专家代码中的DLL类,用printf() 代替shellexecute()和copyW(),并使所有owl符合规则。

我怎样才能让潜在的买家方便地用一个真正的、做有用工作的班级来取代一个安全但无用的班级?

 
Alexsandr San:

你的功能还不够多吗,终端本身? 第三方程序能做什么,而终端不能?????????????????????。

许多事情 :)

但特别是,MQL5不能创建一个.vbs文件

 

直觉告诉我,这个巫师需要被隔离很长一段时间。

Расширение VBS – это скрипт, написанный на языке Visual Basic, используется для выполнения команд и программ в среде Windows. VBS скрипты интерпретируются или оконным интерпретатором WScript.exe, или консольным – CScript.exe (вместе они – Windows Script Host или WSH). Файлы .VBS могут так же иметь расширение .VB. Создавать скрипты VBS можно в блокноте или в любом другом текстовом редакторе, т.к. VBS – это текстовый формат. VBScript был создан Microsoft в качестве замены устаревшему языку .CMD, интерпретируемому приложением command.com.
Скрипты VBS чаще всего используются при автоматизации администрирования систем Windows или при написании кода на страницах Classic ASP, или в клиентских скриптах в браузере Internet Explorer.

注意: 小心.VBS文件可能被感染了恶意代码或木马。在打开之前使用反病毒软件扫描.VBS文件,特别是当你在邮件中收到该文件,或其来源不明时。

来源:http://fileext.ru/vbs

为什么要这么努力地把这个放在市场上呢?

 
Nikolai Karetnikov:

许多事情 :)

但特别是,MQL5不能创建一个.vbs文件

你也可以创建.bat和.cmd

 
Nikolai Karetnikov:

下午好!

规则一:市场上不允许有零钱。好吧,这是可以理解的 )

现在的情况是

我认为有一个有用的功能,在专家顾问包装器中运行良好,但根本没有交易。 它使用onTimer方法进行操作。DLL用于文件重命名操作(好吧,在MQL中没有可能创建一个扩展名为vbs的文件:),并使用shell命令启动这个可视化基本脚本。危险的,我明白。

我怎样才能通过市场提供具有这种输入的功能?

你能解读出划线的短语吗?))大多数Win API函数的封装器已经做了很久了。你可以在市场上使用它们。 我特别问了雷纳特。

\MQL5\IncludeWinAPI\...

 
Alexey Volchanskiy:

你能解读出划线的短语吗?))大多数Win API函数的封装器在很久以前就已制作完成。你可以在市场上使用它们,我已经专门问过雷纳特了。

\MQL5\IncludeWinAPI\...

我不相信!

阿列克谢,是你吗?坦率地说,我真的很想念这个论坛上的你......你们都很沉闷,皱着眉头......

 
Alexey Volchanskiy:

你能解读出划线的短语吗?))大多数Win API函数的封装器在很久以前就已制作完成。你可以在市场上使用它们,我已经专门问过雷纳特了。

{MQL5\IncludeWinAPI\...

所以,WinApi从Dll中提取功能,而所有的Dll调用都被禁止。
这里不清楚。 我记得相反的,WinApi的调用也是被禁止的。

原因: