오류, 버그, 질문 - 페이지 2647

 

이제 MetaEditor에서 프로젝트 작업 시 "프로젝트" 탭의 프로젝트 파일 을 예를 들어 새로 생성된 하위 폴더로 이동하려면 전체 "의식"을 수행해야 합니다.

- 전송할 파일에 대한 모든 변경 사항이 저장되었는지 확인해야 합니다. 그렇지 않으면 수행한 작업이 손실될 수 있습니다.
- "프로젝트" 탭의 파일을 새 위치로 드래그합니다 .
- 이미 잘못된 경로를 사용하고 있으므로 전송된 파일이 있는 모든 탭을 닫습니다.
- 닫힌 탭을 다시 열면 이제 새 위치 경로가 사용됩니다.
- 열려 있는 탭을 닫기 전과 같은 순서로 정렬합니다.

권하다:
예를 들어 새로 생성된 하위 폴더로 "프로젝트" 탭에서 프로젝트 파일을 이동할 때:
- 열려 있지만 변경되지 않은 파일의 경우 위치 경로를 자동으로 업데이트합니다.
- 수정된 파일의 경우 - "보존 상태로 이동", "변경 사항이 손실된 상태로 이동" 또는 "전송 작업 취소"와 같은 추가 확인을 요청합니다.


 
Igor Makanu :

나는 12GB의 메모리, Windows 10 OS, 여유 메모리는 약 8GB입니다


MT4/MT5 터미널에서 허용되는 최대 라인 길이를 결정하기 위해 이 테스트가 필요했습니다.

이제 Redis 데이터베이스를 통해 터미널 간에 교환을 설정하고 싶습니다.

Redis는 매우 간단한 데이터베이스이며 문자열(키 - 값 --> 문자열 - 문자열)로만 작동합니다.

어제 Base64에서 POD 구조의 직렬화를 수행했지만 데이터 크기는 약 1/3 증가했습니다.

이 경우에도 트랜잭션당 400MB 크기의 구조를 교환할 수 있다고 생각합니다. 이것은 어떤 목적으로도 충분합니다! ;)

흥미롭네요. "Redis"를 확인하겠습니다. 잘 모르겠습니다.

그래서 제 쪽에서 코드를 확인했는데 너무 느려서 1분 후에 중지했습니다. 그래서 조금 바꿨어요 ;-)

 #define STEP       1000000      // 1 million
#define MILLION   1000000
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart ()
  {
   printf ( "m_physical = %i MB, m_total = %i MB, m_available = %i MB, m_used = %i MB, limit = %i MB, used = %i MB" ,
         TerminalInfoInteger ( TERMINAL_MEMORY_PHYSICAL ), TerminalInfoInteger ( TERMINAL_MEMORY_TOTAL ),
         TerminalInfoInteger ( TERMINAL_MEMORY_AVAILABLE ), TerminalInfoInteger ( TERMINAL_MEMORY_USED ),
         MQLInfoInteger ( MQL_MEMORY_LIMIT ), MQLInfoInteger ( MQL_MEMORY_USED ));

   string s = "" ;
   int size= INT_MAX ;

   do
    {
    size-=STEP;
    }
   while (! StringInit (s,size, USHORT_MAX ));

   long length = StringLen (s);
   printf ( "StringLen = %lli millions characters, m_used = %i MB, used = %i MB" , length/MILLION, TerminalInfoInteger ( TERMINAL_MEMORY_USED ), MQLInfoInteger ( MQL_MEMORY_USED ));
  }

2020.02.13 15:50:51.199 1111R-2646(EURUSD, M1) m_physical=16230MB, m_total=32460MB, m_available=31786MB, m_used=674MB, limit=838 used=
2020.02.13 15:50:51.763 1111R-2646 (EURUSD, M1) StringLen = 1073백만 자 , m_used= 2722MB , used=2048MB

1초 미만입니다. 마지막으로 2GB 또는 약 10억 7300만 문자인 mql5 제한이 있습니다.

 

ico 파일을 코드베이스에 로드할 수 없는 이유를 설명하십시오. 이들은 프로그램의 표준 부분이며 MQL을 사용하여 연결됩니다. 그들이 금지되었다는 것은 분명히 잘못된 것입니다. 그러나 더 많은 것이 올 것입니다.

올바르게 준비된 ico는 작업에 영향을 주지 않고 png로 이름을 바꿀 수 있습니다. 여전히 일반적으로 프로그램에 연결되어 있고(#property 아이콘 "mql5pack.png" 사용) 속성 대화 상자에 표시됩니다. 그러나 이 모든 것은 로컬에서만 가능합니다. 그런 png를 코드베이스에 업로드했는데 소스를 확인할 때 오류가 발생했습니다.

mql5pack.mq5(27,11) : error 341: cannot open icon file 'mql5pack.png'
main file not found

mql5 관리자에게 다운로드 수정 및/또는 최소한 아이콘 확인을 요청합니다.

추신. 수정, 사이트가 조용히 png 파일을 먹는 것 같습니다. 즉, 다운로드를 허용하지만 컴파일 된 파일 목록에는 없습니다. MQL5\Images, MQL5\Files를 시도했습니다. 서버에는 아무 것도 로드되지 않았지만 오류 없이 자동으로 로드되었습니다. 확인할 때 오류가 발생합니다.

 
컴파일 오류를 해결하는 방법을 알려주실 수 있습니까?
 struct STRUCT
{
   static const int Array[];
   int Array2[ sizeof (STRUCT::Array)]; // unresolved static variable 'STRUCT::Array'
};

static const int STRUCT::Array[] = { 1 , 2 };

void OnStart ()
{
   static const int Array[] = { 1 , 2 };
  
   int Array2[ sizeof (Array)]; // OK
}
 

사람들, 장소를 변경하지 않고 MT5에서 공개 주문을 만드는 방법은 무엇입니까?

 
Сергей Проценко :

사람들, 장소를 변경하지 않고 공개 주문을 만드는 방법?

실례합니다. 어떻게 장소를 바꾸나요?

 
Сергей Таболин :

실례합니다. 어떻게 장소를 바꾸나요?

이익에 따라 이익이 크면 아래로 이동하고 다른 주문에 대해 이익이 커지면 자리를 바꿉니다. 유로의 이익이 금보다 크면 유로의 주문은 낮아지고 금의 경우 더 높아집니다.
 
Сергей Проценко :
이익에 따라 이익이 크면 아래로 이동하고 다른 주문에 대해 이익이 커지면 자리를 바꿉니다.

기호, 티켓, 시간 열 중 하나의 헤더를 클릭합니다.

 
Vladimir Karputov :

기호, 티켓, 시간 열 중 하나의 헤더를 클릭합니다.

그냥 그런 결과입니다.
 
Сергей Проценко :
그냥 그런 결과입니다.

기호, 티켓, 시간 열 중 하나의 헤더를 클릭합니다.

왼쪽 키로 클릭하십시오. 제목을 클릭하십시오.