기고글 토론 "DLLs을 사용하지 않고 명명된 파이프를 사용하여 MetaTrader 5와 통신하기" - 페이지 5

 
안녕하세요 MQL5 파일을 찾을 수 없습니다.
 
vanvolxem:
안녕하세요 MQL5 파일을 찾을 수 없습니다.
무슨 뜻인가요? mql5 파일은 기사 아래에 첨부되어 있습니다.
 
pipeclient.mq5 애플리케이션을 테스트하려고 하지만 링크 로드가 올바르지 않습니다,

나는 컴퓨터가 아니라고 말했습니다.

내 거래 시스템이 상관 관계를 기반으로하기 때문에 MT5 외부에서 분석을위한 데이터베이스를 만들고 싶었을 것입니다. 답변 해 주셔서 감사합니다.
Practical Application Of Databases For Markets Analysis
Practical Application Of Databases For Markets Analysis
  • 2010.05.18
  • Alexander
  • www.mql5.com
Working with data has become the main task for modern software - both for standalone and network applications. To solve this problem a specialized software were created. These are Database Management Systems (DBMS), that can structure, systematize and organize data for their computer storage and processing. As for trading, the most of analysts don't use databases in their work. But there are tasks, where such a solution would have to be handy. This article provides an example of indicators, that can save and load data from databases both with client-server and file-server architectures.
 
vanvolxem:
pipeclient.mq5 애플리케이션을 테스트하려고 하지만 링크 로드가 올바르지 않습니다,

나는 컴퓨터가 아니라고 말했습니다.

내 거래 시스템이 상관 관계를 기반으로하기 때문에 MT5 외부에서 분석을위한 데이터베이스를 만들고 싶었을 것입니다. 답변 해 주셔서 감사합니다.

네, 알겠습니다. 서비스 데스크에 보고했습니다.

이 파일은 MT5 플랫폼에서 직접 다운로드할 수 있습니다. 파이클라이언트 키워드로 검색 도구를 사용하기만 하면 됩니다.

 
angevoyageur:

네, 알겠습니다. 서비스 데스크에 보고했습니다.

이 파일은 MT5 플랫폼에서 직접 다운로드할 수 있습니다. 파이클라이언트 키워드로 검색 도구를 사용하기만 하면 됩니다.

감사합니다, 작동합니다.
 
vanvolxem:
pipeclient.mq5 애플리케이션을 테스트하려고 하지만 링크 로드가 올바르지 않습니다,

나는 컴퓨터가 아니라고 말했습니다.

내 거래 시스템이 상관 관계를 기반으로하기 때문에 MT5 외부에서 분석을위한 데이터베이스를 만들고 싶었을 것입니다. 답변 해 주셔서 감사합니다.
여기를 시도하세요: pipeclient.mq5
 
서버가 이중 유형의 데이터를 수락하도록하는 방법, 누군가를 도와주세요.
 

__countof 함수가 어디에 설명되어 있는지 여전히 이해가 되지 않습니다.

Code::Block은 이 함수에 대해 맹세합니다.

C++ 문서에서도 찾지 못했습니다.


컴파일되지 않습니다.

sizeof로 대체했습니다. 컴파일되었습니다.


또한 세 개의 라이브러리를 연결하고 #define UNICODE를 사용해야 했습니다.

 

다음과 같은 질문이 있습니다:

문서에 다음과 같이 나와 있습니다:

서버에 연결할 때 'RemoteServerName'이라는 원격 컴퓨터 또는 로컬 컴퓨터를 두 번 확인하여 서버에 연결하세요. 로컬 컴퓨터에서는 모든 것이 작동하고 아무런 문제가 없습니다.

void OnStart()
  {
//--- 파이프 서버 대기
   while(!IsStopped())
     {
      if(ExtPipe.Open("\\\\RemoteServerName\\pipe\\MQL5.Pipe.Server",FILE_READ|FILE_WRITE|FILE_BIN)!=INVALID_HANDLE) break;
      if(ExtPipe.Open("\\\\.\\pipe\\MQL5.Pipe.Server",FILE_READ|FILE_WRITE|FILE_BIN)!=INVALID_HANDLE) break;
      Sleep(250);
     } 

그러나 원격 VPS에서 PipeServer.exe를 실행 한 다음 클라이언트 스크립트를 다른 PC의 차트에 던지고 RemoteServerName을 VPS에 속한 이름으로변경하면 서버와 클라이언트가 서로를 볼 수 없습니다. 즉, 채널이 작동하지 않고 연결이되지 않습니다.

여기서 문제는 무엇입니까, 특정 VPS의 이름이 처음에 PipeServer.exe에 작성되어야합니까?

 
Igor Semyonov:

다음과 같은 질문이 있습니다:

문서에 다음과 같이 나와 있습니다:

서버에 연결할 때 'RemoteServerName'이라는 원격 컴퓨터 또는 로컬 컴퓨터를 두 번 확인하여 서버에 연결하세요. 로컬 컴퓨터에서는 모든 것이 작동하고 아무런 문제가 없습니다.

그러나 원격 VPS에서 PipeServer.exe를 실행한 다음 클라이언트 스크립트를 다른 PC의 차트에 던져 RemoteServerName을 VPS에 속한 이름으로변경하면 서버와 클라이언트가 서로 보이지 않고 즉, 채널이 작동하지 않고 연결되지 않습니다.

여기서 문제가되는 것은 특정 VPS의 이름이 처음에 PipeServer.exe에 작성되어야한다는 것입니까?

내가 틀렸을 수도 있습니다.

PipeServer.exe는 오래된 기술이며 보안 문제가 있습니다.
오늘날 포트는 OS에서 기본적으로 닫혀 있으므로 명시적으로 허용해야 합니다.


원격 액세스를 위해 파이프라이닝을 구성하는 경우 여기에 레시피를 설명하세요.
그리고 팁으로 WebRequest 기능을 살펴보면 파이프라이닝을 대체할 수 있습니다.