2013-09-05 1 views
0

Я создал скрипт, который меняет цвет в файле excel. Herefor я использую:
импорт win32com.client в win32
первенствует = win32.gencache.EnsureDispatch ('Excel.Application')py2exe и win32com с excel

Теперь я хочу, чтобы сделать файл ехе с py2exe. Он дает ошибку ключа < 000208D5-0000-0000-C000-000000000046>. Я знаю, что проблема связана с win32com.client, но я не могу ее решить.

Есть идеи?

Tx

ответ

0

Disclaimer- в основном это предположение:

Попробуйте использовать win32.Dispatch или win32.DispatchEx. EnsureDispatch фактически создает файл .py с классом, представляющим запрошенный COM-объект, и возвращает его, поэтому он может странно взаимодействовать с функциональностью py2exe.

Я не знаю, как COM работает под оболочкой python, но я бы предположил, что что-то похожее на то, что py2exe может быть блокировкой в ​​наборе данных COM-объекта в файле макроса gencache вместо того, чтобы позволить ему динамически генерируется, если в изменениях среды выполнения.

0

Я только что решил эту проблему. Если вы хотите использовать win32 com-сервиса, сначала вы должны убедиться, что com-сервис уже запущен, чтобы проверить это, выполнив: «dcomcnfg» в командной строке, если com-сервис excel запущен правильно, вы должны увидеть «Microsoft Excel Application »в списке сервисов dcom: the correct result should like this если« Microsoft Excel Application »нет в списке, вы можете решить эту проблему на Microsoft Excel or Microsoft Word does not appear in DCOM Configuration snap-in