Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   W2k8 R2 + TomCat Java App + Delphi Konsolenexe (https://www.delphipraxis.net/160075-w2k8-r2-tomcat-java-app-delphi-konsolenexe.html)

newbe 26. Apr 2011 16:31

W2k8 R2 + TomCat Java App + Delphi Konsolenexe
 
Hallo zusammen,

Also da ich kurz davor bin mich durch die eigene Hand zu meucheln, möchte ich es vorher nochmal mit einem Hilferuf an die hiesige Community versuchen.

Also gegeben ist:

Systemumgebung: W2K8 R2 (64 bit), Java 32 bit installiert, Tomcat 7.0.8 installiert,
User hat lokale Administratorrechte, jedoch keine Domainrechte
UAC ist deaktiviert


Es läuft dort eine Java Application (via Webbrowser), die bei bestimmten Funktionen einen Delphi
Konsolenanwendung startet (welche eine DWG Datei rendert und als PNG in ein bestimmtes Verzeichnis speichert) Diese PNG Datei wird dann von der Java Application im Browserfenster angezeigt. Das funktioniert auch auf mehreren physikalischen Servern mit unterschiedlichen Betriebsystemen.

Nur nicht bei einem unserer Kunden! Ich habe schon alles probiert was mit einfällt. Die Delphi exe stürzt immer ab. Der Gag ist , auf einem unserer Testsysteme mit gleichem Betriebsystem läuft es ohne Probleme.

Was ich schon probiert habe: DEP deaktiviert, Gruppenrichtlinien gecheckt, Delphi Exe mit Admin Manifest compiliert und Digital signiert. Verschiedenen Temp Verzeichnisse durchgetestet z.B im Tomcat Ordner, dann System Userordner ect. ect.

Ich vermute einen Fehler bei der 32 bit Virtualisierung. Aber wie gesagt auf unserem 64bit System rennts wie hanne. Weis jemand eventuell noch ne Stelle wo man ansetzten könnte.

mfG newbe

Window Eventlog sagt folgendes

Name der fehlerhaften Anwendung: EbenenBildGenerator.exe, Version: 0.0.0.0, Zeitstempel: 0x2a425e19
Name des fehlerhaften Moduls: KERNELBASE.dll, Version: 6.1.7601.17514, Zeitstempel: 0x4ce7bafa
Ausnahmecode: 0x0eedfade
Fehleroffset: 0x0000b727
ID des fehlerhaften Prozesses: 0x13c
Startzeit der fehlerhaften Anwendung: 0x01cc0409711c1bbd
Pfad der fehlerhaften Anwendung: C:\Program Files (x86)\Apache Software Foundation\Tomcat 7.0\webapps\raumbelegungsplanung\exe\EbenenBildGen erator.exe
Pfad des fehlerhaften Moduls: C:\Windows\syswow64\KERNELBASE.dll
Berichtskennung: af50d869-6ffc-11e0-9e84-005056c00008

mquadrat 26. Apr 2011 16:34

AW: W2k8 R2 + TomCat Java App + Delphi Konsolenexe
 
Was bedeutet denn Absturz genau?

newbe 26. Apr 2011 16:44

AW: W2k8 R2 + TomCat Java App + Delphi Konsolenexe
 
Hallo mquadrat,

Absturz bedeutet, Es wird keine PNG Datei erstellt. Es wird ein Error Event ins Windows Eventlog geschrieben (s. Ende erster Post) und es wird eine WRP Report erstellt der absolut nichts aussagt :| Dort stehen bloß der Anwendungsname drin und die geladenen Module, der Delphi exe)

hab wirklich keinen Schimmer mehr

mfG newbe

Bernhard Geyer 26. Apr 2011 17:18

AW: W2k8 R2 + TomCat Java App + Delphi Konsolenexe
 
Kannst du genauer feststellen an welcher Position (Codezeile) der Fehler auftritt?

s.h.a.r.k 26. Apr 2011 17:49

AW: W2k8 R2 + TomCat Java App + Delphi Konsolenexe
 
Schon mal die Exception(s) mitgeloggt?

jobo 26. Apr 2011 17:50

AW: W2k8 R2 + TomCat Java App + Delphi Konsolenexe
 
Ich gehe mal davon aus, Du kannst nicht debuggen und hast auch keine Trace Funktionen implementiert, die Du aktivieren kannst.

Hast Du schon mal geprüft, ob die DWG Datei ok ist, also inhaltlich und zwar genau die, mit der Delphi auf die Fr.. fliegt?
Kannst Du diesen Teil nachstellen auf dem Prod System:
- Funktionierende DWG ins Prodsystem stellen
- Delphi Exe manuell aufrufen
...

