"10분 안에 MQL5용 DLL 라이브러리를 작성하고 데이터를 교환하는 방법" 기사에 대한 토론 - 페이지 5 123456789101112 새 코멘트 Denis Kirichenko 2010.01.27 12:23 #41 mql5 писал(а) # : 1) 터미널 버전이 32비트인지 64비트인지? 2) 32비트 또는 64비트 버전의 dll은 무엇입니까? 1) 선택은 무엇입니까? 제 생각에는 x86 만 여기에서 다운로드됩니다 ... 2) DLL 32 Denis Kirichenko 2010.01.27 12:51 #42 MT5를 다시 설치하면 다음과 같은 결과가 나타납니다. 스크립트가 실행되면 로그에 다음 정보가 나타납니다. 'MQL5DLLSamples.dll'에서 fnCalculateSpeed 함수 를 찾을 수 없습니다. 만일을 대비하여 Dependency Walker 의 라이브러리 스냅샷을 첨부하겠습니다. Slava 2010.01.27 13:23 #43 denkir : MT5를 다시 설치하면 다음과 같은 결과가 나타납니다. 스크립트가 실행되면 로그에 다음 정보가 나타납니다. 'MQL5DLLSamples.dll'에서 fnCalculateSpeed 함수를 찾을 수 없습니다. 만일을 대비하여 Dependency Walker 의 라이브러리 스냅샷을 첨부하겠습니다. 재설치 된 터미널 의 빌드 번호 는 무엇입니까? Renat Fatkhullin 2010.01.27 13:57 #44 stringo : 재설치 된 터미널 의 빌드 번호 는 무엇입니까? 분명히 오래된 240 빌드가 아닙니다. Denis Kirichenko 2010.01.27 15:23 #45 Renat писал(а) # : 분명히 오래된 240 빌드가 아닙니다. 예, 확실히 마지막이 아닙니다 ... 240번째 빌드로 업데이트한 후 스크립트의 첫 번째 실행이 제대로 작동했습니다. 나는 기뻐했다. 그러나 후속 발사는 충돌로 이어졌습니다. MT 4는 병렬로 작동했습니다. Denis Kirichenko 2010.01.27 15:32 #46 재부팅 후 모든 것이 작동하는 것 같았습니다! :-)) fnCrashTest(int arr) 함수를 주석 처리했습니다. 도와주신 모든 분들께 감사드립니다! Andrey Dik 2010.02.04 22:02 #47 일반적으로 dll을 사용하여 계산 속도를 2.5배 이상 높이지 못했습니다. 이것은 MQL5의 빠른 속도를 말하며 대부분의 거래 작업에서 코드를 보호해야 하고 "무거운" 계산이 필요한 경우를 제외하고는 dll을 어지럽히는 것은 의미가 없습니다. Renat Fatkhullin 2010.02.07 01:31 #48 joo : 일반적으로 dll을 사용하여 계산 속도를 2.5배 이상 높이지 못했습니다. 이것은 MQL5의 빠른 속도를 말하며, 코드를 보호해야 하고 "무거운" 계산이 필요한 경우를 제외하고 대부분의 거래 작업에서 dll을 사용하는 것은 의미가 없습니다. 최종 MQL5 레지스터 최적화는 아직 활성화되지 않았습니다 . 실행 속도 는 여전히 심각하게 증가할 것입니다. Anton 2010.02.21 22:14 #49 Renat, 기사에 감사드립니다. 많은 분들에게 유용할 것 같아요. dll과 관련된 질문이 있습니다. (터미널 249, 에디터 248) 예시 우리는 천칭 자리 demo.dll을 가지고 있으며 하나의 기능만 가지고 있습니다. _DLLAPI void __stdcall demo( char *stream, char *buf){ buf=stream;} mql 스크립트 demo.mq5가 있습니다. #property copyright "2010, MetaQuotes Software Corp." #property link "http://www.mql5.com" #property version "1.00" #import "demo.dll" void demo( string s1, string &s2); #import void OnStart(){ string a= "TEST" ; string b; demo(a,b); Print (b); } 컴파일러는 오류나 경고를 생성하지 않습니다. 터미널에서 실행하면 다음을 얻습니다. 시각적 디버그를 확인할 때 demo.dll 함수 자체가 문자열이 아니라 첫 번째 문자를 수신한다는 것도 발견했습니다. 문제 문제가 무엇입니까? MQL에서 dll로 문자열을 인간적으로 전달하는 방법은 무엇입니까? Alexander 2010.02.21 23:06 #50 사용 char 대신 wchar_t 123456789101112 새 코멘트 트레이딩 기회를 놓치고 있어요: 무료 트레이딩 앱 복사용 8,000 이상의 시그널 금융 시장 개척을 위한 경제 뉴스 등록 로그인 공백없는 라틴 문자 비밀번호가 이 이메일로 전송될 것입니다 오류 발생됨 Google으로 로그인 웹사이트 정책 및 이용약관에 동의합니다. 계정이 없으시면, 가입하십시오 MQL5.com 웹사이트에 로그인을 하기 위해 쿠키를 허용하십시오. 브라우저에서 필요한 설정을 활성화하시지 않으면, 로그인할 수 없습니다. 사용자명/비밀번호를 잊으셨습니까? Google으로 로그인
1) 터미널 버전이 32비트인지 64비트인지?
2) 32비트 또는 64비트 버전의 dll은 무엇입니까?
1) 선택은 무엇입니까? 제 생각에는 x86 만 여기에서 다운로드됩니다 ...
2) DLL 32
MT5를 다시 설치하면 다음과 같은 결과가 나타납니다. 스크립트가 실행되면 로그에 다음 정보가 나타납니다. 'MQL5DLLSamples.dll'에서 fnCalculateSpeed 함수 를 찾을 수 없습니다.
만일을 대비하여 Dependency Walker 의 라이브러리 스냅샷을 첨부하겠습니다.
MT5를 다시 설치하면 다음과 같은 결과가 나타납니다. 스크립트가 실행되면 로그에 다음 정보가 나타납니다. 'MQL5DLLSamples.dll'에서 fnCalculateSpeed 함수를 찾을 수 없습니다.
만일을 대비하여 Dependency Walker 의 라이브러리 스냅샷을 첨부하겠습니다.
재설치 된 터미널 의 빌드 번호 는 무엇입니까?
분명히 오래된 240 빌드가 아닙니다.
예, 확실히 마지막이 아닙니다 ...
240번째 빌드로 업데이트한 후 스크립트의 첫 번째 실행이 제대로 작동했습니다. 나는 기뻐했다. 그러나 후속 발사는 충돌로 이어졌습니다. MT 4는 병렬로 작동했습니다.
재부팅 후 모든 것이 작동하는 것 같았습니다! :-))
fnCrashTest(int arr) 함수를 주석 처리했습니다.
도와주신 모든 분들께 감사드립니다!
일반적으로 dll을 사용하여 계산 속도를 2.5배 이상 높이지 못했습니다. 이것은 MQL5의 빠른 속도를 말하며, 코드를 보호해야 하고 "무거운" 계산이 필요한 경우를 제외하고 대부분의 거래 작업에서 dll을 사용하는 것은 의미가 없습니다.
Renat, 기사에 감사드립니다. 많은 분들에게 유용할 것 같아요. dll과 관련된 질문이 있습니다. (터미널 249, 에디터 248)
예시
우리는 천칭 자리 demo.dll을 가지고 있으며 하나의 기능만 가지고 있습니다.
mql 스크립트 demo.mq5가 있습니다.
컴파일러는 오류나 경고를 생성하지 않습니다.
터미널에서 실행하면 다음을 얻습니다.
시각적 디버그를 확인할 때 demo.dll 함수 자체가 문자열이 아니라 첫 번째 문자를 수신한다는 것도 발견했습니다.
문제
문제가 무엇입니까? MQL에서 dll로 문자열을 인간적으로 전달하는 방법은 무엇입니까?