Einzelnen Beitrag anzeigen

Benutzerbild von sieppl
sieppl

Registriert seit: 15. Aug 2004
Ort: Münster
198 Beiträge
 
Delphi 7 Professional
 
#2

Re: Array of PIDL zusammenbauen ??

  Alt 4. Sep 2004, 10:15
manachmal ist die unterstützung im forum wirklich entäuschend. Es hat etwas länger gedauert, aber so eine einfache lösung mal gerade zu posten wäre nicht viel arbeit gewesen:
Delphi-Quellcode:
//zunächst den array deklarieren
APidl: array of PItemIDlist;

//den dynamischen array füllen

SetLength(APidl, Length(APidl)+1);
APidl[High(APidl)] := PIDL; //irgendeine PItemIDList

//Jetzt zum Beispiel dem GetUIObjectOf-Befehl den Array übergeben
//wichtig ist nur das man das 'nullte' Element als StartAdresse übergibt..

IShellFolder.GetUIObjectOf(handle,Length(APidl),APIdl[0], ...

//zum schluss die PIDLs aus dem Array wieder freigeben
//..habe ich mal über eine For-Schleife gemacht

for I := 0 to Length(APidl)-1 do
  Allocator.Free(APidl[I]); //Allocator ist ein IMalloc..
Ich hoffe ich werde jemanden helfen, der irgendwann vor dem gleichen Problem steht. Das sieht jetzt zwar trivial aus, aber man muss erstmal aus der MSDN-Beschreibung schlau werden..

Grüße

Sebastian
Sebastian
  Mit Zitat antworten Zitat