40tude Dialog – Bekannte Bugs und (sofern verfügbar) Lösungsmöglichkeiten

  1. Skripte als Fehlerursache
  2. Uncodierte Umlaute in der Betreffzeile
  3. Fehlerhaftes Datum beim Import aus Agent
  4. Auf den Karteireitern der Kategorien der Gruppen-Ansicht werden keine Trennlinien angezeigt
  5. Darstellungsfehler unter x64-Windows (obsolet)
  6. Probleme von Build 84 der Beta 38 von 40tude Dialog (Einsatz nicht empfohlen!)

Hinweis 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ü Einstellungen ► Skriptverwaltung 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.

Hinweis 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.

Hinweis 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: Speichern im RAW-Format (unformatiert) darf nicht ausgewählt sein. Er erwähnte zusätzlich, dass er Alle Felder für den Export ausgewählt habe, ging jedoch davon aus, dass dies keinen Einfluss auf das beschriebene Problem hat.

Hinweis 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 Eigenschaften der Verknüpfung überprüfen, über welche 40tude Dialog gewöhnlich gestartet wird (Schnellstartbereich, Startmenü oder Desktop). Auf dem Karteireiter Kompatibilität sollte der Eintrag Visuelle Designs deaktivieren 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 Desktopeinstellungen ► Fensterfarbe im Bereich Erweiterte Darstellungseinstellungen setzen. In neueren Versionen von MS Windows ist hingegen ein Eingriff in die Registry erforderlich. Der relevante Eintrag ist ButtonFace im Schlüssel HKEY_CURRENT_USER\Control Panel\Colors.

Hinweis 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 TFRM40TDMAIN (zur Sicherheit besser global) durch tbsmChevron ersetzt werden.

Hinweis 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.