使用 Python 的 cx_Freeze 安装程序添加开始菜单快捷方式
Posted
技术标签:
【中文标题】使用 Python 的 cx_Freeze 安装程序添加开始菜单快捷方式【英文标题】:Adding start menu shortcuts with cx_Freeze installer for Python 【发布时间】:2013-04-18 21:10:27 【问题描述】:使用 cx_freeze 制作并测试了我的 .msi 安装程序后,除了从最终用户的角度来看的一个重要部分外,它一切正常:在安装程序期间勾选复选框不能创建开始菜单或桌面快捷方式,也不能创建这些动作中的一些似乎是默认发生的。
但是,通过搜索邮件档案等,我发现它实际上应该默认创建一个开始菜单快捷方式。
有谁知道我是否可以添加到我的setup.py
或其他任何东西来完成这项工作?我不确定这是否仅在我的 PC 上发生,因此如果您可以测试安装程序是否为您创建了快捷方式,这将有所帮助。您可以测试安装程序here。
【问题讨论】:
我不知道单独使用 cx_Freeze 的方法,但是如果您使用 cx_Freeze 准备构建文件夹,您可以使用单独的程序(如 Inno setup)来创建更高级的安装程序。 @Thomas 哦,那太理想了,我认为 Inno 会复杂得多,但创建完整的应用程序安装程序需要几分钟!转发作为答案? 【参考方案1】:在您的设置脚本中,添加带有所需参数的“shortcutDir”关键字。该参数可以是 DesktopFolder 或 StartupFolder。 “shortcutName”关键字也可用于为快捷方式提供名称。
以下链接也可用作参考,以进一步帮助您解决问题: Use cx-freeze to create an msi that adds a shortcut to the desktop
https://github.com/anthony-tuininga/cx_Freeze/issues/48
【讨论】:
StartupFolder
会将程序添加到启动文件夹中,而不是在开始菜单中。即开始菜单C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup
的子菜单在windows启动时加载程序。
改用shortcutDir=ProgramMenuFolder
。【参考方案2】:
作为答案转发:
我不知道单独使用 cx_Freeze 的方法,但如果您使用 cx_Freeze 准备构建文件夹,则可以使用单独的程序(如 Inno setup)来创建更高级的安装程序。
【讨论】:
以上是关于使用 Python 的 cx_Freeze 安装程序添加开始菜单快捷方式的主要内容,如果未能解决你的问题,请参考以下文章
python 3.6.4安装cx_freeze(cxfreeze)成功过程分享
[Python]使用cx_Freeze打包FastApi项目的方法以及遇到的问题