und wieder dll und Markt - Seite 11

 

Haben Sie gelernt, wie man eine Datei über WebRequest hochlädt?

Das Einzige, was noch zu lernen ist, ist PlaySound (was in einem separaten Ratgeber/Dienst sinnvoll sein könnte),

sondern"Die Datei muss sich im Verzeichnis terminal_directory\Sounds oder einem Unterverzeichnis davon befinden.Es können nur Audiodateien im WAV-Format abgespielt werden." Erstellen Sie im Voraus eine Verknüpfung von einem Verzeichnis zum anderen (z. B. von Dateien/Ton zu Ton/Dateien).

und voila - ohne Überschreitung der MT-Fähigkeiten und ohne externe DLLs sollte alles funktionieren.

 
Nikolai Karetnikov:

Und noch etwas, das WebRequest Dokument sagt, dass es 2 Varianten dieser Funktion gibt. Die erste funktioniert mit Content-Type: application/x-www-form-urlencoded, was offensichtlich nicht geeignet ist, da IBM nach dem Header "Content-Type: application/json" fragt.

Aber das ist alles, was ich bis jetzt verstanden habe.

Wozu brauchen Sie diese käsige WebRequest?Socket-Funktionen gibt es schon seit einiger Zeit, auch mit TLS.
 

so interessant ist es

   string cookie=NULL,headers;
   char   post[],result[];
   string url="https://c.mql5.com/3/321/voice.bat.txt";
//--- для работы с сервером необходимо добавить URL "https://finance.yahoo.com"
//--- в список разрешенных URL (Главное меню->Сервис->Настройки, вкладка "Советники"):
//--- обнуляем код последней ошибки
   ResetLastError();
//--- загрузка html-страницы с Yahoo Finance
   int res=WebRequest("GET",url,cookie,NULL,500,post,0,result,headers);
   if(res==-1)
     {
      Print("Ошибка в WebRequest. Код ошибки  =",GetLastError());
      //--- возможно, URL отсутствует в списке, выводим сообщение о необходимости его добавления
      MessageBox("Необходимо добавить адрес '"+url+"' в список разрешенных URL во вкладке 'Советники'","Ошибка",MB_ICONINFORMATION);
     }
   else
     {
      if(res==200)
        {
         //--- успешная загрузка
         PrintFormat("Файл успешно загружен, размер %d байт.",ArraySize(result));
         //PrintFormat("Заголовки сервера: %s",headers);
         //--- сохраняем данные в файл
         int filehandle=FileOpen("voice.bat",FILE_WRITE|FILE_BIN);
         if(filehandle!=INVALID_HANDLE)

Foto von

Foto von

bat gibt einen Fehler - wenn in bin und dann irgendwie von bin

Schnappschuss2

 
Serhii Shevchuk:
Wozu brauchen Sie diese käsige WebRequest? Socket-Funktionen gibt es schon seit langem, auch mit TLS.

Ich sehe, Sie sind eine erfahrene Person, können Sie mir helfen, ein Beispiel für eine Socket-Referenz zu schreiben?

Die Dokumentation finden Sie hierhttps://cloud.ibm.com/docs/text-to-speech?topic=text-to-speech-usingWebSocket

Soweit ich weiß, lautet dieinstance_id GR1bb3zVMs9fcNKL6pA9-5zj9ptWliCu6eh9oupUnpZB

Beim Rauchen des Doc...

 
Реter Konow:
Die Aufgabe ist sehr kompliziert, fast unmöglich, weil die Zielgrenzen nicht definiert sind. Was genau sollte der EA ankündigen? Wenn nur der Preis, können wir eine Reihe von vocalized Zahlen, die kombiniert werden können, zu integrieren. Wenn Sie die Möglichkeit benötigen, eine benutzerdefinierte Erinnerung auf dem Mikrofon aufzuzeichnen, die der EA zum richtigen Zeitpunkt aktiviert, dann ist das nicht wirklich unmöglich, aber SEHR schwierig. Ich sehe fast keinen Sinn darin, so viel Energie auf einen zweifelhaften Chip zu verwenden.

Machen Sie sich klarer, was Sie tun wollen.

die Aufgabe ist nicht sehr schwierig. Im Grunde ist bereits alles erledigt, und der Expert Advisor funktioniert einwandfrei mit dem DLL-Aufruf, indem er auf Englisch oder Russisch die Namen der Instrumente und ihre aktuellen Preise ausspricht und, falls erforderlich, den Preis in der Region anschlägt.

Eingebaute Funktionen des Windows-Betriebssystems werden genutzt


Mit einer einfachen https://www.mql5.com/ru/forum/342293#comment_16626455 Klasse ist es möglich, beliebigen Text auszusprechen, sogar Laufzeitfehler oder printf-Ausgaben, wenn jemand sie braucht ))))

Und die Implementierung mit mehreren wav-Dateien ist sehr kompliziert, da haben Sie recht

и снова dll и маркет
и снова dll и маркет
  • 2020.05.30
  • www.mql5.com
День добрый! Правило №1 dll на Маркете запрещен...
 
nkaretnikov:

ist die Aufgabe nicht sehr schwierig. Im Grunde genommen ist bereits alles erledigt, und der Expert Advisor funktioniert einwandfrei mit dem DLL-Aufruf, indem er auf Englisch oder Russisch sowohl die Namen der Instrumente als auch ihre aktuellen Preise ausspricht und, falls erforderlich, den Preis in der Region anschlägt.

Die integrierten Funktionen des Windows-Betriebssystems werden genutzt


Mit einer einfachen https://www.mql5.com/ru/forum/342293#comment_16626455 Klasse ist es möglich, beliebigen Text auszusprechen, sogar Laufzeitfehler oder printf-Ausgaben, wenn jemand sie braucht ))))

Und die Implementierung mit mehreren wav-Dateien ist sehr kompliziert, da haben Sie recht

Sie haben keine formulierte Aufgabe und es ist daher nicht klar, was zu tun ist. Damit das Ratsmitglied sagen kann, was es will? Aber was genau soll er denn sagen? Wie kann man den Namen des Symbols lesen? :) Sie werden nicht in der Lage sein, mit dem Berater zu kommunizieren, selbst wenn er den Text förmlich "spricht". Sie können ihn nicht zwingen, den Text zu lesen, der für ein Ereignis relevant ist. Wie weisen Sie ihn an, die Ausdrucke oder Protokolle zu lesen?)
 
