52680


お世話になります。

Python2.7とPy2Exeの環境で実行ファイルを作成する必要が出てきたので、作成しようとしました。  
しかし、

error: [Errno 2] No such file or directory: 'api-ms-win-core-
libraryloader-l1-2-1.dll'

というエラーが表示され、実行ファイルの作成ができません。  
この「api-ms-win-core-libraryloader-l1-2-1.dll」というDLLはどのようにしたらインストールできるのでしょうか。  
OSはWindows10を利用しています。  
もしご存知でしたら、教えていただけると幸いです。

以上、よろしくお願いいたします。


CC BY-SA 4.0
2019-02-10T09:05:10.553
52678
2019-02-10T09:50:45.233
29034
question
python
py2exeでの実行ファイル作成エラー


その手のdllはシステムに既に存在するもので、独立した単なるアプリケーションが自分の中に抱え込むものではありません。`setup.py` の
`dll_excludes` リストに追加しておけば良いと考えられます。  
[How to prevent unnecessary imports with
py2exe?](https://stackoverflow.com/questions/29972144/how-to-prevent-
unnecessary-imports-with-py2exe)

cv2とかを使うといっぱい出てくるとかの事例があるようです。  
回答の中で類似して関連してそうなものを翻訳して引用しておきます。  
[py2exe fails to create EXE due to missing DLL when opencv is
imported](https://stackoverflow.com/q/34505408/9014308)

>
> 私はopencvを使用していませんが、同じ問題で立ち往生していました。どの画像がどのDLLをインポートしているのかをpy2exeに変更した後、以下を含めるようにリストを拡張しても私のインポートしたlibにはうまくいくことがわかりました。
> ：
[code]

    "dll_excludes": [
    'MSVCP90.dll',
    'IPHLPAPI.DLL',
    'NSI.dll',
    'WINNSI.DLL',
    'WTSAPI32.dll',
    'SHFOLDER.dll',
    'PSAPI.dll',
    'MSVCR120.dll',
    'MSVCP120.dll',
    'CRYPT32.dll',
    'GDI32.dll',
    'ADVAPI32.dll',
    'CFGMGR32.dll',
    'USER32.dll',
    'POWRPROF.dll',
    'MSIMG32.dll',
    'WINSTA.dll',
    'MSVCR90.dll',
    'KERNEL32.dll',
    'MPR.dll',
    'Secur32.dll',
    ]
    
[/code]

> 私は問題が何であるかを正確に理解したと思います。これは、cv2.pydが何らかのシステムレベルのdll（Visual
> Studioがインストールされている場合は "dumpbin / dependents
> cv2.pyd"を試してください）に依存していて、py2exeによって無視されないためです。
[code]

    MSVFW32.dll
    AVIFIL32.dll
    AVICAP32.dll
    ADVAPI32.dll
    CRYPT32.dll
    WLDAP32.dll
    
[/code]

> そして、これらのdllは "api-ms-win-core -
> *****"で返信します。あなたが他のマシンにあなたのソフトウェアを配布したいならば、これらのdllもコピーされるべきではありません。
>
> 最後に、 "api-ms-win-core -
> *****"ではなく、より賢明な解決策として上記のDLLを除外することで、このようにして問題も解決されます。
[code]

    "dll_excludes": ["MSVFW32.dll",
                     "AVIFIL32.dll",
                     "AVICAP32.dll",
                     "ADVAPI32.dll",
                     "CRYPT32.dll",
                     "WLDAP32.dll"]
    
[/code]


CC BY-SA 4.0
2019-02-10T09:50:45.233
52680
2019-02-10T09:50:45.233
26370
52678
answer