Pyinstaller не может скомпилировать win32com, используя скрипт для доступа к Outlook, который отлично работает из Pycharm - PullRequest
0 голосов
/ 08 января 2019

Следующий скрипт прекрасно работает в Pycharm 2018.3:

import win32com.client as win32

# environment runs under Pycharm 2018.3
# installed via installer: https://github.com/mhammond/pywin32/releases/download/b224/pywin32-224.win32-py3.6.exe
# installed modules via pip win32compat, Pyinstaller
# in terminal run venv\Scripts\pyinstaller.exe --onefile list_inbox.py

outlook = win32.Dispatch("Outlook.Application").GetNamespace("MAPI")
inbox = outlook.GetDefaultFolder(6)

messages = inbox.Items
message = messages.GetFirst()

while message:
    print("Subject: {}\tSent: {}\tSender: {}".format(message.subject, message.CreationTime, message.Sender))
    message = messages.GetNext()

Однако, когда я пытаюсь скомпилировать его, я получаю следующее:

Microsoft Windows [Version 10.0.14393]
(c) 2016 Microsoft Corporation. All rights reserved.

C:\PycharmProjects\wincom32_test>venv\Scripts\pyinstaller.exe --onefile list_inbox.py
1209 INFO: PyInstaller: 3.4
1209 INFO: Python: 3.6.3
1210 INFO: Platform: Windows-10-10.0.14393-SP0
1217 INFO: wrote C:\PycharmProjects\wincom32_test\list_inbox.spec
1221 INFO: UPX is not available.
1235 INFO: Extending PYTHONPATH with paths
['C:\\PycharmProjects\\wincom32_test',
 'C:\\PycharmProjects\\wincom32_test']
1235 INFO: checking Analysis
1241 INFO: Building Analysis because Analysis-00.toc is non existent
1242 INFO: Initializing module dependency graph...
1260 INFO: Initializing module graph hooks...
1275 INFO: Analyzing base_library.zip ...
9634 INFO: running Analysis Analysis-00.toc
9663 INFO: Adding Microsoft.Windows.Common-Controls to dependent assemblies of final executable
  required by C:\PycharmProjects\wincom32_test\venv\Scripts\python.exe