OK, nehmen wir an, der EA schreibt den zu sprechenden Text in eine Datei und sendet ihn über eine Web-Anfrage oder Sockets an den Server, und der Server spricht ihn gehorsam. Theoretisch möglich, aber keine leichte Aufgabe...

Berücksichtigen Sie Zeitverzögerungen.
 
Реter Konow:
Sie haben kein formuliertes Problem und es ist daher nicht klar, was gelöst werden muss. Der Expert Advisor soll sagen, was Sie wollen? Aber was genau soll dort stehen? Wie kann man den Namen des Symbols lesen? :) Sie werden nicht in der Lage sein, mit dem Berater zu kommunizieren, selbst wenn er den Text förmlich "spricht". Sie können ihn nicht zwingen, einen Text zu lesen, der für ein Ereignis relevant ist. Wie weisen Sie ihn an, die Ausdrucke oder Protokolle zu lesen?)

Ich muss das Problem der Umwandlung von beliebigem Text in eine wav-Datei ohne DLL-Aufrufe zu lösen)

Alles andere ist bereits gelöst

 
Реter Konow:
Angenommen, unser EA schreibt einen Text, der gesprochen werden soll, in eine Datei und sendet ihn über WebRequest oder Sockets an den Server, und der Server spricht mit ihm. Theoretisch möglich, aber keine leichte Aufgabe...

Es besteht keine Notwendigkeit, in die Datei zu schreiben. WebRequest-Methoden abgleichen

и снова dll и маркет
и снова dll и маркет
  • 2020.05.31
  • www.mql5.com
День добрый! Правило №1 dll на Маркете запрещен...
 
nkaretnikov:

Ich muss das Problem der Umwandlung von beliebigem Text in eine wav-Datei ohne DLL-Aufrufe zu lösen)

Alles andere ist bereits gelöst

Ich weiß es nicht... das ist das unlösbare Problem... Sie benötigen einen speziellen Webdienst, der eine Textdatei von Ihnen entgegennimmt, sie in eine WAV-Datei umwandelt, sie an Ihren Sounds-Ordner zurückschickt und die alte Datei neu schreibt. Oder einfach empfangen und aussprechen, ohne sie in .wav umzuwandeln
Grund der Beschwerde: