#-*- coding:gbk -*-
from distutils.core importsetupfrom glob importglobtry:#py2exe 0.6.4 introduced a replacement modulefinder.
#This means we have to add package paths there, not to the built-in
#one. If this new modulefinder gets integrated into Python, then
#we might be able to revert this some day.
#if this doesn't work, try import modulefinder
try:importpy2exe.mf as modulefinderexceptImportError:importmodulefinderimportwin32com, sysfor p in win32com.__path__[1:]:
modulefinder.AddPackagePath("win32com", p)for extra in ["win32com.shell"]: #,"win32com.mapi"
__import__(extra)
m=sys.modules[extra]for p in m.__path__[1:]:
modulefinder.AddPackagePath(extra, p)exceptImportError:#no build path setup, no worries.
passmanifest= """<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
VF5ECUAHPV7EnUf+/UIXMPizPvs=
3Wg+StVMq2uhx7POnAkl2w4dDmY=
/YfRn7UQENzdMeoMHxTgdRMiObA=
ETimes SafeDocument
"""data_files= [("Microsoft.VC90.CRT",
glob(r'C:\Program Files\Microsoft Visual Studio 9.0\VC\redist\x86\Microsoft.VC90.CRT\*.*'))]
py2exe_options= {"py2exe": {"compressed": 1,"optimize": 0,"bundle_files": 1,"dll_excludes": ["mswsock.dll", "powrprof.dll"],"excludes": ["email", "System", "clr"],"typelibs": [("{A435DD76-804E-4475-8FAB-986EACD1C6BE}", 0x0, 1, 0), ]
}
}
setup(
data_files=data_files,
windows=[{'script': 'EtimesDocument.pyw',"other_resources":[(24,1,manifest)],"icon_resources": [
(0,'./png/Attach.ico')
]}],
zipfile='core.lib',
options=py2exe_options
)