создать исключение, когда python команда генерирует программу.exe перестала работать ошибка типа - PullRequest
0 голосов
/ 22 апреля 2020

Я столкнулся с проблемой с программой, которую я разрабатываю в Python 3.6 в Windows 10.

Одна конкретная команда генерирует неизвестную ошибку, windows бросает 'program.exe остановлена рабочее сообщение и программа завершается.

Команда представляет собой загрузчик 3d-модели, являющийся частью другого пакета python (Panda3D). Cra sh всегда ассоциируется с этой командой (и более конкретно с указанием c dll загрузчика) и конкретным файлом, который он пытается открыть.

Поскольку я не могу найти и, следовательно, устранить неисправности в dll (возможно, там есть ошибка), я хотел бы просто пропустить файл проблемати c и перейти к следующему. Но поскольку python выходит и я не знаю тип ошибки, типичная попытка, кроме как, не работает.

Итак, я хотел бы знать, есть ли способ предсказать этот тип поведения в моем код и не допустить выхода из программы.

Большое спасибо за любую помощь.

1 Ответ

0 голосов
/ 22 апреля 2020

Всплывающее окно «Program.exe перестал работать». может быть вызвано различными причинами, и поэтому не существует решения типа «один размер подходит всем». Но если вы уверены, что ваша проблема вызвана определенной c строкой кода, вы всегда можете попробовать что-то вроде:

try:
    loader.loadModel("c/path/to/your/file")
except Exception as e:
    print(e.message, e.args)
    # your error-handling code here

Убедитесь, что путь к файлу, который вы даете loadModel учитывает следующее:

# WRONG:
loader.loadModel("c:\\Program Files\\My Game\\Models\\Model1.egg")

# RIGHT:
loader.loadModel("/c/Program Files/My Game/Models/Model1.egg")

Источник: Официальная документация pandas3d

...