【python学习】——为exe软件创建快捷方式;实现软件自启动

【python学习】——为exe软件创建快捷方式;实现软件自启动,第1张

目录

1、为exe创建快捷方式

 2、实现软件自启动

3、完整代码

4、结果展示


1、为exe创建快捷方式

利用winshell库的CreateShortCut函数进行创建

【python学习】——获取桌面路径,获取系统盘符,获取电脑用户名,获取软件自启动存放目录_有情怀的机械男的博客-CSDN博客【python学习】——获取桌面路径,获取系统盘符,获取电脑用户名,获取软件自启动存放目录https://blog.csdn.net/qq_45769063/article/details/124707721

 2、实现软件自启动

自己可以创建一个快捷方式然后拖到电脑自启动目录也行

这里的话其实就是利用Python在电脑自启动目录下创建了一个exe的快捷方式而已

3、完整代码

import os
import winreg
import winshell


"""
这里调用了winshell的CreateShortcut函数。
传入4个参数,分别为:快捷方式的路径,exe文件的路径,图标路径,还有描述信息。
"""

def create_shortcut(bin_path: str, name: str, desc: str):
	'''

	:param bin_path: exe路径
	:param name: 需要创建快捷方式的路径
	:param desc: 描述,鼠标放在图标上面会有提示
	:return:
	'''
	try:
		print(winshell.desktop())
		shortcut =  name + ".lnk"
		winshell.CreateShortcut(
			Path=shortcut,
			Target=bin_path,
			Icon=(bin_path, 0),
			Description=desc
		)
		return True
	except ImportError as err:
		print("Well, do nothing as 'winshell' lib may not available on current os")
		print("error detail %s" % str(err))
	return False

def get_desktop():
	key = winreg.OpenKey(winreg.HKEY_CURRENT_USER,
	                     r'Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders')
	return winreg.QueryValueEx(key, "Desktop")[0]

if __name__ == "__main__":
	import getpass
	import os

	# 将快捷方式添加到桌面
	deskTopDir = get_desktop()
	# deskTopDir = winshell.desktop()
	bin_path = r"main_logic.exe"
	link_path = deskTopDir + "\main_logic"
	desc = "喝水提醒小工具"
	create_shortcut(bin_path, link_path, desc)

	# 将快捷方式添加到自启动目录
	## #获取用户名
	username = getpass.getuser()
	## 系统盘符名称
	syspath = os.getenv("SystemDrive")
	## 自启动目录
	startupPath = os.path.join(os.getenv("SystemDrive"),r"\users",getpass.getuser(),r"AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup")
	bin_path = r"main_logic.exe"
	link_path = startupPath + "\main_logic"
	desc = "喝水提醒小工具"
	create_shortcut(bin_path, link_path, desc)
4、结果展示

1)、桌面快捷方式——鼠标放上面有信息提示

 2)、自启动目录快捷方式——鼠标放上面有信息提示

 

 

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/919020.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-16
下一篇 2022-05-16

发表评论

登录后才能评论

评论列表(0条)

保存