Qualquer pergunta de novato, de modo a não desorganizar o fórum. Profissionais, não passem por aqui. Em nenhum lugar sem você - 6. - página 943

 

Quem sabe como descobrir

longchart_id, // ID do gráfico. 0 significa gráfico atual.

se a tabela não for atual?

 
Leo59:

Quem sabe como descobrir

longchart_id, // ID do gráfico. 0 significa a tabela atual.

se a tabela não for a atual?

Então é necessário selecionar o primeiro ChartFirst para verificar se é o certo, por símbolo e ponto, se não selecionar o próximo e assim por diante para o certo e definir o ChartID
 
AlexeyVik:
Então você precisa selecionar o primeiro ChartFirst para verificar se é o certo, por símbolo e ponto, se não selecionar o próximo e assim por diante para o certo e definir ChartID
Obrigado!
 

Olá a todos. Lidar com bibliotecas de funções, funções de importação (#importar) e incluir arquivos (#incluir). Não sabe bem quem "inclui" quem? Portanto.

As bibliotecas estão localizadas na pasta Bibliotecas. Esta pasta pode conter 5 tipos de arquivos (não excluídos): 1- .dll (biblioteca de funções do Windows, já alterada para MT4 com modificador #defineMT4_EXPFUNC int __stdcall ...),

2- . ex4(parece ser o resultado da compilação de .mq4 ou .mqh), 3- .dat(não li nada sobre isso), 4- .mqh(provavelmente um arquivo para habilitar, porque# biblioteca de propriedade está desativada, mas Igor Kim a tem,

como uma biblioteca de funções adicionais), 5- .mq4(uma biblioteca de funções personalizadas e incluir arquivos, que podem conter funções personalizadas, incluir arquivos, bibliotecas .dll e algo mais.

Os arquivos include estão na pasta Include e podem conter outros arquivos include, funções personalizadas, bibliotecas .dll e algo mais. Também na pasta Inclua --> Controles --> ícones res (imagens) .bmp.

Como eu poderia fazer (refazer) o roteiro, que não funciona (não responde a cliques de mouse e teclado). Talvez porque a pasta Libraries no user32.dll (embora useWinUser32.mqh e não possa estar em algum lugar que não seja).

Você pode me dizer onde algo está errado. Agradecemos antecipadamente, as perguntas estão apenas começando.

#property copyright "Copyright 2015"
#property link      "http://"
#property version   "1.00"
//#property strict
#include <WinUser32.mqh>

#import  "IdleLib.dll"
int      GetLastKeyWP();
int      GetLastMouseWP();
int      IdleLibInit();
int      IdleLibUnInit();
string   GetActiveWndName();
#import 
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//---
      Alert("Начало.");
      IdleLibInit();//инициализируем Dll для перехвата событий.
      while(IsStopped()==false)
         {
            int    lastkey=GetLastKeyWP();         //Опрашиваем код посл. клавиши
            int    lastmouse=GetLastMouseWP();     //Опрашиваем код мыши.
            string lastwnd=GetActiveWndName();     //Имя окна Metatrader где произошло событие.
            if ((lastkey!=0) && (lastwnd!=""))
               {
                  Alert("Код нажатой клавиши=",lastkey," из окна ",lastwnd);
               }
            if ((lastmouse!=0) && (lastwnd!="") && (lastmouse!=512)) //отражаем все события кроме движения мыши.
               {
                  Alert("Код мыши=",lastmouse," из окна ",lastwnd);
               }
            Sleep(200);
         }  //while
      IdleLibUnInit();
      Alert("Завершение.");
  }
 
kosmos0975:

Olá a todos. Lidar com bibliotecas de funções, funções de importação (#importar) e incluir arquivos (#incluir). Não sabe bem quem "inclui" quem? Portanto.

As bibliotecas estão localizadas na pasta Bibliotecas. Esta pasta pode conter 5 tipos de arquivos (não excluídos): 1- .dll (biblioteca de funções do Windows, já alterada para MT4 com modificador #defineMT4_EXPFUNC int __stdcall ...),

2- . ex4(parece ser o resultado da compilação de .mq4 ou .mqh), 3- .dat(não li nada sobre isso), 4- .mqh(provavelmente um arquivo para habilitar, porque # biblioteca de propriedade está desativada, mas Igor Kim a tem,

como uma biblioteca de funções adicionais), 5- .mq4(uma biblioteca de funções personalizadas e incluir arquivos, que podem conter funções personalizadas, incluir arquivos, bibliotecas .dll e algo mais.

Os arquivos include estão na pasta Include e podem conter outros arquivos include, funções personalizadas, bibliotecas .dll e algo mais. Também na pasta Inclua --> Controles --> ícones res (imagens) .bmp.

Como eu poderia fazer (refazer) o roteiro, que não funciona (não responde a cliques de mouse e teclado). Talvez porque a pasta Libraries no user32.dll (embora useWinUser32.mqh e não possa estar em algum lugar que não seja).

Você pode me dizer onde algo está errado. Agradecemos antecipadamente, as perguntas estão apenas começando.

A pasta Bibliotecas contém:

1) autoescrito *.dll;

2) *.ex4 - resultado de bibliotecas compiladas com #propriedade de biblioteca;

3) *.mq4 (não obrigatório) a partir do qual *.ex4 do item 2 é compilado.

 

Obrigado por sua resposta. Para esclarecer: 1) autoescrito *.dll - biblioteca de funções do Windows ou seu código, já adaptado ao MT4. 2) *.mq4(fonte) será compilado juntamente com o arquivo principal ou seu *.ex4(já compilado)

