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 einfach 😉

    Edit: 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.


Anmelden zum Antworten