Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
Debugg-Modus funktioniert, fertige .exe nicht
Krumnix
myCSharp.de - Member



Dabei seit:
Beiträge: 120
Herkunft: Schweiz

Themenstarter:

Debugg-Modus funktioniert, fertige .exe nicht

beantworten | zitieren | melden

Hallo an Alle.

Benutze Visual Studio 2015 und habe eine WinForm-Applikation erstellt.
Als Framework habe ich 4.5.2 eingestellt.

Nun habe ich eine DLL ins Projekt importiert damit ich auf eine Datenbank zugreifen kann. Diese DLL wird vom Datenbank-Hersteller geliefert.

Wenn ich in VS im Debugg-Modus das Programm ausführe, kann ich ohne Probleme auf die Datenbank zugreifen und alles funktioniert.

Wenn ich nun die EXE erstelle und sie, inkl. der DLL, ausführe, dann "passiert" nix.
Sprich, ich kann mich nicht verbinden und keine Aktionen ausführen. Ich erhalte aber auch keine Fehlermeldungen oder sonstige Rückmeldungen.
Try/Catch vorhanden.
Wenn ich die DLL im Ordner der EXE lösche, erhalte ich meine Message-Box mit einem Fehler, dass die Funktion fehle. Also soweit ok.

Hat jemand einen Tipp, wo ich noch schauen könnte, warum es im Debugg-Modus funktioniert und als fertige EXE nicht?

Danke
private Nachricht | Beiträge des Benutzers
Taipi88
myCSharp.de - Member

Avatar #avatar-3220.jpg


Dabei seit:
Beiträge: 1044
Herkunft: Mainz

beantworten | zitieren | melden

Hi,

naja - wirklich viel preisgeben tust du ja nicht. (DB?)

Praktisch ist der Hauptunterschied zwischen Debug und Release meist x86 vs x64.

Wenn du einfach eine DLL kopierst (das macht man heute ehrlich gesagt über Nuget...) - ist die Chance hoch, dass diese schlicht nur x86 kann. (Obwohl dann definitv was im Windows-Log landet!)

Erster Versuch wäre somit die Release-Version als x86 zu kompilieren - falls das klappt weißt du schon mal woran es liegt und kannst eben ggf. mit x86 arbeiten oder eben auch eine x64-DLL organisieren.

LG
private Nachricht | Beiträge des Benutzers
vbprogger
myCSharp.de - Experte

Avatar #avatar-1820.gif


Dabei seit:
Beiträge: 1723
Herkunft: NRW/DE

beantworten | zitieren | melden

eventuell hilft Verweis-DLL soll in die .exe compiliert bzw. gelinkt werden.
Ich bin verantwortlich für das, was ich sage, nicht für das, was du verstehst.
---------
Bemerkung: ich beantworte keine Fragen via PM, denn das Forum soll ja was davon haben!
private Nachricht | Beiträge des Benutzers
Krumnix
myCSharp.de - Member



Dabei seit:
Beiträge: 120
Herkunft: Schweiz

Themenstarter:

beantworten | zitieren | melden

x86 Plattform ist in eingestellt, da ich weiß, dass die DLL auf x86 nur läuft.
Ich hab den try catch erweitert und frage jetzt nicht nur die Exception der Funktion sondern auf die Exception der class ab.
Dabei erhalte ich in der EXE die Meldung, dass eine Konfiguration auf dem Client nicht angelegt ist und daher die Klasse nicht initialisiert werden kann.

Damit kann ich aktuell noch nix anfangen, da dies neu für mich ist :)

Ich habe im Grunde "nur" die DLL als Verweis ins Projekt eingefügt. Eine weitere Datei oder eine Konfiguration habe ich aktiv nicht integriert.
Ich gehe jetzt mal davon aus, dass die beim Debuggen in VS die Konfiguration irgendwo her kommt, aber werde da nicht schlau.

Jemand ein Tipp, wo ich diese Konfig-Datei suchen könnte?
private Nachricht | Beiträge des Benutzers
T-Virus
myCSharp.de - Member



Dabei seit:
Beiträge: 1868
Herkunft: Nordhausen, Nörten-Hardenberg

beantworten | zitieren | melden

Beim lokalen debuggen verwendest du die App.config während die fertige Exe eine .config Datei mit ihrem Namen verwendet.
Z.B. bei TestApp.exe = TestApp.exe.config
Entsprechend musst du die gepublishte config Datei noch mit kopieren.

T-Virus
Developer, Developer, Developer, Developer....

99 little bugs in the code, 99 little bugs. Take one down, patch it around, 117 little bugs in the code.
private Nachricht | Beiträge des Benutzers
Krumnix
myCSharp.de - Member



Dabei seit:
Beiträge: 120
Herkunft: Schweiz

Themenstarter:

beantworten | zitieren | melden

Danke, das war die Lösung.
private Nachricht | Beiträge des Benutzers