(já compilado) será incluído (adicionado) no arquivo principal durante a compilação. Para a edição da biblioteca, é mais conveniente ter o arquivo fonte. 3) A desregulamentação #importar somente para *.dll. Está na pasta Bibliotecas, porque a biblioteca, embora a externa

funções. 4) *.mqh - arquivos para inclusão, não compilados (sempre fonte).

Li que as bibliotecas antigas podem não funcionar porque agora a Unicode. O que há de errado com o exemplo acima?

 
kosmos0975:

Obrigado por sua resposta. Para esclarecer: 1) autoescrito *.dll - biblioteca de funções do Windows ou seu código, já adaptado ao MT4. 2) *.mq4(fonte) será compilado juntamente com o arquivo principal ou seu *.ex4(já compilado)

(já compilado) será incluído (adicionado) no arquivo principal durante a compilação. Para a edição da biblioteca, é mais conveniente ter o arquivo fonte. 3) A desregulamentação #importar somente para *.dll. Ela está na pasta Bibliotecas porque a biblioteca, embora seja uma

funções. 4) *.mqh - arquivos para inclusão, não compilados (sempre fonte).

Li que as bibliotecas antigas podem não funcionar porque agora a Unicode. O que há de errado com o exemplo acima?

Para esclarecer:

1) As bibliotecas Windows não precisam ser colocadas na caixa de areia do terminal;

2) *.mq4 (fonte) com a diretiva #property library directive (depois de compilá-la, você recebe um arquivo *.ex4). O arquivo não será compilado sem esta diretriz;

A diretiva #import não é usada somente para bibliotecas *.dll. Veja qualquer arquivo *.mqh na pasta Incluir. A propósito, é onde os arquivos *.mqh (cabeçalho) devem ser localizados. Eles não são compilados.

Sobre bibliotecas "antigas" e Unicode - trata-se de *.dll autoescrita.

 

Já descobri onde está tudo. Sobre a estrutura do roteiro acima. #WinUser32.mqh> contém o ditado "user32.dll" de importação e uma lista de funções externas adaptadas. Também #define(atribuição de nomes mnemônicos) a alguns

valores numéricos. Por que isto é feito (atribuição) e é até mesmo necessário incluir o arquivo #include< WinUser32.mqh>, porque as funções externas que são usadas mais tarde pertencem a #import "IdelLib.dll".

A lista de funções "user32.dll" parece ter suas próprias funções para seqüestro de mouse e teclado, mas nenhuma descrição foi encontrada. Gostaria de saber como fazê-lo (roteiro) funcionar corretamente (funciona os mesmos painéis interativos no Testador de Estratégia, apesar de seu

falhas persistentes por parte dos desenvolvedores) e há pessoas com conhecimento. Veja algumas roscas em *.dll-libraries. Eles começam rapidamente, depois falam sobre a vida. Entretanto, por alguma razão, muito pouca informação (bibliotecas de trabalho com descrições e exemplos).

 
kosmos0975:

Já descobri onde está tudo. Sobre a estrutura do roteiro acima. #WinUser32.mqh> contém o ditado "user32.dll" de importação e uma lista de funções externas adaptadas. Também #define(atribuição de nomes mnemônicos) a alguns

valores numéricos. Por que isto é feito (atribuição) e é até mesmo necessário incluir o arquivo #include< WinUser32.mqh>, porque as funções externas que são usadas mais tarde pertencem a #import "IdelLib.dll".

A lista de funções "user32.dll" parece ter suas próprias funções para seqüestro de mouse e teclado, mas nenhuma descrição foi encontrada. Gostaria de saber como fazê-lo (roteiro) funcionar corretamente (funciona os mesmos painéis interativos no Testador de Estratégia, apesar de seu

falhas persistentes por parte dos desenvolvedores) e há pessoas com conhecimento. Veja algumas roscas em *.dll-libraries. Eles começam rapidamente, depois falam sobre a vida. Entretanto, por alguma razão, há muito pouca informação (bibliotecas de trabalho com descrições e exemplos).

Cave por aí e veja se você pode encontrar algo interessante para si mesmo.
 
Quem tem um código indicador técnico iMA normal com APPLIED_PRICE selecionável ? Envie por favor!
Razão: