Как узнать цвет пикселя с графика МТ4?

 
Сделал с помощью WinAPI 
#import "gdi32.dll"
int    GetPixel(int hdc, int x, int y);
#import 

int OnInit()
  {
   int wh = WindowHandle(_Symbol, _Period);
   color cl = GetPixel(wh, 100, 100); 
   Print("color ", ColorToString(cl));
   
   return(INIT_SUCCEEDED);
  }

Результат всегда получается 255;255;255. Что не так?

 
olegeskevich:
Сделал с помощью WinAPI 

Результат всегда получается 255;255;255. Что не так?

В GetPixel() Вы передаете дескриптор окна, а нужно контекст устройства. Для получения контекста устройства используйте GetDC().

 
Ihor Herasko:

В GetPixel() Вы передаете дескриптор окна, а нужно контекст устройства. Для получения контекста устройства используйте GetDC().

И потом не забыть вызвать ReleaseDC после GetPixel.
 
Вообще-то есть такая программа pixie.exe. Я ей пользуюсь, она не требует инсталляции. После её запуска указываете мышью точку в любом месте экрана. Программа pixie.exe выдаёт цвет этой точки в модели RGB или в другой модели ...
Причина обращения: