AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein [C/C++] Zur Kompilezeit unterscheiden ob Release oder Debug
Thema durchsuchen
Ansicht
Themen-Optionen

[C/C++] Zur Kompilezeit unterscheiden ob Release oder Debug

Ein Thema von Luckie · begonnen am 29. Sep 2006 · letzter Beitrag vom 29. Sep 2006
Antwort Antwort
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#1

[C/C++] Zur Kompilezeit unterscheiden ob Release oder Debug

  Alt 29. Sep 2006, 15:34
Ich habe in meinem Programm feste Abhängigkeiten von Ordnern (Es geht nicht anders!). Jetzt ist es aber so, wen ich die Anwendung im Debugger starte der Pfad ein anderer ist, als wenn ich sie aus dem Explorer im Debug-Ordner starte. Beim Release-Ordner logischerweise das gleiche.

Gibt es irgendwie sowas wie
Code:
#if Release
  Path = "..\\..\\abc";
#else
  Path = "..\\abc";
Wäre ziemlich praktisch.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von MagicAndre1981
MagicAndre1981

Registriert seit: 4. Jun 2004
Ort: Nordhausen
2.214 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: [C/C++] Zur Kompilezeit unterscheiden ob Release oder De

  Alt 29. Sep 2006, 15:37
Code:
#ifdef DEBUG....#endif
sollte helfen.
André
"A programmer is just a tool which converts caffeine into code", daran wirds wohl liegen, dass ich Abends nie pennen kann

Zitat von Luckie:
Nicht nur dass ihr offtopic geworden seid, jetzt werdet ihr selber im Offtopic noch offtopic
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#3

Re: [C/C++] Zur Kompilezeit unterscheiden ob Release oder De

  Alt 29. Sep 2006, 15:44
Leider nicht:
Code:
#ifdef DEBUG
   options[0].optionString = "-Djava.class.path=..\\JavaDemo";
#else
   options[0].optionString = "-Djava.class.path=..\\..\\JavaDemo";
#endif
Das ist auch so nicht ganz richtig. Wenn ich aus den Debugger starte, muss er den ersten Pfad nehmen. Starte ich die Exe mit dem Explorer, liegen sie im Debug- oder Release-Ordner. Diese Ordner befinden sich aber eine Ebene tiefer, so dass ich, wenn ich die Exe aus dem Explorer starte, den zweiten Pfad brauche.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Flocke
Flocke

Registriert seit: 9. Jun 2005
Ort: Unna
1.172 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#4

Re: [C/C++] Zur Kompilezeit unterscheiden ob Release oder De

  Alt 29. Sep 2006, 15:46
Du müsstest den Pfad im Debugger einstellen können, vielleicht löst das dein Problem - du kannst dann in deinem Quelltext immer denselben Pfad nehmen.

// Nachtrag: Alternativ sollte in C/C++ "argv[0]" den Namen der Exe-Datei inkl. des kompletten Pfades beinhalten. Vielleicht kannst du beim Programmstart einfach das Arbeitsverzeichnis auf das Programmverzeichnis setzen.
Volker
Besucht meine Garage
Aktuell: RtfLabel 1.3d, PrintToFile 1.4
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#5

Re: [C/C++] Zur Kompilezeit unterscheiden ob Release oder De

  Alt 29. Sep 2006, 16:03
Ich habe es gerade gelöst. Das DEBUG setzt man in den Projektoptionen bei den Debug-Einstellungen. Dann geht es wie gewünscht.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Olli
(Gast)

n/a Beiträge
 
#6

Re: [C/C++] Zur Kompilezeit unterscheiden ob Release oder De

  Alt 29. Sep 2006, 21:05
Zitat von Luckie:
Ich habe es gerade gelöst. Das DEBUG setzt man in den Projektoptionen bei den Debug-Einstellungen. Dann geht es wie gewünscht.
... oder alternativ in einer (globalen) Header-Datei, wenn man Compiler-unabhängig bleiben will ...
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:11 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz