AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Delphi6-Anwendung gestartet von "fremdsprachigen" Verzeichnis
Thema durchsuchen
Ansicht
Themen-Optionen

Delphi6-Anwendung gestartet von "fremdsprachigen" Verzeichnis

Ein Thema von Bernhard Geyer · begonnen am 21. Nov 2011 · letzter Beitrag vom 23. Nov 2011
Antwort Antwort
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.196 Beiträge
 
Delphi 10.4 Sydney
 
#1

Delphi6-Anwendung gestartet von "fremdsprachigen" Verzeichnis

  Alt 21. Nov 2011, 17:37
Ich habe hier eine Anwendung die mir jetzt auf einem russischen System probleme bereitet.

Hat das Verzeichnis in der die Anwendung gestartet wird kyrilische Zeichen und Leerzeichen im (letzten?) Pfadteil, so kracht die Anwendung mit komischten Fehlermeldung, oft in der ntdll.dll und hier sowie ich durch Debuggin heraus gefunden habe beim handieren mit Strings.

Wenn ich mit FastMM-Debugausgaben arbeiten sagt er mir oft das Objekte mehrmals freigeben wurde und ähnliches.

Gerade habe ich heraus gefunden das bei einem Start mit der 8.3-Datei/Pfadnamen (Batch-Datei nötig - Start über Link sorgt beim speichern für automatisches Umwandeln der 8.3 in richtigen Pfadangaben) die Abstürze verschwinden.

Ich bin mit meinem Debug-Ansätzen langsam am Ende.
Hättet Ihr Ideen welche checks ich durchführen könnte bzw. welche (Win)API-Funktionsaufrufe das verursachen könnten.
Die Anwendung ist u.a. mit hilfe vom ElPack GUI-Technisch Unicode-Enabled. Einzig im Bereich Filenamen-Handling ist noch vieles nicht umgestellt. Der o.g. kyrische Pfadteil hat aber nur Zeichen die per Charset auf einem kyrisch eingestellten Windows auch erreichbar sein (also nur die 127 gebräuchlichen Zeichen die als $80...$FF "eingeblendet" werden.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.582 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Delphi6-Anwendung gestartet von "fremdsprachigen" Verzeichnis

  Alt 21. Nov 2011, 19:18
In den Stacktraces ist da kein Hinweis zu finden? Kannst du die vielleicht mal anhängen? Also bei einem solchen Speicherbereich den Stacktrace vom Allozieren und den vom Deallozieren meine ich. Ggf. mit höherer StackTraceDepth (in FastMM.pas), wenn die sonst nichts aussagen.
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
 
Delphi 12 Athens
 
#3

AW: Delphi6-Anwendung gestartet von "fremdsprachigen" Verzeichnis

  Alt 21. Nov 2011, 19:40
Die ntdll.dll ist oftmals letzendlich der ausführende Teilder meisten Dateifunktionen ... wenn es dort kracht, liegt der Fehler meißt aber im aufrufenden Teil (falsche Parameter übergeben und so).

Zitat:
Einzig im Bereich Filenamen-Handling ist noch vieles nicht umgestellt.
Wenn Man mit Dateinamen in als Unicode-Strings anfängt und dann intern nur den Typ konvertiert, aber nicht den Inhalt (LongFileNames <> ShortFileNames), dann könnte schonmal hier und da etwas schief laufen.
Auch wenn ich da eher andere Fehler, ala "Datei nicht gefunden" erwarten würde ... aber wenn man z.B. eine ordentliche Fehlerbehandlung vergißt, dann sind die Nachfolgefehler schon viel weitreichender und würden mit den genannten Symptomen schon übereinstimmen.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.196 Beiträge
 
Delphi 10.4 Sydney
 
#4

AW: Delphi6-Anwendung gestartet von "fremdsprachigen" Verzeichnis

  Alt 22. Nov 2011, 15:33
Also als genaue Fehlermeldung habe ich schon mal

Code:
Zugriffsverletzung bei Adresse 77259C5F in Modul 'ntdll.dll'. Lesen von Adresse 2E3B6AE0
[77259C5F] RtlSizeHeap + $73
(mit Hilfe von den Jedi-Debug-Funktionen


Callstack muss ich schauen das ich wieder bekomme (aktuell kommt da beim Remote Debugger (D6) nix rüber bzw. er bleibt nicht stehen ...
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.196 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: Delphi6-Anwendung gestartet von "fremdsprachigen" Verzeichnis

  Alt 23. Nov 2011, 16:41
So. Eigentlich wollte ich noch Callstacks posten die ich noch gefunden habe, aber ich habe jetzt eine (fast) Lösung für mein Problem und auch den (teilweise?) Schuldigen gefunden: TNTForm!

Hab jetzt auf die LMDForms (mit Widestring als Caption) umgestellt sowei eine Anpassung an an ElPack-Units vorgenommen und jetzt kommt im Entwicklerzweig nicht mehr die Fehlermeldung.
Windows Vista - Eine neue Erfahrung in Fehlern.
  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 15:42 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