Autor Thema: Bug? Run-Time error 13 - Type mismatch WDP 2015.1b  (Gelesen 1495 mal)

Offline Fabian Herzog

  • Junior-Mitglied
  • Beiträge: 23
  • Ort: Aargau Ort bei GoogleMaps suchen ch
Bug? Run-Time error 13 - Type mismatch WDP 2015.1b
« am: 30. Oktober 2016, 16:42:32 »
Hallo Zusammen,

Ich schreibe diesen riesigen Text damit jemand mit dem gleichen Problem nicht so viel Zeit verliert wie ich dieses Wochenende. Zudem würde ich mich freuen, wenn ich ein Feedback oder Kommentar von einem Entwickler zu diesem Programm-verhalten bekommen würde.

Mein Projekt stammt aus Digipet-2009-Zeiten. Jetzt haben wir kürzlich unseren Steuerungs-PC ersetzt mit Windows 10 und dem damals neuen Digipet 2015 (genaue Version habe ich leider nicht im Kopf).
Neulich habe ich den Installations-Stick von Digipet und das exportierte Projekt mit nachhause genommen um etwas weiter daran zu arbeiten. Das Win-Digipet habe ich installiert und gleich auf die neueste Version 2015.1b aktualisiert (sprich das ist neuer als die auf unserem Steuerungs-PC), dann mein Anlage-Projekt importiert und versucht es zu starten (Anlageversion und Büroversion).
Bei beidem erscheint die Fehlermeldung "Run-Time error 13: Type mismatch" und das Programm schliesst sich.
Dann habe ich ge-googelt usw, aber ich konnte es nicht lösen.
Jetzt habe ich endlich die Ursache des Problems gefunden!

Ich habe festgestellt, dass es nicht auftritt, wenn ich die Datei Projekt.xml im Projekt-Ordner meiner Anlage lösche. Dann habe ich das XML kontrolliert, aber die Syntax ist korrekt... so weit so gut. Nun habe ich einzelne <Group>-Blöcke gelöscht bis ich den Übeltäter gefunden habe, es liegt an der Gruppe <Group Name="WDIGIPET">. Nun habe ich mir die einzelnen Parameter in dieser Gruppe angesehen und habe begonnen auch diese zu löschen um zu sehen, ob es ein spezifischer ist. Tatsächlich konnte ich das Programm ohne Fehler starten, wenn ich den Eintrag <Parameter Name="Version91">Wahr</Parameter> lösche. Nun gut, jetzt habe ich mir noch die gleiche XML im Beispielprojekt angesehen und siehe da, dort steht beim gleichen Parameter nicht "Wahr", sondern "1". Also habe ich bei meinem XML das "Wahr" durch die "1" ersetzt und das Programm startet ohne Probleme.

Das scheint ein Überbleibsel von früher zu sein, aber warum das erst jetzt zu Problemen führte verstehe ich nicht oder warum das nicht abgefangen wird.

Besten dank und schöne Grüsse,
Fabian
  • Win-Digipet-Version:
    WDP 2018 Premium
  • Anlagenkonfiguration:
    7x5m in E-Form; AC H0 (SBB/BLS) und kleiner Teil DC H0m (RhB); Peco Code 100 mit selbstgebautem Mittelleiter, Bemo für H0m; Zentralen: DiCoStation / Digital-S-Inside, IntelliBox II; Protokolle: mfx, dcc, mm; Booster: LdT DB-4; Rückmeldung: LdT RM-88-N-O; Weichen: Servos mit ESU SwitchPilot Servo + Extension; Signale: Mafen/Portigliatti/Microscale, Steuerung mit Qdecoder; SBB/BLS 3 Bahnhöfe und 3 Schattenbahnhöfe, 69 Weichen; RhB 2 Bahnhöfe und 1 Schattenbahnhof, 22 Weichen
  • Rechnerkonfiguration:
    ASUS B150M-Plus D3, Intel Core I3-6100, Samsung 850 EVO Basic, 8GB Kingston Value RAM, Palit GTX 750 TI KalmX,

