Pouvez-vous utiliser PyCrypto avec py2exe? Pouvez-vous utiliser n'importe quelle bibliothèque arbitraire avec py2exe?PyCrypto avec Py2exe
Merci, Chris
Pouvez-vous utiliser PyCrypto avec py2exe? Pouvez-vous utiliser n'importe quelle bibliothèque arbitraire avec py2exe?PyCrypto avec Py2exe
Merci, Chris
Je dois encore trouver quelque chose qui ne peut pas gérer py2exe en fait, bien que de temps en temps, il a pris du retard des développements en Python lui-même. (Par exemple, pendant un certain temps, il a eu des problèmes avec les nouvelles importations absolues, mais je crois que cela a été résolu, mais pas avec les œufs, mais je ne sais pas si cela a été résolu.)
Je ne vois pas pourquoi vous auriez un problème avec PyCrypto, car ce paquet n'a rien de spécial comparé à beaucoup d'autres qui fonctionnent bien. C'est un tas de pure Python plus une poignée de fichiers .pyd, et certainement py2exe traite bien avec ceux-ci. Voici un exemple, en utilisant le code tiré du site PyCrypto:
from Crypto.Cipher import DES
def main():
obj=DES.new('abcdefgh', DES.MODE_ECB)
plain='Thvqb ina Ebffhz vf n fcnpr nyvra.'.encode('rot13')
ciph=obj.encrypt(plain+' ' * 6)
print obj.decrypt(ciph)
if __name__ == '__main__':
import sys
if sys.argv[1:] == ['py2exe']:
from distutils.core import setup
import py2exe
setup(console=[dict(script='script.py')],
options={'py2exe': {'excludes': ['Tkinter'] }})
else:
main()
Enregistrer sous script.py
, construire avec script py2exe
et courir avec dist\script
pour voir la sortie.
Cela fonctionnerait-il avec m2crypto, puisque c'est juste un emballage? – Chris
@Chris: Faites une application de test et découvrez. – Brian
@Chris, si par "juste un emballage" vous voulez dire "pur Python", alors certainement ce serait. Py2exe n'a rien à faire de particulier pour un paquet générique par rapport à un autre. Si un paquet fait quelque chose d'exotique, il peut avoir besoin d'une manipulation spéciale, mais a) la plupart des paquets ne sont pas exotiques, et b) tout paquet populaire aura déjà été traité longtemps avant que vous ne l'ayez trouvé. –