Laden...

[erledigt] #if DEBUG in einem Addin wenn Host=Release Build

Erstellt von Programmierhans vor 10 Jahren Letzter Beitrag vor 10 Jahren 983 Views
Programmierhans Themenstarter:in
4.221 Beiträge seit 2005
vor 10 Jahren
[erledigt] #if DEBUG in einem Addin wenn Host=Release Build

Hallo Miteinander

Ich habe ein Dll welches als DEBUG gebuildet ist.

In diesem Dll verwende ich an diversen Stellen


#if DEBUG

Wenn der Host (welcher das Dll lädt) als Release gebuildet ist, dann läuft der Code im #if DEBUG nicht ein.

Kann man das irgendwie anpassen ?

Ziel: Host ist Release-Build / Dll ist Release oder Debug.

Gruss
Programmierhans

Früher war ich unentschlossen, heute bin ich mir da nicht mehr so sicher...

B
142 Beiträge seit 2007
vor 10 Jahren

Hi,

definier eine andere Variable als DEBUG, welche auch im Release Build definiert ist.

Gruß
Björn

6.911 Beiträge seit 2009
vor 10 Jahren

Hallo Programmierhans,

ganz kann ich das nicht nachvollziehen. Wenn ein Projekt mit DEBUG gebuildet wurde UND in den Projekt-Eigenschaften die DEBUG-Konstante definiert wurde (bzw. entsprechender Compiler-Schalter gesetzt wurde), so gilt das für dieses Projekt. Prüfe mal mit einem Reflector ob dort der Code innerhalb der #if DEBUG-Blöcke vorhanden ist. Falls nicht liegts an der DLL.

Der Host bzw. Caller der DLL ist davon - zumindest nach meinem Verständnis - komplett unabhängig.

Verwendest du ev. auch das Conditional-Attribut? Damit könnte ich mir dieses Verhalten erklären.

mfG Gü

Stellt fachliche Fragen bitte im Forum, damit von den Antworten alle profitieren. Daher beantworte ich solche Fragen nicht per PM.

"Alle sagten, das geht nicht! Dann kam einer, der wusste das nicht - und hat's gemacht!"

Programmierhans Themenstarter:in
4.221 Beiträge seit 2005
vor 10 Jahren

definier eine andere Variable als DEBUG, welche auch im Release Build definiert ist.

Hallo Björn

Ich präzisiere es noch ein wenig:

  • Mein StartProjekt ist das Addin... welches das externe-Program (den Host) startet...

Ziel: Wenn mein Addin in DEBUG ist, dann möchte ich dass die #if DEBUG Statements aktiv sind... wenn ich in RELEASE bin, dann sollen diese nicht aktiv sein.

Eine weitere Variable im HOST ändert daran nichts... Ich will ja eben den Host nicht wechseln müssen 😃

PS: sonst kann ich ja auch den Host auswechseln (Debug/Release-Version)... und genau das möchte ich nicht.

Gruss
Programmierhans

Früher war ich unentschlossen, heute bin ich mir da nicht mehr so sicher...

Programmierhans Themenstarter:in
4.221 Beiträge seit 2005
vor 10 Jahren

Looooool

Vergesst es... ich bin so was von blind....

Im EXE ist der Code auch in einer #IF DEBUG-Region...

Sprich der Code des Addin wird nicht aufgerufen weil das im EXE auch so ist.

Ist somit erledigt.

Danke für die Hilfe

Gruss der Blinde

Früher war ich unentschlossen, heute bin ich mir da nicht mehr so sicher...