Ошибка py2exe в exe-файле для Windows 7 [дубликат]

Вы используете объект, содержащий ссылку нулевого значения. Таким образом, он дает пустое исключение. В примере строковое значение равно null, и при проверке его длины произошло исключение.

Пример:

string value = null;
if (value.Length == 0) // <-- Causes exception
{
    Console.WriteLine(value); // <-- Never reached
}

Ошибка исключения:

Необработанное исключение:

System.NullReferenceException: ссылка на объект не установлена ​​в экземпляр объекта. в Program.Main ()

24
задан jack the lesser 15 March 2011 в 10:13
поделиться

2 ответа

Py2exe позволяет указать дополнительные пакеты / модули для включения с аргументом options в setup(), если они не будут автоматически обнаружены. Следующее должно работать:

from distutils.core import setup
import py2exe

setup(
    windows=[{'script': 'gui.py'}],
    options={
        'py2exe': 
        {
            'includes': ['lxml.etree', 'lxml._elementpath', 'gzip'],
        }
    }
)

Недавно я также обнаружил PyInstaller , который имеет встроенную поддержку для ряда хорошо известных пакетов, включая lxml, так что возможно, стоит попробовать.

39
ответ дан Steven 28 August 2018 в 19:32
поделиться

Иногда вам нужно будет сделать еще одно действие после изменения файла setup.py.

Как описано здесь , необходимо будет удалить пакет, если он установлен на «яйцах». Затем установите его снова, заставив easy_install дезактивировать архив с опцией «-Z» следующим образом (у меня была проблема с пакетом paramiko):

pip uninstall paramiko
easy_install -Z paramiko
0
ответ дан Rami 28 August 2018 в 19:32
поделиться
Другие вопросы по тегам:

Похожие вопросы: