Чудеса и волшебство творятся при использовании функции RectangleToScreen

PascalABCCompiler.Core v3.2.0.1317 (26.09.2016), debug version Runtime version: 4.0.30319.42000 OS version: Microsoft Windows NT 6.2.9200.0 Processor count: 4 WorkingSet: 178000 kb

Здравствуйте. Использую функцию MainForm.RectangleToScreen. Выходит ошибка если где-то в коде поставить точку останова.

uses graphabc;

begin
var srcRect:system.Drawing.Rectangle := new system.Drawing.Rectangle(0,0,windowwidth,windowheight);
var destRect:system.Drawing.Rectangle := MainForm.RectangleToScreen(srcRect);
writeln(destRect); 
end.

А без точки останова всё работает?

Ага. Ни каких проблем, пока дебажить не начинаешь.

Ну, дебаггер не наш, он слабенький.

Ну наверно это баг в writeln в GraphABC. Надо использовать Invoke. Отладчик дотнетовский на базе COM, стандартный. Так что врядли слабенький

Нет. Writeln я ввел для примера, так с любой строкой в программе. Куда бы не поставил точку останова и если есть функция RectangleToScreen, то программа отправляется в полет. Попробую Invoke.

GraphABC тут не при чём, во у меня есть модуль собственный, GData, по сути замена ему, если включить отладку(точку останова эту) до того как выполнится следующая строчка: gr := Graphics.FromHwnd(MainForm.Handle); то возникает ошибка, и я уверен почти на 100% что это одно и тоже