Najlepszym i najprostszym rozwiązaniem byłoby stworzenie programu rysującego bezpośrednio po ekranie.
Na Windows+Pascal jest taki sposób:
Canvas.Handle := GetWindowDC(GetDesktopWindow);
[w tej chwili możemy już korzystać np.z Canvas.ScanLine/PutPixel/czy cokolwiek tam jest]
Ew.ta funkcja:
function GetDesktopListViewHandle: THandle; var S: String; begin Result := FindWindow('ProgMan', nil); Result := GetWindow(Result, GW_CHILD); Result := GetWindow(Result, GW_CHILD); SetLength(S, 40); GetClassName(Result, PChar(S), 39); if PChar(S) <> 'SysListView32' then Result := 0; end;
Nie został podany system...
Najlepszym i najprostszym rozwiązaniem byłoby stworzenie programu rysującego bezpośrednio po ekranie.
Na Windows+Pascal jest taki sposób:
Canvas.Handle := GetWindowDC(GetDesktopWindow);
[w tej chwili możemy już korzystać np.z Canvas.ScanLine/PutPixel/czy cokolwiek tam jest]
Ew.ta funkcja:
function GetDesktopListViewHandle: THandle;
var
S: String;
begin
Result := FindWindow('ProgMan', nil);
Result := GetWindow(Result, GW_CHILD);
Result := GetWindow(Result, GW_CHILD);
SetLength(S, 40);
GetClassName(Result, PChar(S), 39);
if PChar(S) <> 'SysListView32' then
Result := 0;
end;