MQL4 명령 줄 컴파일로 잘못된 EX4 (해결 된)
페이지 1 중 912 12 마지막마지막
결과 1 - 10 / 11

실: MQL4 명령 줄 컴파일로 잘못된 EX4 (해결 된)

  1. #1
    헤이,

    MT4 빌드 1090과 MetaEditor V5 빌드 1601을 사용하고 있습니다. MT4 인디케이터를 자동으로 다시 컴파일해야합니다. 이를 위해 Windows Task Planner를 통해 주기적으로 호출되는 작은 스크립트를 작성했습니다.
    삽입 된 코드 @echo C : \ Program Files (x86) \ SomeBrokerName \ metaeditor.execompile:...MetaQuotes\Terminal\...MM 4_Indiors\MyIndior.mq4log이 작동합니다. 로그 파일 출력에 컴파일이 성공적으로 완료되었다고 표시됩니다 (0 개의 경고, 0 개의 오류). 그러나 표시기를 차트에 넣으려고 할 때마다 너무 자주 발생하여 작동하지 않습니다. 대신 전문가 탭에 오류가 표시됩니다.
    삽입 된 코드 C : \ ... \ AppData \ Roaming \ MetaQuotes \ Terminal \ ... \ MQL4 \ Indiors \ MyIndior.ex4를로드 할 수 없습니다. 다시 표시기를 다시 컴파일해야만 작동합니다. 때로는 그렇지 않을 때까지 반복해서 다시 컴파일해야합니다.

    나는 다른 컴퓨터, 다른 OS (Windows 7, Windows 10, ...)에서 이미 그것을 시도했다. 같은 결과. 때로는 효과가 있고 때로는 그렇지 않습니다.

    왜 여기에 무슨 문제가 있고 왜 그렇게 자주 EX4 파일을 잘못 생성하는 것 같습니까? 이 문제를 피하기 위해 제가 할 수있는 일이 있습니까?

    미리 감사드립니다.

  2. #2
    포함 파일을 사용하고 있습니까? 또한 MT4 (터미널 : 빌드 1126, 메타 편집기 : 빌드 1861) 용 새 버전이 있습니다. metaquotes 데모 서버에서 여기에서 다운로드하거나 데모 계정을 만들면 자동으로 업데이트됩니다.

  3. #3
    예, 포함 파일을 사용하고 있습니다. 이로 인해 문제가 발생합니까? 나는 새로운 건축물을 시험 할 것이다. 힌트를 가져 주셔서 감사합니다!

  4. #4
    Quote 원래에 의해 게시 됨 ;
    예, 포함 파일을 사용하고 있습니다. 이로 인해 문제가 발생합니까? 나는 새로운 건축물을 시험 할 것이다. 힌트를 가져 주셔서 감사합니다!
    예. 포함 파일에 대한 경로를 지정해야합니다. 삽입 된 코드 C : \ Program Files \ TradingPlatform \ metaeditor64.exe컴파일 : C : \ Program Files \ TradingPlatform \ MQL5 \ Scriptsinclude : C : \ Program Files \ TradingPlatform 2 \ MQL5

  5. #5
    흠, 나는 그것을 시도 할 수있다. 그러나 포함 파일을 찾을 수없는 경우 컴파일 오류가 발생하지 않습니까?

  6. #6

    Quote 원래에 의해 게시 됨 ;
    흠, 나는 그것을 시도 할 수있다. 그러나 포함 파일을 찾을 수없는 경우 컴파일 오류가 발생하지 않습니까?
    예. mqh 파일을 찾을 수없는 경우 오류가 발생합니다 ...

  7. #7
    실수로 초기 정적 변수를 잘못 작성한 것 같습니다 (경우에 따라 다름). 그래서 당신은 그것이 필요할 때마다 컴파일해야한다.

  8. #8
    Quote 원래에 의해 게시 됨 ;
    mqh 파일을 찾을 수 없다면 오류가 발생합니다 ...
    좋습니다.하지만 그렇지 않습니다. 로그 파일에는 0 개의 경고와 0 개의 오류가 표시되며 MyIndior.ex4 파일이 생성됩니다. 하지만 차트에 인디케이터를 할당하려고 할 때 Can not load ... \ MyIndior.ex4라고 표시되고 결국 어느 시점에서 작동 할 때까지 다시 컴파일 프로세스가 시작됩니다. 때로는 작동시킬 때까지 2-3 번 다시 컴파일해야합니다. 때때로 그것은 처음으로 작동합니다. 이것은 나를 당황하게하는 것입니다. 어떤 이유로 든 잘못된 EX4 파일을 생성하는 것 같습니다. 그게 로그 파일이야 : 삽입 된 코드 C : \ Projects \ 2018 \ 08 \ ... \ Compiler \ Data \ MyIndior_123456_20180930.mq4 : 정보 : 'MyIndior_123456_20180930.mq4'C : \ Projects \ 2018 \ 08 \ ... \ Compiler \ Data \ Include \ MyIndior.mqh : 정보 : 'MyIndior.mqh'포함 결과 : 0 개 오류, 0 개 경고, 컴파일 시간 : 207 msec 차트에 넣을 때 : 삽입 코드 2018.08.29 23 : 22 : 58.074 'C : \ Users \ ... \ AppData \ Roaming \ MetaQuotes \ Terminal \ ... \ MQL4 \ indiors \ MyIndior_123456_20180930.ex4'를로드 할 수 없습니다. 또한 최신 MT4 및 MetaEditor 빌드 결과. 오류가 여전히 존재합니다.

  9. #9

    Quote 원래에 의해 게시 됨 ;
    실수로 초기 정적 변수를 작성했습니다 (어떤 경우).
    그게 무슨 뜻 이죠? 몇 가지 정적 변수를 사용하고 있습니다. 하지만 그들은 다음과 같습니다 : 삽입 된 코드 void OnCalculate (...) {static datetime _lastCheck = 0; 날짜 시간 barTime = 시간 # 91; 0 # 93 ;; if (barTime gt; _lastCheck) {_lastCheck = barTime; ...}} 내가 말했듯이 : 종종 차트에로드되지 않습니다. 몇 번 다시 컴파일해야하고 매번 작동합니다. 또한 MetaEditor에서 수동으로 컴파일 할 때 문제가 발생하지 않습니다. 커맨드 라인을 통해 컴파일 할 때만 발생하는 것 같습니다.

  10. #10
    Ok, 문제가 발견되었습니다 ...
    이 과정은 좀 더 복잡합니다. 컴파일은 다른 시스템에서 발생합니다 (빌드 서버). 컴파일이 끝나면 파일을 FTP 서버에 업로드하고 랩톱에서 다운로드합니다. 그리고 FTP 전송 중에 가끔 뭔가 잘못 될 것 같습니다. 전송 모드 (ASCII vs Binary)인지 확인하지 말고 확인해야합니다. 나는 여기서 다운로드 한 EX4 파일과 빌드 서버에있는 EX4 파일의 해쉬를 비교해 보았는데, 그 차이점은 다르다. RDP를 통해 EX4 파일을 빌드 서버에서 직접 복사하고 여기에서 사용하면 다운로드 된 파일은 작동하지 않습니다 ... AAAARG!

게시 권한

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
쿠키 정책
쿠키 정책: koreaforex 웹사이트는 쿠키를 사용하며, 웹사이트를 사용자는 쿠키 사용에 동의하는 것입니다. 자세한 정보는 '쿠키 공개' 를 읽어주십시오.