Ошибки, баги, вопросы - страница 3729

 
Roman #:
Не пользуюсь мт4, по расширению файла в принте видно, что mq5
За битность знаю, коммент даже специально написал.

C:\Windows\SysWOW64

Явно путь к kernel32.dll пропиши, если полечится, то у тебя не та либа находится загрузчиком

 
Vladimir Simakov #:

C:\Windows\SysWOW64

Явно путь к kernel32.dll пропиши, если полечится, то у тебя не та либа находится загрузчиком

Другие функции по пути #import "kernel32.dll" выполняются без проблем, значит линковка есть.

Посмотрел поиском где лежит kernel32.dll, какой то замудрённый путь в Windows 11
добавил этот путь

#import "C:\Windows\WinSxS\wow64_microsoft-windows-kernel32_31bf3856ad364e35_10.0.22621.5415_none_7df8e1db0642ade4\kernel32.dll"
   //Для 64-битной системы
   void QueryUnbiasedInterruptTimePrecise(ulong & lpUnbiasedInterruptTimePrecise);
#import

нифига, тоже ошибка

cannot load 'C:\Windows\WinSxS\wow64_microsoft-windows-kernel32_31bf3856ad364e35_10.0.22621.5415_none_7df8e1db0642ade4\kernel32.dll' [193]
cannot call 'void kernel32::QueryUnbiasedInterruptTimePrecise(ulong&)', module 'C:\Windows\WinSxS\wow64_microsoft-windows-kernel32_31bf3856ad364e35_10.0.22621.5415_none_7df8e1db0642ade4\kernel32.dll' is not loaded
unresolved import function call in 'TEST.mq5' (1,1)
прошлая ошибка была cannot find
по этому пути cannot load
 
Roman #:
QueryUnbiasedInterruptTimePrecise

Правильный, 64-х битный Kernel32.dll живет в System32

А проблема, скорее всего,  в этом:

To compile an application that uses this function, define _WIN32_WINNT as 0x0601 or later. For more information, see Using the Windows Headers.

https://learn.microsoft.com/en-us/windows/win32/api/realtimeapiset/nf-realtimeapiset-queryunbiasedinterrupttimeprecise

Но, если проблема в этом, то это косяк метаквотов.

Using the Windows Headers - Win32 apps
Using the Windows Headers - Win32 apps
  • stevewhims
  • learn.microsoft.com
Use the Windows header files to create applications that use the Windows API.
 
Vladimir Simakov #:
System32

шляпа

#import "C:\Windows\System32\kernel32.dll"
   //Для 64-битной системы
   void QueryUnbiasedInterruptTimePrecise(ulong & lpUnbiasedInterruptTimePrecise);
#import
cannot find 'void kernel32::QueryUnbiasedInterruptTimePrecise(ulong&)' in module 'C:\Windows\System32\kernel32.dll'
unresolved import function call in 'TEST.mq5' (1,1)
 
Roman #:

шляпа

По факту, эта функция в kernelbase.dll живет. Мелкомягкие тоже в своей документации косячат)
 
Vladimir Simakov #:
По факту, эта функция в kernelbase.dll живет. Мелкомягкие тоже в своей документации косячат)

Владимир, вы как всегда лучший! Спасибо за помощь.

Действительно, у мелкомягких не та dll указана.
Работает

#import "C:\Windows\System32\kernelbase.dll"
   //Для 64-битной системы
   void QueryUnbiasedInterruptTimePrecise(ulong & lpUnbiasedInterruptTimePrecise);
#import


//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
{

   ulong uptime100ns = 0;
   
   if(_IsX64)
      QueryUnbiasedInterruptTimePrecise(uptime100ns);

   Print(uptime100ns);
2026.03.29 15:59:12.888 TEST (EURUSD,M1)        2516970011526
 
Добрый день ! Я не понимаю как должна работать платформа , объясните пожалуйста . В последнее время часто виснет , когда делаю какие то действия , больше времени думает пока появиться горизонтальный уровень .Приходиться даже перезапускать ПК . Во время торговли график глючит.
 
Аргентум #:
Добрый день ! Я не понимаю как должна работать платформа , объясните пожалуйста . В последнее время часто виснет , когда делаю какие то действия , больше времени думает пока появиться горизонтальный уровень .Приходиться даже перезапускать ПК . Во время торговли график глючит.

Оставьте один график, остальные закройте, отключите все индикаторы и советники и попробуйте так.

В большинстве случаев причиной тормозов является некачственный код индикатора или советника.

 

Уважаемые разработчики.

При переключении на профиль, в котором несколько окон графиков и одно из которых было полностью развёрнуто, происходит калейдоскоп чередования всех имеющихся окон графиков в профиле, развернутых полностью.

Кроме того, что это занимает много времени, если окон в открывающемся профиле было много, но и зрительно такой дикий калейдоскоп просто сводит с ума.

Как происходит такой эффект видно в приложенном видео.

Пожалуйста, сделайте так чтобы при переключении на такой профиль, где одно из окон графиков было полностью развернуто, чтобы другие не развернутые окна графиков не мельтешили бы.

Файлы:
sducq9_r950s2.mp4  3170 kb
 
Vladimir Pastushak #:

Оставьте один график, остальные закройте, отключите все индикаторы и советники и попробуйте так.

В большинстве случаев причиной тормозов является некачственный код индикатора или советника.

Раньше такое было очень редко , индикаторы ,скрипты не мешали , ничего не тормозило , не было таких проблем . Даже было больше сотни графиков показанных в низу ,и работало нормально .