Einzelnen Beitrag anzeigen

Nils_13

Registriert seit: 15. Nov 2004
2.647 Beiträge
 
#9

Re: Hereinziehen von Ordnern>DirectoryExists gibt False z

  Alt 7. Mai 2007, 20:21
Ah, ich glaube jetzt habe ich es verstanden.
Delphi-Quellcode:
begin
  inherited;
  anzahl := DragQueryFile(Msg.WParam, $FFFFFFFF, Dateiname, 255);
  for i := 0 to (anzahl - 1) do
  begin
    size := DragQueryFile(Msg.WParam, i , nil, 0) + 1;
    Dateiname := StrAlloc(size);
    DragQueryFile(Msg.WParam, i, Dateiname, size);
    if IsDirectory(Dateiname) then
    begin
      ST := TSearchTool.Create;
      with ST do
      begin
        ST.SetFilter('*.*');
        if frmOp.Rek then
          ST.Recurse := True
        else
          ST.Recurse := False;
        MHandle := Handle;
        MCurrentDir := mkNoneMessage;

        if ST.IsSearching then
        begin
          ST.Break;
        end else
        begin
          LastAdded := 0;

          ST.SearchFiles(Dateiname);

          found := TStringList.Create;
          for j := 0 to found.Count - 1 do
            AddSingleFile(found[j]);
          found.Free;
        end;
        Free;
      end;
    end else
    if IsVolume(Dateiname) then
    begin
      MsgBox('Volumes are not supported.')
    end else
    if IsFile(Dateiname) then
    begin
      AddSingleFile(StrPas(Dateiname));
    end;
    StrDispose(Dateiname);
  end;
  DragFinish(Msg.WParam);
end;
  Mit Zitat antworten Zitat