Hab da jetzt noch mal reingeschaut und das unter Windows 10 zum Laufen gebracht:
uShortCut.pas
Delphi-Quellcode:
procedure TShortCut.CreateShortCut(WinHandle: HWND);
...
begin
..
if Win32MajorVersion >= 10 then
begin
Prop.ProgManHandle := 0;
repeat
Prop.ProgManHandle := FindWindowEx(0, Prop.ProgManHandle, 'WorkerW', '');
Prop.ListViewHandle := FindWindowEx(Prop.ProgManHandle, 0, 'SHELLDLL_DefView', '');
until (Prop.ListViewHandle<>0) Or (Prop.ProgManHandle = 0);
End
else
begin
Prop.ProgManHandle := FindWindow('Progman', 'Program Manager');
Prop.ListViewHandle := FindWindowEx(Prop.ProgManHandle, 0, 'SHELLDLL_DefView', '');
end;
Prop.ListViewHandle := FindWindowEx(Prop.ListViewHandle, 0, 'SysListView32', 'FolderView');
ItemCount := SendMessage(Prop.ListViewHandle, LVM_GETITEMCOUNT, 0, 0);
...
Allerdings muss man dann die OTTB.config aus dem Post oben löschen (sie führt zu einem Crash weil wohl ein paar der Links nicht vorhanden oder ungültig sind).
Kannst du gerne tun aber ich ändere nichts am Code bzg. der Überprüfung von der System Version.
Das muss so laufen und tut es auch so wie man hört.
Denn @jaenicke verwendet auch W10 das kann nicht unterschiedlich sein.
Trotzdem Danke!
gruss