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).
Also zu deinem WorkerW Problem.
Ich denke es macht einen großen Unterschied ob du W10 neu aufgesetzt, von Vista oder W7 aktualisiert hast.
Das verursacht höchstwahrscheinlich dein WorkerW Problem da wirst du auch mit anderen Programmen auf widerstand stoßen.
Anders kann ich mir nicht vorstellen das andere diese Probleme nicht haben.
Ist jetzt nicht auf das Programm bezogen sondern generell.
Wollte das nur nochmal ansprechen.
gruss