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
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
eventuell hilft Verweis-DLL soll in die .exe compiliert bzw. gelinkt werden.
**:::
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?
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.