Einzelnen Beitrag anzeigen

dGeek
(Gast)

n/a Beiträge
 
#1

TJumpTask.Apply funktioniert nicht mehr

  Alt 20. Jul 2016, 18:44
Schon seit es das Feature in Windows gibt, benutze ich die Komponente TJumpTask.
Heute habe ich festgestellt, dass Apply nicht mehr funktioniert, eine Exception wirft und somit keine Einträge mehr in die JumpList hinzugefügt werden.

Mein simpler Code:
Delphi-Quellcode:
var
 aJLItem: TJumpTask;
begin
 try
  aJLItem := TJumpTask.Create;
  aJLItem.Title := aCaption;
  aJLItem.ApplicationPath := ParamStr(0);

  aJLItem.Arguments := aArguments;

  aJLItem.CustomCategory := 'Test-Cat';

  aJumpList.JumpItems.Add(aJLItem);
  aJumpList.Apply; // <= Exception, siehe unten
 except
 end;
end;
Also bin ich auf die Suche gegangen. In der Prozedur Apply tritt die Exception bei folgender Zeile auf:
CheckResult(cdl.AppendCategory(PWideChar(Categories[cnt]), oav));
Delphi-Quellcode:
class procedure TJumpList.CheckResult(ACode: HRESULT);
var
 S: string;
begin
 if (not SUCCEEDED(ACode)) then
  begin
   S := SysErrorMessage(Cardinal(ACode));
   if S = 'then
    FmtStr(S, 'Error %.8x', [ACode]);
   raise Exception.Create(S);
  end;
end;
Ich habe nie irgendetwas geändert. Weder an der Komponente, noch an meinem eigenen Code.

Die Exception ist wenig aussagekräftig:
Zitat:
---------------------------
Benachrichtigung über Debugger-Exception
---------------------------
Im Projekt TestProjekt.exe ist eine Exception der Klasse Exception mit der Meldung 'Zugriff verweigert' aufgetreten.
---------------------------
Anhalten Fortsetzen Hilfe
---------------------------
Was zur Hölle kann da los sein?
  Mit Zitat antworten Zitat