PTV Visum - Frequently Asked Questions (FAQs)

(#VIS31338)

- PTV Visum konnte eine passende Installation von Python 2.7 und/oder 3.7 nicht finden.
- Python 2.7 und/oder 3.7 wird unter dem Menü 'Benutzereinstellungen' als 'nicht verfügbar' angezeigt.
- AddIns und Python-Skripte funktionieren nicht.

Beispiele:
Der Öffnen von
Skripte -> Python Console
führt zu einem Absturz oder der Fehlermeldung 'Keine passende Python 3.7 Installation gefunden'.
AddIns wie 'Calculate Matrix' führen zu einer Fehlermeldung oder zum Absturz.

PTV Visum 2020 unterstützt die Python-Versionen 2.7 und 3.7, jeweils in der 64-Bit-Variante.
Parallelinstallation von verschiedenen Python-Versionen sind möglich (z.B. auch 3.8).
Visum braucht eine korrekte Python-Installation (systemweit für Python 2.7) inklusive zugehöriger Registry-Einträge sowie das Python-Paket pywin32. Dieses muss nach der Installation noch systemweit registriert werden, wie unter https://github.com/mhammond/pywin32#installing-via-pip beschrieben.
Deswegen empfehlen wir den von uns mitgelieferten Installer zu verwenden, der auch unter http://cgi.ptvgroup.com/php/vision-setups/ heruntergeladen werden kann.

Vorgehen für Python 3.7
Zunächst alle Python 3.7-Installationen deinstallieren, danach beide Registryschlüssel
HKEY_LOCAL_MACHINE\SOFTWARE\Python\PythonCore\3.7
HKEY_CURRENT_USER\SOFTWARE\Python\PythonCore\3.7
manuell entfernen (falls noch vorhanden) und anschließend Python 3.7 über unseren Installer neu installieren.

Details Python 3.7:
Visum versucht beim Start, die DLL 'pythoncom37.dll' zu laden und verwendet dabei als Suchpfad den Unterordner 'Lib\site-packages\pywin32_system32' des Pfades aus dem InstallPath-Registryschlüssel (<HKLM oder HKCU>\SOFTWARE\Python\PythonCore\3.7\InstallPath).
In diesem Verzeichnis sollten sich die zwei Dateien 'pythoncom37.dll' sowie 'pywintypes37.dll' befinden.
Ebenfalls sollte sich im Ordner, auf den der InstallPath-Registryschlüssel verweist, die Datei 'python37.dll' befinden.
Beim Versuch, die DLL 'pythoncom37.dll' zu laden, wird zusätzlich auch im Systemordner (Windows\system32) und u.U. auch in Ordnern der PATH-Umgebungsvariable gesucht.
Um sicherzustellen, dass es nicht doch noch unterschiedliche Varianten dieser DLL auf dem Rechner gibt, kann man auch noch einmal auf dem gesamten Rechner nach allen Dateien mit dem Namen 'pythoncom37.dll' suchen.
Der Inhalt der Protokolldatei nach dem Versuch, ein Skript auszuführen, könnte auch noch Informationen darüber liefern, was beim Laden von Python fehlschlägt.
Kommt es zu einem Fehler beim Laden von Python-Paketen, könnte dies auch an der Umgebungsvariable PYTHONPATH liegen, wenn diese auf einen Ordner mit Paketen einer anderen Python-Version verweist.