10268 WARNING: lib not found: api-ms-win-crt-stdio-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\python.exe
10708 WARNING: lib not found: api-ms-win-crt-runtime-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\python.exe
11076 WARNING: lib not found: api-ms-win-crt-math-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\python.exe
11439 WARNING: lib not found: api-ms-win-crt-locale-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\python.exe
11770 WARNING: lib not found: api-ms-win-crt-heap-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\python.exe
12182 WARNING: lib not found: api-ms-win-crt-stdio-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\VCRUNTIME140.dll
12519 WARNING: lib not found: api-ms-win-crt-string-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\VCRUNTIME140.dll
12807 WARNING: lib not found: api-ms-win-crt-runtime-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\VCRUNTIME140.dll
13075 WARNING: lib not found: api-ms-win-crt-heap-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\VCRUNTIME140.dll
13359 WARNING: lib not found: api-ms-win-crt-convert-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\VCRUNTIME140.dll
13775 WARNING: lib not found: api-ms-win-crt-time-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\python36.dll
14062 WARNING: lib not found: api-ms-win-crt-stdio-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\python36.dll
14319 WARNING: lib not found: api-ms-win-crt-string-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\python36.dll
14587 WARNING: lib not found: api-ms-win-crt-process-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\python36.dll
14857 WARNING: lib not found: api-ms-win-crt-filesystem-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\python36.dll
15147 WARNING: lib not found: api-ms-win-crt-environment-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\python36.dll
15420 WARNING: lib not found: api-ms-win-crt-runtime-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\python36.dll
15692 WARNING: lib not found: api-ms-win-crt-conio-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\python36.dll
16054 WARNING: lib not found: api-ms-win-crt-math-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\python36.dll
16359 WARNING: lib not found: api-ms-win-crt-locale-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\python36.dll
16662 WARNING: lib not found: api-ms-win-crt-heap-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\python36.dll
16950 WARNING: lib not found: api-ms-win-crt-convert-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\python36.dll
16953 INFO: Caching module hooks...
16965 INFO: Analyzing C:\PycharmProjects\wincom32_test\list_inbox.py
16969 INFO: Processing pre-safe import module hook   win32com
17810 INFO: Loading module hooks...
17811 INFO: Loading module hook "hook-encodings.py"...
18172 INFO: Loading module hook "hook-pydoc.py"...
18181 INFO: Loading module hook "hook-win32com.py"...
18192 WARNING: Hidden import "win32com.client.util" not found!
18395 INFO: Loading module hook "hook-xml.py"...
18775 INFO: Looking for ctypes DLLs
18775 INFO: Analyzing run-time hooks ...
18779 INFO: Including run-time hook 'pyi_rth_win32comgenpy.py'
18793 INFO: Looking for dynamic libraries
19092 WARNING: lib not found: api-ms-win-crt-runtime-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\lib\site-packages\win32\_trace.cp36-win32.pyd
19360 WARNING: lib not found: api-ms-win-crt-heap-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\lib\site-packages\win32\_trace.cp36-win32.pyd
19654 WARNING: lib not found: api-ms-win-crt-runtime-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\lib\site-packages\win32\_api.cp36-win32.pyd
19952 WARNING: lib not found: api-ms-win-crt-heap-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\lib\site-packages\win32\_api.cp36-win32.pyd
20293 WARNING: lib not found: api-ms-win-crt-convert-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\lib\site-packages\win32\_api.cp36-win32.pyd
20622 WARNING: lib not found: api-ms-win-crt-time-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\lib\site-packages\win32\types.cp36-win32.pyd
20890 WARNING: lib not found: api-ms-win-crt-stdio-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\lib\site-packages\win32\types.cp36-win32.pyd
21168 WARNING: lib not found: api-ms-win-crt-string-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\lib\site-packages\win32\types.cp36-win32.pyd
21497 WARNING: lib not found: api-ms-win-crt-runtime-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\lib\site-packages\win32\types.cp36-win32.pyd
21835 WARNING: lib not found: api-ms-win-crt-math-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\lib\site-packages\win32\types.cp36-win32.pyd
22183 WARNING: lib not found: api-ms-win-crt-heap-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\lib\site-packages\win32\types.cp36-win32.pyd
22523 WARNING: lib not found: api-ms-win-crt-stdio-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\lib\site-packages\win32\_com.cp36-win32.pyd
22784 WARNING: lib not found: api-ms-win-crt-utility-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\lib\site-packages\win32\_com.cp36-win32.pyd
23056 WARNING: lib not found: api-ms-win-crt-string-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\lib\site-packages\win32\_com.cp36-win32.pyd
23336 WARNING: lib not found: api-ms-win-crt-runtime-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\lib\site-packages\win32\_com.cp36-win32.pyd
23619 WARNING: lib not found: api-ms-win-crt-heap-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\lib\site-packages\win32\_com.cp36-win32.pyd
23926 WARNING: lib not found: api-ms-win-crt-time-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\_ssl.pyd
24188 WARNING: lib not found: api-ms-win-crt-stdio-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\_ssl.pyd
24448 WARNING: lib not found: api-ms-win-crt-utility-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\_ssl.pyd
24707 WARNING: lib not found: api-ms-win-crt-string-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\_ssl.pyd
24981 WARNING: lib not found: api-ms-win-crt-filesystem-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\_ssl.pyd
25298 WARNING: lib not found: api-ms-win-crt-convert-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\_ssl.pyd
25564 WARNING: lib not found: api-ms-win-crt-runtime-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\_ssl.pyd
25844 WARNING: lib not found: api-ms-win-crt-environment-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\_ssl.pyd
26107 WARNING: lib not found: api-ms-win-crt-conio-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\_ssl.pyd
26371 WARNING: lib not found: api-ms-win-crt-heap-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\_ssl.pyd
26657 WARNING: lib not found: api-ms-win-crt-stdio-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\unicodedata.pyd
26925 WARNING: lib not found: api-ms-win-crt-string-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\unicodedata.pyd
27190 WARNING: lib not found: api-ms-win-crt-runtime-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\unicodedata.pyd
27462 WARNING: lib not found: api-ms-win-crt-stdio-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\pyexpat.pyd
27768 WARNING: lib not found: api-ms-win-crt-string-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\pyexpat.pyd
28125 WARNING: lib not found: api-ms-win-crt-environment-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\pyexpat.pyd
28604 WARNING: lib not found: api-ms-win-crt-runtime-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\pyexpat.pyd
28988 WARNING: lib not found: api-ms-win-crt-heap-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\pyexpat.pyd
29340 WARNING: lib not found: api-ms-win-crt-time-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\_hashlib.pyd
29672 WARNING: lib not found: api-ms-win-crt-stdio-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\_hashlib.pyd
29982 WARNING: lib not found: api-ms-win-crt-utility-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\_hashlib.pyd
30240 WARNING: lib not found: api-ms-win-crt-string-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\_hashlib.pyd
30512 WARNING: lib not found: api-ms-win-crt-convert-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\_hashlib.pyd
30774 WARNING: lib not found: api-ms-win-crt-environment-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\_hashlib.pyd
31038 WARNING: lib not found: api-ms-win-crt-runtime-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\_hashlib.pyd
31298 WARNING: lib not found: api-ms-win-crt-conio-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\_hashlib.pyd
31580 WARNING: lib not found: api-ms-win-crt-heap-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\_hashlib.pyd
31876 WARNING: lib not found: api-ms-win-crt-stdio-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\_bz2.pyd
32136 WARNING: lib not found: api-ms-win-crt-string-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\_bz2.pyd
32408 WARNING: lib not found: api-ms-win-crt-runtime-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\_bz2.pyd
32664 WARNING: lib not found: api-ms-win-crt-math-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\_bz2.pyd
32931 WARNING: lib not found: api-ms-win-crt-heap-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\_bz2.pyd
33204 WARNING: lib not found: api-ms-win-crt-runtime-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\_lzma.pyd
33469 WARNING: lib not found: api-ms-win-crt-heap-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\_lzma.pyd
33843 WARNING: lib not found: api-ms-win-crt-runtime-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\_socket.pyd
34266 WARNING: lib not found: api-ms-win-crt-runtime-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\Scripts\select.pyd
34613 WARNING: lib not found: api-ms-win-crt-time-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\lib\site-packages\win32\types.cp36-win32.pyd
34886 WARNING: lib not found: api-ms-win-crt-stdio-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\lib\site-packages\win32\types.cp36-win32.pyd
35155 WARNING: lib not found: api-ms-win-crt-string-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\lib\site-packages\win32\types.cp36-win32.pyd
35502 WARNING: lib not found: api-ms-win-crt-runtime-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\lib\site-packages\win32\types.cp36-win32.pyd
35971 WARNING: lib not found: api-ms-win-crt-math-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\lib\site-packages\win32\types.cp36-win32.pyd
36314 WARNING: lib not found: api-ms-win-crt-heap-l1-1-0.dll dependency of C:\PycharmProjects\wincom32_test\venv\lib\site-packages\win32\types.cp36-win32.pyd
36314 INFO: Looking for eggs
36315 INFO: Using Python library C:\PycharmProjects\wincom32_test\venv\Scripts\python36.dll
36315 INFO: Found binding redirects:
[]
36329 INFO: Warnings written to C:\PycharmProjects\wincom32_test\build\list_inbox\warn-list_inbox.txt
36415 INFO: Graph cross-reference written to C:\PycharmProjects\wincom32_test\build\list_inbox\xref-list_inbox.html
36485 INFO: checking PYZ
36486 INFO: Building PYZ because PYZ-00.toc is non existent
36486 INFO: Building PYZ (ZlibArchive) C:\PycharmProjects\wincom32_test\build\list_inbox\PYZ-00.pyz
37350 INFO: Building PYZ (ZlibArchive) C:\PycharmProjects\wincom32_test\build\list_inbox\PYZ-00.pyz completed successfully.
37361 INFO: checking PKG
37362 INFO: Building PKG because PKG-00.toc is non existent
37362 INFO: Building PKG (CArchive) PKG-00.pkg
37449 WARNING: One binary added with two internal names.
37450 WARNING: ('types.cp36-win32.pyd',
 'C:\\PycharmProjects\\wincom32_test\\venv\\lib\\site-packages\\win32\\types.cp36-win32.pyd',
 'BINARY')
