boss 对办公终端上有个小需求,可咱是混 linux 的,只好拿 python 实现后拿 py2exe 打包吧。 测试什么的都正常。手工执行也没问题, 但 boss 要求开机启动, 于是丢注册表呗, 然而问题来了, 不管扔 current_user 还是 LOCAL_MACHINE , 都给个报错:
Traceback (most recent call last):
File "<install zipextimporter>", line 1, in <module>
ImportError: No module named zipextimporter
Traceback (most recent call last):
File "getinfo.pyw", line 3, in <module>
ImportError: No module named os
google 上爬了半天还是一头雾水, 听说这里大神多, 特来请教。 我个人分析可能是权限问题? 注册表启动的程序以 system 权限执行, 人工执行则是当前用户。 另外这个问题目前暂时解决了, 就是把程序丢到 All Users 的启动目录下, 倒是正常了。 但我还是很好奇为什么注册表不行呢?
1
owlsec 2017-03-28 10:56:52 +08:00
No module named os
|
2
owlsec 2017-03-28 10:57:08 +08:00
没编辑完发出去了。。。。
|
3
owlsec 2017-03-28 10:57:45 +08:00
楼主检查下你的 os 包和 zipextimporter 包有没有一起打包进去。
|
5
chairchan 2017-03-28 12:35:01 +08:00 via Android
要不试试 pyinstaller?
|
6
Osk 2017-03-28 12:41:56 +08:00 via Android
单文件还是一个目录?
多个文件得注意 起始目录 可以试试在 exe 上点击右键创建快捷方式,把快捷方式放在 开始菜单>启动 里面自启。 |
7
th3m0m3nt OP 补充一下,是打包成了一个文件 , 打包参数如下:
``` options={"py2exe":{ "bundle_files": 1, "compressed": 1, "optimize": 2 } } setup(options=options, zipfile=None, windows=[{'script' : 'getinfo.pyw', 'name' : 'osinfo', 'version' : '0.1'}]) ``` |
8
wonpn 2017-03-28 13:36:58 +08:00 via Android
搞个快捷方式,拖到开机自启目录…
|
10
linhaolun33 2017-04-01 16:42:55 +08:00
我是新手 我们 BOSS 跟你们 BOSS 一样 也要搞个桌面程序 要搞开机启动 我 python 很弱 不知道怎么实现 能否给我看下开机启动代码 谢谢
|