当前位置:   article > 正文

python创建快捷方式到启动目录_oshortcut.targetpath

oshortcut.targetpath
  1. # -*- coding:utf-8 -*-
  2. # author:lizonezhi
  3. import os
  4. import sys
  5. import pythoncom
  6. import win32com.client as client
  7. def createShortCut(filename): # 目前创建的无起始位置
  8. """filename should be abspath, or there will be some strange errors"""
  9. try:
  10. # 设置快捷方式的起始位置,此处设置为windows启动目录
  11. working_directory = os.getenv(
  12. 'USERPROFILE') + '\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\\'
  13. # 创建快捷方式的目标绝对路径
  14. lnkname = working_directory + filename + '.lnk'
  15. # 要创建快捷方式的文件的绝对路径,此处是获取当前路径
  16. filename = os.path.dirname(os.path.realpath(sys.argv[0])) + '\\' + filename
  17. shortcut = client.Dispatch("WScript.Shell").CreateShortCut(lnkname)
  18. shortcut.TargetPath = filename
  19. shortcut.save()
  20. print('配置开机自启')
  21. except Exception as e:
  22. print(e.args)
  23. def set_shortcut(filename): # 如无需特别设置图标,则可去掉iconname参数
  24. try:
  25. from win32com.shell import shell
  26. from win32com.shell import shellcon
  27. iconname = ""
  28. # 设置快捷方式的起始位置,此处设置为windows启动目录
  29. working_directory = os.getenv(
  30. 'USERPROFILE') + '\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\\'
  31. # 创建快捷方式的目标绝对路径
  32. lnkname = working_directory + filename + '.lnk'
  33. # 要创建快捷方式的文件的绝对路径,此处是获取当前路径
  34. filename = os.path.dirname(os.path.realpath(sys.argv[0])) + '\\' + filename
  35. shortcut = pythoncom.CoCreateInstance(
  36. shell.CLSID_ShellLink, None,
  37. pythoncom.CLSCTX_INPROC_SERVER, shell.IID_IShellLink)
  38. shortcut.SetPath(filename)
  39. # 设置快捷方式的起始位置, 不然会出现找不到辅助文件的情况
  40. shortcut.SetWorkingDirectory(working_directory)
  41. # 可有可无,没有就默认使用文件本身的图标
  42. shortcut.SetIconLocation(iconname, 0)
  43. if os.path.splitext(lnkname)[-1] != '.lnk':
  44. lnkname += ".lnk"
  45. shortcut.QueryInterface(pythoncom.IID_IPersistFile).Save(lnkname, 0)
  46. return True
  47. except Exception as e:
  48. print(e.args)
  49. return False
  50. set_shortcut('test.exe')

以上代码打包为test.exe后,双击启动,可配置自身开机自启(exe不能是uac管理员权限)。或者配置其它程序。

按 WIN + R 输入 shell:startup 回车打开windows启动目录查看结果。

 

参考文章:

https://www.cnblogs.com/luoheng23/p/11342479.html

https://blog.csdn.net/weixin_43903378/article/details/94392277

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/264791
推荐阅读
相关标签
  

闽ICP备14008679号