Hey, Ich hoffe mir kann jemand helfen. Mein Konsolenkonvertierer (FRP-PDF) ist soweit fertig. Ich kann aber derzeit nur einzelne Dateien umwandeln. Ich möchte aber Verzeichnisse, Ordner und Verzeichnisse + Unterordner konvertieren können. zum beispiel so: C:\Alte Dateien\FRP /DSub -> Dann soll er das komplette Verzeichnis konvertieren mit Unterordnern. Wie stell ich das am besten an?
Hier mein Code:
Delphi-Quellcode:
program Project2;
uses
Forms, ShellApi, SysUtils, Graphics, Math,
frxClass, frxExportPDF, FR_Class, PsFR_E_Main, PsFR_E_PDF;
{$AppType Console}
function FRPtoPDF(AFRPFile, APDFFile : string) : integer;
var
frReport : TfrReport;
PDFExport : TPsfrPDFExport;
begin
Result := 1;
if not fileexists(AFRPFile) then
exit;
if fileexists(APDFFile) then
begin
if not DeleteFile(APDFFile) then
begin
Result := 2;
exit;
end;
end;
frReport := TfrReport.Create(NIL);
PDFExport := TPsfrPDFExport.Create(NIL);
try
PDFExport.ShowDialog := false;
frReport.ShowProgress := false;
try
frReport.LoadPreparedReport(AFRPFile);
frReport.ExportTo(PDFExport, APDFFile);
except
Result := 3;
exit;
end;
finally
PDFExport.Free;
frReport.Free;
end;
Result := 0;
end;
var
f : integer;
eingabe : string;
begin
Writeln(Paramstr(1));
Writeln('////////////'); //unnötig
f := FRPtoPDF(Paramstr(1),ChangeFileExt(Paramstr(1),'.pdf'));
if f = 0 then
Writeln('Konvertierung erfolgreich')
else
begin
Writeln('Ein Fehler ist aufgetreten '+ IntToStr(F));
Writeln('Geben sie /? ein fuer weitere Informationen');
end;
readln(eingabe); // Wegnehmen wenn fertig
if eingabe = '/?' then
begin
Writeln('Fehlercode 1 - Verzeichnis existiert nicht oder ist falsch');
Writeln('Fehlercode 2 - PDF wurde ersetzt');
Writeln('Fehlercode 3 - Konvertierung fehlgeschlagen');
Writeln('D= - Directory - Verzeichnis');
Writeln('D= / Sub - Verzeichnis mit Unterordnern');
Writeln('F= - File - Ordner');
readln; // Wegnehmen wenn fertig
end;
end.