Erros, bugs, perguntas - página 394

 
As chaves (bandeiras) devem estar em frente do nome do ficheiro compilado.
 
mql5:
As chaves (bandeiras) devem estar em frente do nome do ficheiro compilado.

Então, quando o caminho para o ficheiro encriptado está entre aspas, está depois do ficheiro compilado, e quando está entre parênteses triangulares, está antes dele?

 
Integer:

Então, quando o caminho para o ficheiro encriptado está entre aspas, é depois do ficheiro ser compilado, mas quando está entre parênteses triangulares, é antes dele?

Quando corro o mql5.exe sem parâmetros, obtenho a utilização. Onde se declara explicitamente que o nome do ficheiro a ser compilado deve ser o último.
A razão é que é compilado entre aspas, enquanto que os parênteses triangulares especificam o caminho relativo à pasta MQL5+"\include".
 
mql5:
Ao lançar mql5.exe sem parâmetros, mostra o uso. Onde se declara explicitamente que o nome do ficheiro compilado deve ser o último.
A razão é que é compilado com citações, enquanto os parênteses triangulares especificam o caminho relativo à pasta MQL5+"\include".

Que o inluder seja especificado em vírgulas invertidas.

É assim que funciona:

   string s;
   s=TerminalInfoString(TERMINAL_PATH)+"\\mql5.exe";
   s=s+" ";
   s=s+TerminalInfoString(TERMINAL_DATA_PATH)+"\\MQL5\\Scripts\\sInstallerTestScript.mq5";    
   s=s+" /i: ";
   s=s+TerminalInfoString(TERMINAL_DATA_PATH)+"\\MQL5\\Scripts\\z\\IncInstallerTest.mqh";   

O caminho para o inculdador é especificado após o caminho para o ficheiro compilado, o que não é consistente com a ajuda mql5.exe.

* * *

Isto, de acordo com a ajuda do mql5.exe, não funciona:

   string s;
   s=TerminalInfoString(TERMINAL_PATH)+"\\mql5.exe";
   s=s+" /i: ";
   s=s+TerminalInfoString(TERMINAL_DATA_PATH)+"\\MQL5\\Scripts\\z\\IncInstallerTest.mqh";        
   s=s+" ";
   s=s+TerminalInfoString(TERMINAL_DATA_PATH)+"\\MQL5\\Scripts\\sInstallerTestScript.mq5";    

Nota: Incudnik em duplicado: em Scripts/z (para verificar com aspas) e Include/InstallerTestInclude (para verificar com parênteses).

* * *

Não pode compilar com parênteses de forma alguma. Assim também não:

   s=TerminalInfoString(TERMINAL_PATH)+"\\mql5.exe";
   s=s+" /i: ";
   s=s+TerminalInfoString(TERMINAL_DATA_PATH)+"\\MQL5\\Include\\InstallerTestInclude\\IncInstallerTest.mqh";        
   s=s+" ";
   s=s+TerminalInfoString(TERMINAL_DATA_PATH)+"\\MQL5\\Scripts\\sInstallerTestScript.mq5";          
   

Assim também não:

   s=TerminalInfoString(TERMINAL_PATH)+"\\mql5.exe";
   s=s+" ";
   s=s+TerminalInfoString(TERMINAL_DATA_PATH)+"\\MQL5\\Scripts\\sInstallerTestScript.mq5";          
   s=s+" /i: ";
   s=s+TerminalInfoString(TERMINAL_DATA_PATH)+"\\MQL5\\Include\\InstallerTestInclude\\IncInstallerTest.mqh";        
    
 
Integer:


Com parênteses, não há forma de compilar de todo. Nenhum dos dois:

Experimente isto

   s=TerminalInfoString(TERMINAL_PATH)+"\\mql5.exe";
   s=s+" /i: ";
   s=s+TerminalInfoString(TERMINAL_DATA_PATH)+"\\MQL5";        
   s=s+" ";
   s=s+TerminalInfoString(TERMINAL_DATA_PATH)+"\\MQL5\\Scripts\\sInstallerTestScript.mq5";        
 
mql5:

Experimente isto

Ao abrir um meta ficheiro usando a linha de comando, pode dizer-me como passar um número de linha para que o ficheiro seja imediatamente movido para essa linha quando é aberto?
 
mql5:

Experimente isto.

Não funcionou.

 
Encontrou um espaço extra
   s=TerminalInfoString(TERMINAL_PATH);
   s=s+"\\mql5.exe /i:"+TerminalInfoString(TERMINAL_DATA_PATH)+"\\MQL5 ";
   s=s+TerminalInfoString(TERMINAL_DATA_PATH)+"\\MQL5\\Scripts\\sInstallerTestScript.mq5";     
 

Viva! Está a funcionar!

 
mql5:
Encontrou um espaço extra.

e no meta-editor (acima da pergunta) mais dicas, por favor.