# -*- coding:utf-8 -*-

# author:lizonezhi

import os

import sys

import pythoncom

import win32com.client as client

def createShortCut(filename): # 目前创建的无起始位置

"""filename should be abspath, or there will be some strange errors"""

try:

# 设置快捷方式的起始位置,此处设置为windows启动目录

working_directory = os.getenv(

'USERPROFILE') + '\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\\'

# 创建快捷方式的目标绝对路径

lnkname = working_directory + filename + '.lnk'

# 要创建快捷方式的文件的绝对路径,此处是获取当前路径

filename = os.path.dirname(os.path.realpath(sys.argv[0])) + '\\' + filename

shortcut = client.Dispatch("WScript.Shell").CreateShortCut(lnkname)

shortcut.TargetPath = filename

shortcut.save()

print('配置开机自启')

except Exception as e:

print(e.args)

def set_shortcut(filename): # 如无需特别设置图标,则可去掉iconname参数

try:

from win32com.shell import shell

from win32com.shell import shellcon

iconname = ""

# 设置快捷方式的起始位置,此处设置为windows启动目录

working_directory = os.getenv(

'USERPROFILE') + '\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\\'

# 创建快捷方式的目标绝对路径

lnkname = working_directory + filename + '.lnk'

# 要创建快捷方式的文件的绝对路径,此处是获取当前路径

filename = os.path.dirname(os.path.realpath(sys.argv[0])) + '\\' + filename

shortcut = pythoncom.CoCreateInstance(

shell.CLSID_ShellLink, None,

pythoncom.CLSCTX_INPROC_SERVER, shell.IID_IShellLink)

shortcut.SetPath(filename)

# 设置快捷方式的起始位置, 不然会出现找不到辅助文件的情况

shortcut.SetWorkingDirectory(working_directory)

# 可有可无,没有就默认使用文件本身的图标

shortcut.SetIconLocation(iconname, 0)

if os.path.splitext(lnkname)[-1] != '.lnk':

lnkname += ".lnk"

shortcut.QueryInterface(pythoncom.IID_IPersistFile).Save(lnkname, 0)

return True

except Exception as e:

print(e.args)

return False

set_shortcut('test.exe')

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

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

参考文章:

python打开快捷方式_Python创建启动目录的快捷方式,python,到相关推荐

  1. python打开文件_python如何学习

    1.Python 文件I/O 本章只讲述所有基本的 I/O 函数,更多函数请参考Python标准文档. 打印到屏幕 最简单的输出方法是用print语句,你可以给它传递零个或多个用逗号隔开的表达式.此函 ...

  2. python import 路径_python import 上级目录的导入

    python import 上级目录的导入,路径,上级,文件,目录,递归 python import 上级目录的导入 易采站长站,站长之家为您整理了python import 上级目录的导入的相关内容 ...

  3. python开发服务程序_Python 编写Windows服务程序:将Python作为Windows服务启动 | 学步园...

    Python程序作为Windows服务启动,需要安装pywin32包.下载路径: #-*- coding:utf-8 -*- import win32serviceutil import win32s ...

  4. python开发讲解_Python开发系列课程(1) - 初识Python详解

    初识Python Python简介 Python是一个很棒的语言,从它诞生的那天起,一直致力于向开发者提供同时具备可读性和生产力的多范式编程语言.曾经有人Python仅仅是一门脚本语言,不适合构建大型 ...

  5. python打开文件报错无效序列_黑马python入门(4):python基础(序列,异常,操作文件,模块包,日志调试信息)

    序列 str声明:test_str="abcedf" 也可以保留字符串里面的格式来 test_str=""" \r\n测试标题 hello world ...

  6. win7运行python脚本_windows7设置开机启动项自动启python脚本

    windows7设置开机启动项自动启python脚本 windows7左下角搜索框输入shell:startup 会出现一个文件夹,开机的时候windows7会自动打开里面的文件 1.可以把pytho ...

  7. python windows系统调用_python日记第四章:python用os和sys模块进行系统调用

    os 模块提供了很多允许你的程序与操作系统直接交互的功能 得到当前工作目录,即当前Python脚本工作的目录路径: os.getcwd() 返回指定目录下的所有文件和目录名:os.listdir() ...

  8. python综合题_python基础综合题----选自python二级考试

    <笑傲江湖>是金庸的重要武侠作品之一.这里给出一个<笑傲江湖>的网络版本, 文件名为"笑傲江湖-网络版.txt".‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪ ...

  9. python办公自动化知识点_Python自动化办公知识点整理汇总|python基础教程|python入门|python教程...

    https://www.xin3721.com/eschool/pythonxin3721/ 知乎上有人提问:用python进行办公自动化都需要学习什么知识呢? ​ 这可能是很多非IT职场人士面临的困 ...

最新文章

  1. udev与devfs文件系统
  2. MyBatis 源码分析 - 缓存原理
  3. Dubbo背景和简介
  4. CodeForces - 856B Similar Words(AC自动机+树形dp)
  5. python高级语法-套接字编程之UDP和TCP编程
  6. python编写购物程序_Python实现购物程序思路及代码
  7. mysql 5.5半同步复制_(5.5)mysql高可用系列——MySQL半同步复制(实践)
  8. java设计按月每天签到_活动攻略|新同学新签到,欢乐福利全都要!
  9. 背包——01背包Bone Collector(hdu2602)
  10. 一个关于文件结构体数组的条件排序函数
  11. 第1章——操作系统概论
  12. iptables表与链的相关性图
  13. Linux安装php-7.0.16,完成php和apache的配置
  14. ajax和jquery教程pdf,ajax和jquery教程pdf
  15. Moodle安装指导手册
  16. 列宽一字符等于多少厘米_Excel中行高与列宽单位和厘米的转换
  17. Idea设置全白色 背景
  18. JavaEE进阶——Spring学习笔记
  19. hadoop详细笔记(十一) mapreduce数据分析案例之线段重叠案例
  20. Inferior 1 (process xxx) exited with code 0177

热门文章

  1. THINKPHP3.2视频教程
  2. DRF数据验证+数据存储
  3. Angular2+ typescript 项目里面用require
  4. [Object-C语言随笔之三] 类的创建和实例化以及函数的添加和调用!
  5. 【JavaScript吉光片羽】--- 滑动条
  6. JavaWeb重要知识点总结
  7. 2011阿里巴巴程序设计公开赛 / 1002 Fruit Ninja
  8. 金山毒霸的云查杀很牛X
  9. leetcode657. 机器人能否返回原点
  10. leetcode468. 验证IP地址