Daleko důležitější FAQ: py2exe je prasečina, která prostě jen natvrdo prohledává řádky s import a vkládá je do souboru.
Důsledek 1: Pokud někdo importuje dynamicky, pak py2exe to nezjistí a modul do exe nepřidá a je třeba mu to ručně říct, že tam patří. Důsledek 2: Pokud je někdy v podmínkách importuj modul A, a když není, tak modul B, tak je py2exe téměř v koncích. Ani nevíte, jaké problémy jsou třeba někdy problémy s mysqldb modulem, který importuje jeden ze dvou modulů pro práci s datumem, podle toho který je k dispozici. Občas py2exe se pak chová v takovém případě jako diktátor, fašista, sadista, atd.. Důsledek 3 (aneb zákeřnější důsledek důsledku 1): Je třeba váš exe vyzkoušet na počítači, kde není instalován Python!!! Protože pokud py2exe zapomenete některé moduly přidat do exe, pak to nemusíte zjistit, protože on je najde ve Vaší instalaci pythonu, a chyba se přikryje a vy žijete v blahé navědomosti. Důsledek 4 (aneb koincidence s instalací Pythonu): Bohužel Python interpretr není zcela dobře dělán a je dost obtížné ho zbavit všech závislostí na instalaci Pythonu. A protože interpretr Pythonu bohužel je součástí i vytvořeného exe, tak se může stát, že na počítači s jinak nastavenou instalací Pythonu začnou kolidovat různě cesty, a třeba namísto vnitřního modulu v exe třeba volá instalovaný modul v instalaci Pythonu. Je tedy třeba ještě vyzkoušet exe na počítači s jinak nastavenými cestami Pythonu a nejlépe s jinou nekompatibilní verzí Pythonu. Toto je bohužel zákeřnost, která je těžko zlepšitelná. Důležité FAQ pro puntičkáře: Pokud přejmenujete název exe souboru, program přestane chodit! Řada lidí to přejmenovává a pak se nestačí divit a považuje to za chybu programátora. Je třeba do manuálu jasně napsat, že název exe se nesmí přejmenovat jinak program nefachá! Miloslav Ponkrác > ----FAQ---- > FAQ1: Chyba?! > -Zkontroluj jestli máš Python v PATH... > _______________________________________________ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python