Offline Markus Herzog

  • Administrator
  • Senior-Mitglied
  • Beiträge: 16899
  • Ort: Rheinland Ort bei GoogleMaps suchen de
  • WDP-Entwickler
Re: Bug? Run-Time error 13 - Type mismatch WDP 2015.1b
« Antwort #1 am: 30. Oktober 2016, 19:00:19 »
Hallo Fabian

Das scheint ein Überbleibsel von früher zu sein, aber warum das erst jetzt zu Problemen führte verstehe ich nicht
Ist der Rechner auf dem der LZF auftrat eventuell mit keinem deutschen Windows ausgestattet, sondern englisch oder so? Denn das hatten wir früher nur Probleme wenn z.B. auf einem deutschen Rechner das Projekt gespeichert wurde und ein französischer Rechner dann ein "Vraix" und ein englischer "True" erwartet hat. Blieb man immer innerhalb einer Sprache gab das keine Probleme und ging daher über viele viele Jahre gut.
Uns selber ging es aber immer auf den Geist das Windows Wahr/Falsch als Text abgespeichert hat statt 0/1, denn wir hatten dann immer Probleme mit Projekten aus dem Ausland. Also wird neu immer mit 0/1 gespeichert und Altdaten sind keinerlei Problem solange man im selben Land bleibt. Beim nächsten Speichern der jeweiligen Option behebt  es sich von selber.

oder warum das nicht abgefangen wird.
Überall wo es mal untergekommen ist/aufgefallen ist, wurde es auch abgefangen. Aber beim mehreren hundertausend Zeilen Code....

Grüße
Markus
  • Win-Digipet-Version:
    WDP 2021.x Beta
  • Anlagenkonfiguration:
    3-Leiter Anlage, Rollendes Material Märklin/Roco/Brawa/Mehano, Fahren: DCC, m3 via Tams MC, Schalten/Melden: Selectrix, BiDiB, Motorola (nur wenige Sonderaufgaben)
  • Rechnerkonfiguration:
    Intel i7

Offline Fabian Herzog

  • Junior-Mitglied
  • Beiträge: 23
  • Ort: Aargau Ort bei GoogleMaps suchen ch
Re: Bug? Run-Time error 13 - Type mismatch WDP 2015.1b
« Antwort #2 am: 30. Oktober 2016, 19:35:44 »
Hoi Markus,

Zitat
Ist der Rechner auf dem der LZF auftrat eventuell mit keinem deutschen Windows ausgestattet
Das ist tatsächlich so! Der Steuerungs-PC hat ein Deutsches OS und mein Tablet auf dem der Fehler auftrat ist Englisch. Durch den Parameter-Namen habe ich nicht an sowas gedacht. "Vraix", "True", "Wahr" und 0/1, das sind die Tücken von Windows die wir kennen und lieben hahaha, das ist ja wirklich genial.

Zitat
Aber beim mehreren hundertausend Zeilen Code....
Ja, das leuchtet natürlich ein, ist bestimmt ein riesen-Aufwand und mit der 0/1 Variante geht das sicher am besten.

Vielen Dank für deine Ausführungen, ist ein super Forum!

Beste Grüsse,
Fabian
  • Win-Digipet-Version:
    WDP 2018 Premium
  • Anlagenkonfiguration:
    7x5m in E-Form; AC H0 (SBB/BLS) und kleiner Teil DC H0m (RhB); Peco Code 100 mit selbstgebautem Mittelleiter, Bemo für H0m; Zentralen: DiCoStation / Digital-S-Inside, IntelliBox II; Protokolle: mfx, dcc, mm; Booster: LdT DB-4; Rückmeldung: LdT RM-88-N-O; Weichen: Servos mit ESU SwitchPilot Servo + Extension; Signale: Mafen/Portigliatti/Microscale, Steuerung mit Qdecoder; SBB/BLS 3 Bahnhöfe und 3 Schattenbahnhöfe, 69 Weichen; RhB 2 Bahnhöfe und 1 Schattenbahnhof, 22 Weichen
  • Rechnerkonfiguration:
    ASUS B150M-Plus D3, Intel Core I3-6100, Samsung 850 EVO Basic, 8GB Kingston Value RAM, Palit GTX 750 TI KalmX,