595076941@qq.com

REM D:\APP\AutoRun\Program\AutoRun.bat 开机自动启动批处理脚本文件 2025年11月17日

REM  D:\APP\AutoRun\Program\AutoRun.bat 开机自动启动批处理脚本文件 2025年11月17日

 

REM  D:APPAutoRunProgramAutoRun.bat 开机自动启动批处理脚本文件 2025年11月17日

 

  1. REM D:\APP\AutoRun\Program\AutoRun.bat 开机自动启动批处理脚本文件
  2. @echo off
  3. cd /d D:\APP\AutoRun\Program\
  4. start D:\APP\AutoRun\Program\AutoHotkeyA32.exe D:\APP\AutoRun\Program\AutoRun.ahk
  5. exit
  1. ; D:\APP\AutoRun\Program\AutoRun.ahk 开机自动启动AHK脚本文件
  2. ; 开机自动启动项
  3. ; ======================================================================
  4. ; 1. 检测是否已拥有管理员权限
  5. if !A_IsAdmin {
  6. ; 2. 无权限时,以管理员身份重启脚本
  7. MsgBox, 本脚本需要管理员权限才能运行,即将请求授权...
  8. Run *RunAs "%A_ScriptFullPath%" ; *RunAs 是提权关键参数
  9. ExitApp ; 退出当前非管理员进程
  10. }
  11. ; ======================================================================
  12. ; 添加快捷方式到所有用户开始菜单程序启动文件夹,设置开机自动运行此脚本
  13. ; ==============================
  14. ; 仅需修改这2个参数!
  15. ; ==============================
  16. TargetProgram := "D:\APP\AutoRun\Program\AutoRun.bat" ; 要自启的程序完整路径
  17. ShortcutName := "AutoRun-1.lnk" ; 快捷方式名称(必须带.lnk后缀)
  18. ; ==============================
  19. ; 可选配置(按需修改)
  20. ; ==============================
  21. AllUsers := true ; false=仅当前用户(无需管理员),true=所有用户(需管理员)
  22. ; ==============================
  23. ; 核心执行代码(无需修改)
  24. ; ==============================
  25. ; 获取启动文件夹路径
  26. StartupFolder := AllUsers ? A_ProgramData "\Microsoft\Windows\Start Menu\Programs\Startup" : A_AppData "\Microsoft\Windows\Start Menu\Programs\Startup"
  27. ShortcutPath := StartupFolder "\" ShortcutName
  28. ; 验证目标程序是否存在
  29. if !FileExist(TargetProgram) {
  30. MsgBox, 错误:找不到程序!`n路径:%TargetProgram%, 0x10 ; 0x10=错误图标
  31. ExitApp
  32. }
  33. ; 所有用户模式需要管理员权限,自动提权
  34. if AllUsers && !A_IsAdmin {
  35. Run *RunAs "%A_ScriptFullPath%" ; 以管理员身份重启脚本
  36. ExitApp
  37. }
  38. ; 创建快捷方式(通过WScript.Shell COM对象)
  39. try {
  40. Shell := ComObjCreate("WScript.Shell")
  41. Link := Shell.CreateShortcut(ShortcutPath)
  42. Link.TargetPath := TargetProgram ; 目标程序路径
  43. Link.WorkingDirectory := FileGetDirectory(TargetProgram) ; 工作目录(程序所在文件夹)
  44. Link.Save() ; 保存快捷方式
  45. ; MsgBox, 快捷方式创建成功!`n位置:%StartupFolder%`n名称:%ShortcutName%, 0x40 ; 0x40=信息图标
  46. } catch e {
  47. ; MsgBox, 创建失败!`n错误:%Message%, 0x10
  48. }
  49. ; ======================================================================
  50. ; 添加快捷方式到当前用户开始菜单程序启动文件夹,设置开机自动运行此脚本
  51. ; ==============================
  52. ; 仅需修改这2个参数!
  53. ; ==============================
  54. TargetProgram := "D:\APP\AutoRun\Program\AutoRun.bat" ; 要自启的程序完整路径
  55. ShortcutName := "AutoRun-2.lnk" ; 快捷方式名称(必须带.lnk后缀)
  56. ; ==============================
  57. ; 可选配置(按需修改)
  58. ; ==============================
  59. AllUsers := false ; false=仅当前用户(无需管理员),true=所有用户(需管理员)
  60. ; ==============================
  61. ; 核心执行代码(无需修改)
  62. ; ==============================
  63. ; 获取启动文件夹路径
  64. StartupFolder := AllUsers ? A_ProgramData "\Microsoft\Windows\Start Menu\Programs\Startup" : A_AppData "\Microsoft\Windows\Start Menu\Programs\Startup"
  65. ShortcutPath := StartupFolder "\" ShortcutName
  66. ; 验证目标程序是否存在
  67. if !FileExist(TargetProgram) {
  68. MsgBox, 错误:找不到程序!`n路径:%TargetProgram%, 0x10 ; 0x10=错误图标
  69. ExitApp
  70. }
  71. ; 所有用户模式需要管理员权限,自动提权
  72. if AllUsers && !A_IsAdmin {
  73. Run *RunAs "%A_ScriptFullPath%" ; 以管理员身份重启脚本
  74. ExitApp
  75. }
  76. ; 创建快捷方式(通过WScript.Shell COM对象)
  77. try {
  78. Shell := ComObjCreate("WScript.Shell")
  79. Link := Shell.CreateShortcut(ShortcutPath)
  80. Link.TargetPath := TargetProgram ; 目标程序路径
  81. Link.WorkingDirectory := FileGetDirectory(TargetProgram) ; 工作目录(程序所在文件夹)
  82. Link.Save() ; 保存快捷方式
  83. ; MsgBox, 快捷方式创建成功!`n位置:%StartupFolder%`n名称:%ShortcutName%, 0x40 ; 0x40=信息图标
  84. } catch e {
  85. ; MsgBox, 创建失败!`n错误:%Message%, 0x10
  86. }
  87. ; 辅助函数:获取文件所在目录
  88. FileGetDirectory(Path) {
  89. SplitPath, Path, , OutDir
  90. return OutDir
  91. }
  92. ; ======================================================================
  93. ; 添加注册表项目,设置开机自动运行此脚本
  94. Run,Reg add HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v AutoRun-3 /t REG_SZ /d "D:\APP\AutoRun\Program\AutoRun.bat" /f
  95. Run,Reg add HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v AutoRun-4 /t REG_SZ /d "D:\APP\AutoRun\Program\AutoRun.bat" /f
  96. Run,regedit.exe /s "D:\APP\AutoRun\Program\AutoRun.Reg"
  97. ; ======================================================================
  98. ; 设置互斥体,阻止脚本重复运行
  99. Single(flag) { ;,返回1为重复,返回0为第一个运行
  100. DllCall("CreateMutex", "Ptr",0, "int",0, "str", "Ahk_Single_" flag)
  101. return A_LastError=0xB7 ? true : false
  102. }
  103. #SingleInstance,Off ;关闭自带互斥功能
  104. if (Single("276193850")) { ;独一无二的字符串用于识别脚本,或者称为指纹?
  105. ; MsgBox,16,提示,程序已启动!`n请勿重复运行
  106. ExitApp
  107. }
  108. ; ======================================================================
  109. ; 检查是否存在开机自动启动项配置文本文件,如果没有就创建一个示范配置文本文件。
  110. IniPath := A_ScriptDir "\..\开机自动启动项.txt"
  111. IfNotExist,% IniPath
  112. {
  113. ; 配置文件内容
  114. configContent =
  115. (
  116. ; D:\APP\AutoRun\开机自动启动项.txt 配置文件
  117. D:\APP\TotalCMD\_SetHotkey-TCEV.exe
  118. Notepad.exe
  119. Calc.exe
  120. D:\APP\Maye-Lite\Maye-Lite.exe
  121. D:\APP\TotalCMD\TotalCMD.exe
  122. D:\APP\FastCopy\FastCopy.bat
  123. D:\APP\Coodesker\Coodesker.exe
  124. D:\APP\QQ\QQ.exe
  125. D:\APP\Dexpot\Dexpot.exe
  126. C:\Program Files\zspace\极空间.exe
  127. C:\Program Files (x86)\滴答清单\TickTick.exe
  128. C:\Program Files\ynote-desktop\有道云笔记.exe
  129. C:\app\GoodSync\x64\GoodSync2Go.exe
  130. )
  131. ; 写入配置文件
  132. ; 为了支持中文文件夹目录,在文件末尾处追加(写入)
  133. ; 文本(如果有必要, 首先创建文件).指定编码或编码页,
  134. ; 例如 UTF-8, UTF-16 或 CP936.如果文件包含 UTF-8 或
  135. ; UTF-16 字节顺序标记(BOM), 则忽略此参数和默认编码.
  136. FileAppend, % configContent,% IniPath, UTF-8
  137. }
  138. ; ======================================================================
  139. ; 逐行读取文本文件的内容, 每次读取一行并运行读到的程序。
  140. loop, Read,% IniPath
  141. {
  142. loop, Parse, A_LoopReadLine, % A_Tab
  143. {
  144. ; MsgBox, Field number %A_Index% is %A_LoopField%.
  145. IfExist,% A_LoopField
  146. {
  147. Run,% A_LoopField
  148. }
  149. }
  150. }
  151. ; ======================================================================
  152. ; 等待30秒钟,让互斥体存在30秒钟,阻止另外的脚本重复运行
  153. Sleep,30000
  154. ExitApp
  1. Windows Registry Editor Version 5.00
  2. [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]
  3. "AutoRun-5"="\"D:\\APP\\AutoRun\\Program\\AutoRun.bat\" "
  4. [HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]
  5. "AutoRun-6"="\"D:\\APP\\AutoRun\\Program\\AutoRun.bat\" "
  1. REM D:\APP\AutoRun\Program\打开当前用户启动文件夹.bat
  2. start "" "shell:startup"
  3. exit
  1. REM D:\APP\AutoRun\Program\打开所有用户启动文件夹.bat
  2. start "" "shell:common startup"
  3. exit
  1. ; D:\APP\AutoRun\开机自动启动项.txt 配置文件
  2. D:\APP\TotalCMD\_SetHotkey-TCEV.exe
  3. Notepad.exe
  4. Calc.exe
  5. D:\APP\Maye-Lite\Maye-Lite.exe
  6. D:\APP\TotalCMD\TotalCMD.exe
  7. D:\APP\FastCopy\FastCopy.bat
  8. D:\APP\Coodesker\Coodesker.exe
  9. D:\APP\QQ\QQ.exe
  10. D:\APP\Dexpot\Dexpot.exe
  11. C:\Program Files\zspace\极空间.exe
  12. C:\Program Files (x86)\滴答清单\TickTick.exe
  13. C:\Program Files\ynote-desktop\有道云笔记.exe
  14. C:\app\GoodSync\x64\GoodSync2Go.exe

 

 

autorun

 

 

https://www.autoahk.com/archives/53349

 

 

https://www.cnblogs.com/delphixx/p/19233074

 

posted @ 2025-11-17 15:38  QQ595076941  阅读(3)  评论(0)    收藏  举报
595076941@qq.com