Delphi -> C++(wxWidgets) portieren
-
Hi
bin neu im C++ programmieren, zumindest mit wxWidgets.
Ich hab da ein Problem wie ich den Delphi Quellcode in C++ bekomme und zwar handelt es sich um ein Verzeichnis prüfen und/oder anlegen// Start-DIR prüfen / anlegen if not ini.ValueExists('START', 'INDir') then begin tmp := ExpandUNCFileName(ini.ReadString('GLOBAL', 'DataBasePath', tmp)) + 'IN_DIR'; tmp := ExtractRelativePath(ExtractFilePath(ParamStr(0)), tmp); ini.WriteString('START', 'INDir', tmp); end; // In-Verzeichnis anlegen, wenn nicht vorhanden tmp := ExpandUNCFileName(ini.ReadString('START', 'INDir', '')); if not DirectoryExists(tmp) then begin if not ForceDirectories(tmp) then raise Exception.Create('Verzeichnis "' + tmp + '" konnte nicht erstellt werden.'); end;
So jetzt entstehen mehrere Probleme, eins davon wenn ich jetzt mit GetPathSeparators auf backslash prüfen will, will er von mir ein wxPathFormat haben, wie bekomme ich das? den in meiner tmp steht nur ein wxstring vom Pfad???
Kann mir da jemand helfen bei den paar Zeilen, wie das im endeffekt in C++ aussieht??
-
if ( wxDir::Exists(sPathName) == false ) { wxMkDir(sPathName) }
rya.
-
danke für die schnelle antwort
soll das den wirklich soeinfach sein???
hab mir auch schon sowas gedacht, nur handieren die im orginal-file(delphi) immer soviel mit den pfadnamen und den dateinamen rum
da verschiedene module aus den verzeichnissen lesen und etwas reinschreiben
-
Kenn Delphi nur flüchtig, was die noch machen, ist halt den Pfadname noch expandieren, bezüglich möglicher envvars bzw machen den relativen zum absoluten etc. Das ist natürlich mit wxWidgets auch möglich, schau dir einfach mal wxDir und wxFileName an.
Und ja, es ist so einfachEdit: hab noch etwas gesehen und zwar, werden da ja Werte aus einer .ini-Datei ausgelesen. Das ist natürlich etwas komplizierter. Dazu siehe : http://docs.wxwidgets.org/stable/wx_wxfileconfig.html#wxfileconfig
rya.
-
danke (ja hast recht mit der ini)
alles klar
dann schau ich mir mal an wie man relativen zu absoluten pfad bringt.
aber was bringt das?hab bis jetzt immer nur mit festen pfaden gearbeitet, deshalb leuchtet mir das ni so richtig ein.
-
Naja, manche Funktionen brauchen absolute Pfade um zu funktionieren. Das ist dann meistens eine Vorgabe vom OS.
rya.