我在 windows 7 64bit 上使用 python 2.7.11 和py2exe 0.6.9.exe
,运行文件后出现以下错误。
ValueError: Multibackend 不能在没有后端的情况下初始化。
如果您在尝试使用时看到此错误,
default_backend()
请尝试卸载并重新安装密码学。
我在 windows 7 64bit 上使用 python 2.7.11 和py2exe 0.6.9.exe
,运行文件后出现以下错误。
ValueError: Multibackend 不能在没有后端的情况下初始化。
如果您在尝试使用时看到此错误,
default_backend()
请尝试卸载并重新安装密码学。
我写了下面的代码,然后问题就解决了。
def patch_crypto_be_discovery():
"""
Monkey patches cryptography's backend detection.
Objective: support pyinstaller freezing.
"""
from cryptography.hazmat import backends
try:
from cryptography.hazmat.backends.commoncrypto.backend import backend as be_cc
except ImportError:
be_cc = None
try:
from cryptography.hazmat.backends.openssl.backend import backend as be_ossl
except ImportError:
be_ossl = None
backends._available_backends_list = [
be for be in (be_cc, be_ossl) if be is not None
]
patch_crypto_be_discovery()