批处理文件如何在 Windows 的启动列表中列出自己???
它是否来自注册表并不重要。
如果使用注册表,请同时给出删除注册表项的命令。
这应该适用于从 ME 到 7 的所有版本。
否则只是 XP/Vista/7。
谢谢。
批处理文件如何在 Windows 的启动列表中列出自己???
它是否来自注册表并不重要。
如果使用注册表,请同时给出删除注册表项的命令。
这应该适用于从 ME 到 7 的所有版本。
否则只是 XP/Vista/7。
谢谢。
不确定我是否理解你,但如果你想要的是一种在启动时执行命令/批处理的简单方法,为什么不把它放在All Users\Startup
文件夹中呢?
以编程方式执行此操作仅意味着将文件复制到该目录。
例如,在 Windows Vista 中,该目录的完整路径是:
C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup
(您可以使用将行首替换为%ProgramData%
或%AllUsers%\ProgramData
使其更具全局性 - 例如当 Windows 安装在 D: 上时)。
我不使用 windows7(可能很快就会在 beta 中得到检查),但我认为从注册表中获取正确的位置总是会更好,因为 Windows 版本是本地化的。我自己的C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup版本看起来更像“C:\Documents and Settings\All Users\Menu Démarrer\Programmes\Démarrage” (当然来自 XP)
-10对于使用硬编码目录名称的程序员(是的,一些安装程序将在安装时创建英语/不同语言目录)。
-1 用于 Microsoft 本地化目录名称...
无论如何,这里有一个片段,至少对 XP 有效:
commonstartup.cmd
@echo off
for /F "tokens=3 delims= " %%k in ('reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v "Common Startup"^| findstr /i /c:"Common Startup"') do set StartUp=%%k
echo StartUp="%StartUp%"
___Notes_____
1:由于Windows2000和XP中的reg.exe命令参数不同,可能W7也有变化,所以在设置之前先测试一下,然后忘记。
2:要获取所有系统目录的列表,请发出命令:reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders"并阅读这些行。如果 W7 的情况如此不同,您可能希望将“通用启动”更改为其他内容。
3:如果您希望它仅供某些用户使用,HKEY_CURRENT_USER中还有一个个人/用户列表。
xcopy C:\Users\NAME\Desktop\Batch.bat C:\ProgramData\Microsoft\Windows\"Start Menu"\Programs\StartUp /O /X /E /H /K 是 Windows 10 的正确命令。只需更改您的版本的第二条路径,并记住只要有空格,在空格之前的单词之前和之后的单词之后放置一个“。但是,它必须在管理员中打开,所以经过一些研究,我发现批处理文件可用于启动不同的批处理文件并以管理模式运行:runas /user:administrator C:\data\mybatchfile.bat 应该可以工作!