Einzelnen Beitrag anzeigen

Delphi Star

Registriert seit: 4. Apr 2004
432 Beiträge
 
Delphi 2005 Personal
 
#1

Verknüpfung erstellen klappt nicht

  Alt 7. Sep 2005, 15:54
Wie kann man eine Verknüpfung erstellen

Ich habe es schon mit verschiedenen Codes probiert die ich hier gefunden habe. Aber es wird bei keinem eine Verknüpfung erstellt.

z.B.: Beim Ausführen dieser Funktion passiert gar nichts.
Delphi-Quellcode:
function CreateLink(const AFilename, ALNKFilename, ADescription: String) : Boolean;
var
  psl : IShellLink;
  ppf : IPersistFile;
  wsz : PWideChar;
begin
  result:=false;
  if SUCCEEDED(CoCreateInstance(CLSID_ShellLink, nil,
  CLSCTX_inPROC_SERVER, IID_IShellLinkA, psl)) then
  begin
    psl.SetPath(PChar(AFilename));
    psl.SetDescription(PChar(ADescription));
    psl.SetWorkingDirectory(PChar(ExtractFilePath(AFilename)));
    if SUCCEEDED(psl.QueryInterface(IPersistFile, ppf)) then
    begin
      GetMem(wsz, MAX_PATH*2);
      try
        MultiByteToWideChar(CP_ACP, 0, PChar(ALNKFilename), -1, wsz, MAX_PATH);
        ppf.Save(wsz, true);
        result:=true;
      finally
        FreeMem(wsz, MAX_PATH*2);
      end;
    end;
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  CreateLink('C:\WINDOWS\notepad.exe', // Ziel
             'c:\test.lnk', // Speicherort der verknüpfung
             'Verknüpfung zu Notepad'); // Verknüpfungs Beschreibung
end;
Real programmers code in binary
SwapIt: Punkte
  Mit Zitat antworten Zitat