AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Zugriffsverletzung 0x00.. in user32.dll auf chinesischem Server
Thema durchsuchen
Ansicht
Themen-Optionen

Zugriffsverletzung 0x00.. in user32.dll auf chinesischem Server

Ein Thema von mquadrat · begonnen am 1. Jul 2014 · letzter Beitrag vom 8. Jul 2014
Antwort Antwort
Benutzerbild von Sherlock
Sherlock

Registriert seit: 10. Jan 2006
Ort: Offenbach
3.821 Beiträge
 
Delphi 12 Athens
 
#1

AW: Zugriffsverletzung 0x00.. in user32.dll auf chinesischem Server

  Alt 2. Jul 2014, 10:10
Ins Blaue hinein: Kann es sein, daß bei der Übersetzung eigentlich interne Bezeichner oder Unitnamen oder sowas in der Art übersetzt wurden/werden? Im europäischen Umfeld macht das ja weniger was aus, aber sobald da chinesische Zeichen reinrutschen könnte das Problematisch werden.

Sherlock
Oliver
Geändert von Sherlock (Morgen um 16:78 Uhr) Grund: Weil ich es kann
  Mit Zitat antworten Zitat
mquadrat

Registriert seit: 13. Feb 2004
1.113 Beiträge
 
Delphi XE2 Professional
 
#2

AW: Zugriffsverletzung 0x00.. in user32.dll auf chinesischem Server

  Alt 3. Jul 2014, 06:13
Das ganze ist sehr diffus. Ich habe immerhin jetzt die Stelle gefunden. Den Fehler verursacht hat ein TChart, obwohl der Fehler erst nach(!) dem Release des entsprechenden Formulars geworfen wird. Ebenso trittder Fehler nur auf, wenn das Objekt, das in diesem Form dargestellt wird, einen bestimmten Status hat. Der Status wirkt sich aber eigentlich gar nicht auf dieses TChart aus.

Wenn ich etwas Luft habe, werde ich da mal weiter testen.
  Mit Zitat antworten Zitat
Dejan Vu
(Gast)

n/a Beiträge
 
#3

AW: Zugriffsverletzung 0x00.. in user32.dll auf chinesischem Server

  Alt 3. Jul 2014, 07:25
Das ist ein Seiteneffekt: Der Fehler ist vermutlich ganz woanders. Hast Du dein Projekt mal mit Range- und Overflowchecks kompiliert? Mal FastMM mit FullDebugMode probiert? Erst wenn letzteres im normalen Betrieb (was deinen komischen Fehler verursacht) ohne Meckerei durchläuft, ist es ein Problem.
  Mit Zitat antworten Zitat
Redeemer

Registriert seit: 19. Jan 2009
Ort: Kirchlinteln (LK Verden)
1.134 Beiträge
 
Delphi 2009 Professional
 
#4

AW: Zugriffsverletzung 0x00.. in user32.dll auf chinesischem Server

  Alt 8. Jul 2014, 00:15
Ich weiß nicht, ob das mit deinem Problem zusammenhängen kann, aber ein Projekt von mir zeigte bei einem koreanischen Nutzer koreanische Zeichen als sehr seltsame andere Zeichen an, wenn es mit XE2 kompiliert wurde. Mit 2009 hingegen kein Problem. Falls du andere Compiler zur Hand hast - da gab es ja mal die Aktion, bei XE2 alle Vorgänger bis 2007 dazu zu kriegen - probier's mal damit.

Weitere Idee: Lädt dein Projekt über TStrings/TStringList Textdateien, die nicht in Unicode vorliegen und Nicht-ASCII-Zeichen enthalten?
Janni
2005 PE, 2009 PA, XE2 PA
  Mit Zitat antworten Zitat
Benutzerbild von Memnarch
Memnarch

Registriert seit: 24. Sep 2010
737 Beiträge
 
#5

AW: Zugriffsverletzung 0x00.. in user32.dll auf chinesischem Server

  Alt 8. Jul 2014, 08:16
Etwas auf das ich noch nicht gestoßen bin(weil noch nie mit Chinesischen Zeichen gearbeitet habe), aber mir habe mal sagen lassen:
Chinesisch nutzt Surrogate-Pairs in strings. das heißt, dass 2 Chars ein Chinesisches Zeichen ergeben. Wird so eines vllt ausversehen auseinander gepflückt bei einer String-Operation und verursacht murks?
Da man Trunc nicht auf einen Integer anwenden kann, muss dieser zuerst in eine Float kopiert werden
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: Zugriffsverletzung 0x00.. in user32.dll auf chinesischem Server

  Alt 8. Jul 2014, 09:34
Alle Zeichen im Bereich von #0 bis #$FFFF sind ganz normale UCS2-Chars.
Falls Chinesisch Zeichen von #$010000 bis #$10FFFF nutzt, dann sind diese als Surrogates im String kodiert,
aber normales Stringoperationen/-konvertierungen sollten Diese eigentlich selten zerlegen.
Und ja, es sind zwar viele chinesische Zeichen in der BMP (Basic Multilingual Plane = bis #$FFFF), aber ein großer Teil liegt auch in den Surrogates.

Was man mal machen könnte:
- das Programm mit DebugDCUs (RET+VCL) kompilieren
- Fehlersuchcodes ala Eurekalog oder MadExcept einbauen (oder man debuggt das selber)
- und vielleicht auch noch einen FastMM im FullDebugMode
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.212 Beiträge
 
Delphi 10 Seattle Enterprise
 
#7

AW: Zugriffsverletzung 0x00.. in user32.dll auf chinesischem Server

  Alt 8. Jul 2014, 09:37
Ich kenne mich da überhaupt nicht aus, aber das GetKeyboardLayout im Stacktrace hat nichts zu bedeuten?
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: Zugriffsverletzung 0x00.. in user32.dll auf chinesischem Server

  Alt 8. Jul 2014, 10:13
Wenn das MSDN-Library durchsuchenGetKeyboardLayout Probleme macht, dann wäre wohl eher der entsprechende Rechner im Arsch.

Ich hätte eher bei den übergebenen Parametern die Probleme vermutet, aber diese API hat eigentlich keine problematischen Parameter, wo man z.B. ausversehn ein nil (siehe Überschrift) übergeben könnte.

Das Problem ist hier auch, daß man nicht genau sieht um welches Control es beim TWinControl.MainWndProc handelt.
Eventuell ist das Control auch weg und hier stünde dann ein NIL, aber das würde ich eigentlich ausschließen, da es für nichtexistierende Controls keine Messages mehr gibt, weil Diese eigentlich automatisch gelöscht werden. Und außerdem hoffe ich mal BorCodEmba hat bei der Umwandlung von HWND in TWinControl abgefangen, wenn das Control nicht gefunden wird, oder so.

Drum ja die Hoffnung, daß man mit mehr Debugginfos auch mehr im Stacktrace sieht.
Ein Therapeut entspricht 1024 Gigapeut.
  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 07:14 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz