hini #: 터미널 버전 문제인 것 같습니다. 빌드 5120에서 테스터 입력을 재현하지 못합니다.
staticlong GetHandle( constint &ControlID[] )
{
long Handle = MTTESTER::GetTerminalHandle();
constint Size = ::ArraySize(ControlID);
for (int i = 0; i < Size; i++) {
Handle = user32::GetDlgItem(Handle, ControlID[i]);
if (Handle != 0) return Handle;
}
return(Handle);
}
b5120 버전에서 테스터 입력을 받는 문제가 수정되었습니다. 디버깅 중에 배열 정적 const int ControlID[] = {0xE81E, 0x804E}의 경우 두 번째 요소(0x804E)는 0과 같은 Handle을 반환하고 첫 번째 요소(0xE81E)는 유효한 Handle을 반환한다는 사실을 발견했습니다. 이 핸들을 사용하면 테스터 입력 데이터 수신이 올바르게 작동합니다.
테스트 결과 이 메서드는 b4879 버전에서도 작동하는 것으로 확인되었으며, 아마도 b4885에서도 문제가 없을 것입니다.
b5120 버전에서 테스터 입력 데이터를 가져오는 문제를 수정했습니다. 디버깅 중에 배열 정적 const int ControlID[] = {0xE81E, 0x804E}의 경우 두 번째 요소(0x804E)는 0과 동일한 핸들을 반환하는 반면 첫 번째 요소(0xE81E)는 유효한 핸들을 반환하는 것으로 확인되었습니다. 이 핸들을 사용하면 테스터 입력 데이터 수신이 올바르게 작동합니다.
테스트 결과 이 메서드는 b4879 버전에서도 작동하는 것으로 확인되었으며, b4885에서도 문제가 없을 것으로 예상됩니다.
가장 쉬운 방법은 다음 순서를 변경하는 것입니다.
현재 버전의 MTTester.mqh를 사용하고 계신가요? 다음 코드가 있습니다.
staticlong GetHandle( constint &ControlID[] )
{
staticconstbool MT5_b5050 = (::TerminalInfoInteger(TERMINAL_BUILD) > 5000);
long Handle = MTTESTER::GetTerminalHandle();
constint Size = ::ArraySize(ControlID);
for (int i = 0; i < Size; i++)
if (!MT5_b5050 || (ControlID[i] != 0xE81E))
Handle = user32::GetDlgItem(Handle, ControlID[i]);
return(Handle);
}
맞아요.
https://www.mql5.com/ru/blogs/post/748365
테스터 매개 변수를 가져올 수 없는 것 같아요.
텍스트를 한 번 복사하려면 Ctrl+C를 눌러야 하나요?
시도해 보았지만 테스터 매개 변수를 얻을 수 없는 것 같습니다.
마지막 오류를 참조하세요.
텍스트를 한 번 복사하려면 Ctrl+C를 눌러야 하나요?
아니요.
마지막 오류를 확인하세요.
4009 오류_미초기화_스트링
4009 오류_미초기화_스트링
재생성되지 않았습니다.
재생되지 않습니다.
터미널 버전 문제인 것 같습니다. 빌드 5120에서 테스터 입력을 재현하지 못합니다.
터미널 버전 문제인 것 같고 5120에서는 재현할 수 없습니다.
b4885에서도 모든 것이 작동합니다.
b4885에서도 모든 것이 작동합니다.
알겠습니다.
터미널 버전 문제인 것 같습니다. 빌드 5120에서 테스터 입력을 재현하지 못합니다.
b5120 버전에서 테스터 입력을 받는 문제가 수정되었습니다. 디버깅 중에 배열 정적 const int ControlID[] = {0xE81E, 0x804E}의 경우 두 번째 요소(0x804E)는 0과 같은 Handle을 반환하고 첫 번째 요소(0xE81E)는 유효한 Handle을 반환한다는 사실을 발견했습니다. 이 핸들을 사용하면 테스터 입력 데이터 수신이 올바르게 작동합니다.
테스트 결과 이 메서드는 b4879 버전에서도 작동하는 것으로 확인되었으며, 아마도 b4885에서도 문제가 없을 것입니다.
가장 쉬운 방법은 다음 순서를 변경하는 것입니다.
b5120 버전에서 테스터 입력 데이터를 가져오는 문제를 수정했습니다. 디버깅 중에 배열 정적 const int ControlID[] = {0xE81E, 0x804E}의 경우 두 번째 요소(0x804E)는 0과 동일한 핸들을 반환하는 반면 첫 번째 요소(0xE81E)는 유효한 핸들을 반환하는 것으로 확인되었습니다. 이 핸들을 사용하면 테스터 입력 데이터 수신이 올바르게 작동합니다.
테스트 결과 이 메서드는 b4879 버전에서도 작동하는 것으로 확인되었으며, b4885에서도 문제가 없을 것으로 예상됩니다.
가장 쉬운 방법은 다음 순서를 변경하는 것입니다.
현재 버전의 MTTester.mqh를 사용하고 계신가요? 다음 코드가 있습니다.