========== Abschnitt der Einzelartikel ==========
Skripte als Fehlerursache
Die meisten als vermeintliche Programmfehler („Bug“) von 40tude Dialog gemeldeten Probleme lassen sich nach eingehender Untersuchung
auf fehlerhafte Skripte zurückführen. Daher ist es sinnvoll, für die Fehlersuche zunächst einmal über das Menü
► die Ausführung aller Skripte zu deaktivieren.
Tritt das Problem dann nicht mehr auf, kann man die Skriptausführung wieder zulassen. Die weiteren Analysen können sich in diesen Fällen auf
die aktiven Skripte konzentrieren. Diese sollten einzeln (durch Auskommentieren des betreffenden Skriptcodes und anschließendes Compilieren
oder durch Löschen der compilierten Skriptversion) deaktiviert werden, bis der Fehler nicht mehr auftritt. Man beginnt hierbei am besten bei
den zuletzt zugefügten bzw. geänderten Skripten. Außerdem weist der aufgetretene Fehler oft schon thematisch auf eventuell in Frage
kommende Skripte hin. Zu beachten ist, dass 40tude Dialog v. a. nach Veränderungen an Ereignisskripten neugestartet werden muss,
um die relevanten Effekte prüfen zu können. Zur Reaktivierung der nicht betroffenen Skripte sind die ggf. gesetzten Auskommentierungen
zu entfernen und die betroffenen Skripte neu zu compilieren.
Tritt das beobachtete Problem hingegen auch nach Abschalten aller Skripte und Neustart von 40tude Dialog auf, dürfte die Ursache
an anderer Stelle als den Skripten zu suchen sein.
Uncodierte Umlaute in der Betreffzeile
Beim Beantworten einer Nachricht, welche uncodierte Sonderzeichen (z. B. Umlaute) in der Betreffzeile (englisch: Subject)
aufweist, sendet 40tude Dialog auch die Antwort mit uncodierter Betreffzeile zum Server. Das widerspricht den technischen
Vorgaben (Requests for Comments – RFC) für die
Formatierung von Mails und Usenet-Nachrichten und wird Dialog als Bug angelastet. Der Programmierer von 40tude Dialog, Marcus Mönnig,
vertrat allerdings die Auffassung, eine automatisierte „technisch richtige“ Deklaration könne zu einer „inhaltlich falschen“ Anzeige
führen: Ohne inhaltliche Analyse der Betreffzeile können die fälschlich uncodierten Zeichen nahezu beliebigen Zeichensätzen entstammen
und somit z. T. eine sehr unterschiedliche Bedeutung besitzen.
Die Korrektur der Betreffzeile obliegt somit dem Nutzer. Manuelle Veränderungen in der Betreffzeile von mindestens einem Zeichen
führen bereits zu einer (Neu-)Codierung mit einem passenden Zeichensatz. In diesem Fall wird unterstellt, dass der Nutzer jedes
Zeichen der Betreffzeile während der Änderung auf Richtigkeit überprüft und bei Notwendigkeit Korrekturen vornimmt.
Allerdings muss eine uncodierte Betreffzeile erst einmal erkannt werden. 40tude Dialog stellt uncodierte Sonderzeichen mit dem
Zeichensatz dar, welcher als Standard in den Gruppenoptionen festgelegt ist. Jürgen Schmadlak schlug vor, diesen Zeichensatz auf
(US-)ASCII zu stellen, um fehlende Codierungen sofort kenntlich zu machen.
Eine Codierung lässt sich auch über ein Supersede der betreffenden Nachricht erzwingen, da 40tude Dialog bei jedem Supersede eine
„technisch richtige“ Codierung der Betreffzeile durchführt. Allerdings handelt es sich dabei um einen „Workaround“, welcher nur in
wenigen Ausnahmefällen sinnvoll sein dürfte.
Anwender, die KorrNews von Thomas G. Liesner (z. B.
über das Skript Start_KorrNews_include.ds) im Ereignis OnBeforeSendingMessage von 40tude Dialog eingebunden haben, können für ausgehende
Nachrichten bei „Header 1“ die Option „(Optimierte) ISO-Kodierung der Headerzeilen“ aktivieren.
Seit 2020 lässt sich eine automatisierte Codierung der Betreffzeile auch direkt per Skript umsetzen. Näheres findet sich auf den
Skript-Webseiten von Thomas Barghahn unter
Unicode-Fähigkeit.
Fehlerhaftes Datum beim Import aus Agent
Agent fügt beim Export von Nachrichten teilweise die Header From und Date
in einer Zeile zusammen (Bug!). Dieser Fehler muss vor dem Re-Import der Nachrichten extern behoben werden, z. B. durch manuelle
Berichtigung betroffener Nachrichten in einem Texteditor.
Nach einer Information von Robert Massey in der englischsprachigen Newsgruppe news.software.readers lässt sich das Problem auch durch
geeignete Exporteinstellungen in Agent umgehen: darf nicht
ausgewählt sein. Er erwähnte zusätzlich, dass er für den Export ausgewählt
habe, ging jedoch davon aus, dass dies keinen Einfluss auf das beschriebene Problem hat.
Auf den Karteireitern der Kategorien der Gruppen-Ansicht werden keine Trennlinien angezeigt
Wird 40tude Dialog auf neueren Windows-Versionen ausgeführt, greifen teilweise automatische Einstellungen zur Verbesserung der
Programmkompatibilität. Diese lassen sich im Menüpunkt der Verknüpfung überprüfen,
über welche 40tude Dialog gewöhnlich gestartet wird (Schnellstartbereich, Startmenü oder Desktop). Auf dem Karteireiter
sollte der Eintrag
nicht gesetzt sein.
(Hinweis: Diese Einstellung ist nur bis Windows 7 verfügbar.)
Außerdem könnte eine zu kontrastarme Farbe für 3D-Objekte im System eingestellt sein. Bis Windows XP ließ sich der betreffende Wert
in der Systemsteuerung über ► im
Bereich setzen. In neueren Versionen von MS Windows ist
hingegen ein Eingriff in die Registry erforderlich. Der relevante Eintrag ist im Schlüssel
HKEY_CURRENT_USER\Control Panel\Colors.
Darstellungsfehler unter x64-Windows (obsolet)
Vorbemerkung:
Der Darstellungsfehler war auf einen Bug der Microsoft-Bibliotheken für die Anzeige von Standardelementen der Benutzeroberfläche
zurückzuführen und trat im Zusammenspiel mit bestimmten Delphi-Funktionen (nur einzelne Versionen) in Erscheinung. Es wurde
spekuliert, dass die Fehler auf Unterschiede bei der Rundung von 64-Bit-Werten auf 32-Bit-Werte zurückzuführen waren (z. B.
„mathematische Rundung“ vs. „Abschneiden“). Dieser Bug wurde zwischenzeitlich behoben. Die nachfolgenden Lösungen verbleiben zur
Dokumentation und als Denkansatz für eventuelle künftige Probleme in der FAQ.
Problembeschreibung:
Als 40tude Dialog mit den ersten 64-Bit-Versionen von Microsoft Windows getestet wurde, gab es teilweise unerklärliche Probleme
bei der Anzeige von Teilen der Benutzeroberfläche. Am häufigsten traten fehlende Spaltenköpfe in den tabellarischen Darstellungen
der Gruppen-Ansicht und der Header-Ansicht auf. Obwohl unsichtbar, blieben die
Spaltenköpfe jedoch regelmäßig „empfänglich“ für Mausaktionen. Die Fehler traten jedoch nicht auf allen Systemen in Erscheinung.
(Und wenn sie auftraten, dann nicht zwangsläufig in gleicher Art.) Grafiktreiber, Bildschirmauflösung und Farbtiefe sowie die Wahl
zwischen Aero- und klassischer Desktopdarstellung spielten eine Rolle. Außerdem gab es Unterschiede zwischen den wählbaren Layouts
der drei Ansichten von 40tude Dialog.
Lösung 1:
Das Darstellungsproblem ließ sich in vielen Fällen (temporär) lösen, indem die Standarddarstellung des Hauptfensters mit den drei
Teilansichten einmal auf Zoomdarstellung und zurück geschaltet wurde. Dies ließ sich auch direkt beim Programmstart automatisieren,
indem der Zoombefehl zweimal in das Ereignisskript OnStartup integriert wurde. Auf einigen Systemen musste zusätzlich
vorab die Gruppen-Ansicht oder die Header-Ansicht aktiviert werden, damit das Skript erfolgreich war. Um ein Flackern der Anzeige
zu vermeiden, wurden die Befehle oft von einer Sperrung bzw. Entsperrung der Bildschirmanzeige eingeschlossen. (Dies hatte keine
negativen Auswirkungen auf die Funktionsfähigkeit des Skriptcodes.)
Das Skript kann auch separat betrachtet bzw. mit der rechten Maustaste gespeichert werden:
Doppelzoom
Lösung 2:
Da die Lösung 1 das Problem nicht auf allen Systemen behob, war teilweise ein Eingriff in die Programmdatei
Dialog.exe mit einem Resource-Editor (wie dem
Resource Hacker von Angus Johnson) erforderlich. Die (fest in
das Programm eincompilierte) Standardeinstellung für die Anzeige der betroffenen Spaltenüberschriften der
Gruppen-Ansicht und der Header-Ansicht für den Fall, dass die verfügbare
Breite nicht für eine vollständige Darstellung ausreicht, ist ein Umbruch auf mehrere Zeilen. Während für die meisten Spalten
eine feste Breite vorgegeben ist, erhält eine Spalte jeweils den verfügbaren Rest der Anzeigebreite zugeordnet. Bei der
Ermittlung dieses Restes kam es offenbar zu den oben beschriebenen Rundungsdifferenzen. Sobald die Einstellung zur Anzeige von
Spaltenüberschriften bei nicht ausreichender Breite (durch patchen von Dialog.exe) von Umbruch auf
Überlauf gestellt wurde, trat das Anzeigeproblem nicht mehr auf. Überlauf heißt, dass durch „Fortsetzungswinkel“ (englisch: Chevrons)
angedeutet wurde, dass durch horizontales Blättern (englisch: Scrollen) weitere Informationen angezeigt werden können. Hierzu muss
in Dialog.exe jedes Auftreten von
tbsmWrap
mindestens im Formular (zur Sicherheit
besser global) durch tbsmChevron
ersetzt werden.
Probleme von Build 84 der Beta 38 von 40tude Dialog (Einsatz nicht empfohlen!)
Die durch den Programmautor Marcus Mönnig nicht öffentlich zum Download eingestellte Version 2.0.15.84 (aka Build 84 der Beta 38)
beinhaltet gegenüber der letzten veröffentlichten (und in dieser FAQ für den täglichen Einsatz empfohlenen) Version 2.0.15.41
(aka Build 41 der Beta 38) einige grundlegende Überarbeitungen in einem frühen Teststadium. Insbesondere wurde das Speichermanagement
deutlich verändert.
-
Beim Nachladen von Newsgruppen vom Server erscheint bei einigen Hardwarekonstellationen z. T. folgende Fehlermeldung:
Failed to rename /40tude Dialog/data/servers.dat TO /40tudeDialog/data/servers.old:
Eine Datei kann nicht erstellt werden, wenn sie bereits vorhanden ist.
Diese Fehlermeldung kann ohne erkennbare Nachteile ignoriert werden.