Cómo detener el progtwig Python comstackdo en py2exe para que no muestre ImportError: No hay nombres de módulos ‘ctypes’

Me preguntaba si esto podría ser un error de comstackción o si hay algo que pueda hacer para evitar que se muestre. He hecho un progtwig argparse para cmd. Lo compilé con py2exe y, cuando lo ejecuto, ejecuta el progtwig correctamente, pero siempre da este error antes de ejecutar el código:

Traceback (most recent call last): File "boot_common.py", line 46, in  ImportError: No module named 'ctypes' 

Si hay algo en mi código, aquí está mi script:

 import argparse import zipfile import os from contextlib import closing def parse_args(): parser = argparse.ArgumentParser('ziputil '+\ '-m  -f  -p ') parser.add_argument('-f', action="store", dest='files', type=str, help='-f  : Specify the files to be zipped, or the .zip to be unzipped.') parser.add_argument('-m', action="store", dest='mode', type=str, help='-m  : Zip to zip files, UnZip, to unzip files, or ZipDir to zip entire directories.') parser.add_argument('-p', action="store", dest='path', type=str, nargs='?', const=os.getcwd(), help='-p  : specify the path to unpack/pack to.') return vars(parser.parse_args()) def unzipPackage(path, files): with zipfile.ZipFile(files, "r") as z: z.extractall(path) def zipPackage(path, files): files = files.split(', ') zf = zipfile.ZipFile(path, mode='w') try: for file in files: zf.write(file) finally: zf.close() def zipdir(path, zip): for root, dirs, files in os.walk(path): for file in files: zip.write(os.path.join(root, file)) dict = parse_args() files = dict['files'] path = dict['path'] mode = dict['mode'] if mode == 'Zip': zipPackage(path, files) elif mode == 'UnZip': unzipPackage(path, files) elif mode == 'ZipDir': zipf = zipfile.ZipFile(path, 'w') zipdir(files, zipf) zipf.close() 

Esto se debe a un error en py2exe, se solucionará en la próxima versión. Más información

La solución es agregar ctypes a bootstrap_modules en el ctypes C:\Python34\Lib\site-packages\py2exe\runtime.py (línea 117).

 ... # modules which are always needed bootstrap_modules = { # Needed for Python itself: "ctypes", "codecs", "io", "encodings.*", } ...