JLI Spieleprogrammierung Foren-Übersicht JLI Spieleprogrammierung

 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen 
 medals.php?sid=34fec3806286305b6205a9e8bde9ab6aMedaillen   RegistrierenRegistrieren   ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

Eigene Dateitypen mit eigenem Programm öffnen

 
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Otscho
Super JLI'ler


Alter: 36
Anmeldedatum: 31.08.2006
Beiträge: 338
Wohnort: Gummibären-Gasse
Medaillen: Keine

BeitragVerfasst am: 30.12.2007, 12:41    Titel: Eigene Dateitypen mit eigenem Programm öffnen Antworten mit Zitat

Hi,
Meine Programm verwendet vergleichbar mit Mircrosoft Word eigene Dateitypen um Szenen abzuspeichern und zu laden. Das Programm ist eine 3D-Simulation mit der man nach dem Editor-Prinzip sich Szenen zusammen basteln kann, und sie als *.sim Dateien abspeichern kann (sim steht einfach nur für Simulationsdatei (ich weiß klingt nicht sehr einfallsreich, aber als ich das Format einführte hatte ich einen schlechten Tag)). So weit so gut: speicher und laden klappt ganz gut.

Nur hab ich jetzt auch vor, dass man eine solche Datei beim Doppelklicken direkt mit der meinem Programm öffnen kann. Nur stoße ich da sofort auf ein Problemchen:

Wenn die Datei meine exe aufruft, wird der Ordner der Datei als Rootverzeichniss genommen und nicht mehr der Ordner meiner exe, was zur Folge hat, dass alle relativen Pfade in meinem Programm falsch sind. Wenn das Programm z.B. ein Bild namens Ordner/Bild.png laden will, dann meint es es müsse den Ordner in dm Verzeichnis suchen wo die .sim Datei liegt. Natürlich könnte ich jetzt alles in absolute pfade angeben. Das ginge vielleicht für meinen Privatgebrauch ganz gut, allerdings könnte ich dann das Programm niemanden weitergeben bzw. das Programm verschieben. Gibt es da eine Möglichkeit herauszufinden wo die exe liegt, um dann manuell aus den relativen Pfaden einen absoluten zu erzeugen ?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
DirectXer
Dark JLI'ler



Anmeldedatum: 05.02.2005
Beiträge: 1201
Wohnort: Köln
Medaillen: Keine

BeitragVerfasst am: 30.12.2007, 13:43    Titel: Antworten mit Zitat

ja gibt es, dein Freund heißt GetModuleFileName:
CPP:
std::wstring path( MAX_EXEPATH, 0 ); // oder string wenn ansi
GetModuleFileName( hInstance, &path[0], MAX_EXEPATH );


Gruß DXer


Zuletzt bearbeitet von DirectXer am 30.12.2007, 13:54, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Jonathan_Klein
Living Legend


Alter: 37
Anmeldedatum: 17.02.2003
Beiträge: 3433
Wohnort: Siegerland
Medaillen: Keine

BeitragVerfasst am: 30.12.2007, 13:43    Titel: Antworten mit Zitat

Hm wird die exe nicht in den Parametern angegeben?
Also der erste Parameter sollte der komplette Pfad sein, indem sich die exe befindet.
Und dann noch:
http://www.jliforum.de/board/viewtopic.php?p=59173#59173
Damit du keine absoluten Pfade erstellen musst.
_________________
https://jonathank.de/games/
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Otscho
Super JLI'ler


Alter: 36
Anmeldedatum: 31.08.2006
Beiträge: 338
Wohnort: Gummibären-Gasse
Medaillen: Keine

BeitragVerfasst am: 31.12.2007, 13:20    Titel: Antworten mit Zitat

@DirectXer
Danke, werds gleich mal ausprobieren

@Jonathan_Klein
Ups, hab zwar die Suchfunktion des Forums genutzt aber den Thread hab ich net gefunden: Danke Smile
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung Alle Zeiten sind GMT
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de

Impressum