Thema: Delphi Autostart über Registry

Einzelnen Beitrag anzeigen

bubabo

Registriert seit: 19. Jan 2003
16 Beiträge
 
#28
  Alt 29. Jan 2003, 17:13
Hallo,
ich hab ständig rumprobiert und es hat alles nichts gebracht.
Jetzt versuche ich es über den Autostartordner mit dieser Funktion:

Delphi-Quellcode:
uses activeX,comobj,shlobj;

const
  IID_IPersistFile: TGUID = (D1:$0000010B;D2:$0000;D3:$0000;D4:($C0,$00,$00,$00,$00,$00,$00,$46));


function CreateLink(PathObj,PathLink,Desc,Workdir:string):Boolean;
var psl : IShellLink;
    ppf : IPersistFile;

begin
  result := False;
  if SUCCEEDED(CoCreateInstance(CLSID_ShellLink, nil, CLSCTX_INPROC_SERVER, IID_IShellLinkA, psl)) then begin
    psl.SetPath(PChar(PathObj));
    psl.SetDescription(PChar(Desc));
    psl.SetWorkingDirectory(PChar(workdir));
    if SUCCEEDED(psl.QueryInterface(IID_IPersistFile,ppf)) then begin
      ppf.Save(StringToOLEStr(PathLink),TRUE);
      Result := true;
    end;
  end;
end;

Doch auch hier gibt es wieder Probleme. Zwar wird eine Datei erstellt (ich übergebe Pathlink den Namen der Verknüpfung
'Name des Programms.ink'), doch es wird keine Verknüpfung, sondern eine .ink-Datei, bei der ich dann gefragt werde, mit welchem Programm ich sie öffnen will.
[/quote][/delphi]
  Mit Zitat antworten Zitat