37450 WARNING: was placed previously at
37451 WARNING: ('win32\\types.cp36-win32.pyd',
 'C:\\PycharmProjects\\wincom32_test\\venv\\lib\\site-packages\\win32\\types.cp36-win32.pyd',
 'EXTENSION')
39236 INFO: Building PKG (CArchive) PKG-00.pkg completed successfully.
39241 INFO: Bootloader C:\PycharmProjects\wincom32_test\venv\lib\site-packages\PyInstaller\bootloader\Windows-32bit\run.exe
39241 INFO: checking EXE
39242 INFO: Building EXE because EXE-00.toc is non existent
39242 INFO: Building EXE from EXE-00.toc
39254 INFO: Appending archive to EXE C:\PycharmProjects\wincom32_test\dist\list_inbox.exe
39316 INFO: Building EXE from EXE-00.toc completed successfully.

C:\PycharmProjects\wincom32_test>cd dist

C:\PycharmProjects\wincom32_test\dist>list_inbox.exe
Traceback (most recent call last):
  File "lib\site-packages\PyInstaller\loader\rthooks\pyi_rth_win32comgenpy.py", line 59, in <module>
ModuleNotFoundError: No module named 'win32com.gen_py'
[6544] Failed to execute script pyi_rth_win32comgenpy

C:\PycharmProjects\wincom32_test\dist>

Также не удается скомпилировать, если я использую pip для установки pywin32 (с очень похожим выводом).

В недавнем прошлом у меня не было проблем с упаковкой скрипта win32com, работающего с Excel, он не компилируется и в этой среде, поэтому может зависеть от Outlook.

Что я делаю не так?

...