?

(am besten auch gleich die eigene (getestete, funktionierende Delphi Exe mitbringen)

edit: Das http://de.wikipedia.org/wiki/AutoCAD#.dwg schreit doch nach Problemen.
(Kann man hier eigentlich irgendwo Wetten abgeben auf die Fehlerquelle?)
;)

mjustin 26. Apr 2011 18:07

AW: W2k8 R2 + TomCat Java App + Delphi Konsolenexe
 
Für die weitere Eingrenzung der Fehlerursache ist ein Tool wie madExcept ganz praktisch, da es den Stacktrace protokolliert, je nach Bedarf auch mit Zeilennummern. Man kann es für nichtkommerzielle Anwendung kostenlos nutzen, es macht sich aber auch schnell bezahlt. Unterstützt wird auch Delphi 5.

Nachtrag: d.h. es geht bei madExcept darum den Crash detaillierter zu protokollieren, nicht um eventuelle Java Stack Traces

newbe 26. Apr 2011 20:08

AW: W2k8 R2 + TomCat Java App + Delphi Konsolenexe
 
Danke erstmal an alle für eure Antworten.

Also die DWG existiert und kann auch geladen werden. Das hab ich schon ausgeschlossen.
Was ich vielleicht noch erwähnen sollte ist, das der Fehler nur auftritt, wenn ich die Exe via
java app (Processbuilder) aufgerufen wird. Rufe ich die Delphi exe per batch datei oder via
Desktop Verknüpfung auf, funktioniert alles wunderbar ohne mucken.

Java Stacktraces helfen mir an der Stelle denk ich auch nicht weiter, da die Delphi exe ja ordentlich gestartet wird. Parameter werden auch korrekt übergeben.

Was mir jedoch beim testen aufgefallen ist, die Delphi exe funktioniert nur dann korrekt, wenn
ich vorher z.B. in der Batch datei mit cd "path zur Exe" in das Verzeichnis der Exe wechsle.

Wenn ich die nicht tue, erfolgt der Appcrash.

Das Problem ist, das der Processbuilder dies nicht tut, obwohl ich die Working Directory korrekt setze.

Ich hab mal mit Processmonitor von Sysinternals debuggt.

Die Batch die funktioniert, wenn ich sie per Hand starte macht folgendes

cd /D c:\
cd "c:\Program Files (x86)\Apache Tomcat\Webapps\Projekt\exe\"
EbenBildgenerator param1 param2 param3 C:\users\testnutzer\appdata\temp\test.png

funktioniert

Der Java Processbuilder hingegen generiert intern folgenden Aufruf

"c:\Program Files (x86)\Apache Tomcat\Webapps\Projekt\exe\EbenBildgenerator.exe" param1 param2 param3 "C:\users\testnutzer\appdata\temp\test.png"

funktioniert nicht

ok so und jetzt kommts

Wenn ich mir mit der Version von Processbuilder eine Desktopverknüpfung erstelle, und die
besagete config-datei auf den Desktop kopiere funktioniert der Aufruf. Entferne ich die config-datei von Desktop hab ich meinen Absturz.

könnte es sein das der Processbuilder irgendwie die Working dir doch nicht richtig setzt?

mfG newbe

Bernhard Geyer 26. Apr 2011 22:00

AW: W2k8 R2 + TomCat Java App + Delphi Konsolenexe
 
Probier mal statt dem Profilverbundenen Verzeichnis "C:\users\testnutzer\appdata\" ein neutrales vorher definiertes/angelegte Verzeichnis "C:\Work" zu verwenden. Evtl. liegt ja das Problem im Verwendente Konto des Tomcat.

Zacherl 27. Apr 2011 05:33

AW: W2k8 R2 + TomCat Java App + Delphi Konsolenexe
 
Klingt für mich eher danach, dass die Delphi EXE unsauber programmiert wurde und statt mit beispielsweise:
Delphi-Quellcode:
ExtractFilePath(ParamStr(0)) + 'FileName'
irgendwelche Dateien einfach nur über den relativen Dateinamen anspricht. Versuch mal den Ordner, in der die Delphi Anwendung liegt in die PATH Variable aufzunehmen.

Fals alles nicht hilft, könntest du auch mal OllyDbg attachen. Dann siehst du, an welcher Stelle die Exception auftritt. Ist halt die Frage, ob man im Disassembler die Fehlerursache ohne großartiges Rumsuchen findet.


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:30 Uhr.
Seite 1 von 2  1 2      

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