|
JLI Spieleprogrammierung
|
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
|
Verfasst am: 30.12.2007, 12:41 Titel: Eigene Dateitypen mit eigenem Programm öffnen |
|
|
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 |
|
|
DirectXer Dark JLI'ler
Anmeldedatum: 05.02.2005 Beiträge: 1201 Wohnort: Köln Medaillen: Keine
|
Verfasst am: 30.12.2007, 13:43 Titel: |
|
|
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 |
|
|
Jonathan_Klein Living Legend
Alter: 37 Anmeldedatum: 17.02.2003 Beiträge: 3433 Wohnort: Siegerland Medaillen: Keine
|
|
Nach oben |
|
|
Otscho Super JLI'ler
Alter: 36 Anmeldedatum: 31.08.2006 Beiträge: 338 Wohnort: Gummibären-Gasse Medaillen: Keine
|
Verfasst am: 31.12.2007, 13:20 Titel: |
|
|
@DirectXer
Danke, werds gleich mal ausprobieren
@Jonathan_Klein
Ups, hab zwar die Suchfunktion des Forums genutzt aber den Thread hab ich net gefunden: Danke |
|
Nach oben |
|
|
|
|
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
|