使用批处理脚本创建快捷方式

直接上源码
要求获取管理员权限
卸载时可以只有卸载按钮,修复按钮灰色显示

@echo off
pushd “%CD%”
cd /d “%~dp0”

nul 2>&1 “%SYSTEMROOT%\system32\cacls.exe” “%SYSTEMROOT%\system32\config\system”
if ‘%errorlevel%’ NEQ ‘0’ (
REM echo Requesting administrative privileges…
goto UACPrompt
) else (
goto gotAdmin
)
:UACPrompt
echo Set UAC = CreateObject(“Shell.Application”) > “%temp%\getadmin.vbs”
echo UAC.ShellExecute “%~s0”, “”, “”, “runas”, 1 >> “%temp%\getadmin.vbs”
“%temp%\getadmin.vbs”
exit /B
:gotAdmin
if exist “%temp%\getadmin.vbs” (
del “%temp%\getadmin.vbs”
)
pushd “%CD%”
cd /d “%~dp0”

SET SHORTCUT_NAME=CE
SET TARGET_PATH=“C:\Program Files\BS\CE\CE.exe”
SET WorkingDir_PATH=C:\Program Files\BS\CE
REM SET ICON_PATH=“C:\Program Files\BS\CE\CE.ico”
SET DESKTOP_PATH=%USERPROFILE%\Desktop
SET DESKTOPINK_PATH=“%USERPROFILE%\Desktop\CE.lnk”

if exist %TARGET_PATH% (
echo Directory exists;
if not exist %DESKTOPINK_PATH% (
echo Directory exists,%SHORTCUT_NAME% Ink not exit, Need Create;
powershell “$ws = New-Object -ComObject WScript.Shell; $s = $ws.CreateShortcut(‘%DESKTOP_PATH%%SHORTCUT_NAME%.lnk’); $s.TargetPath = ‘%TARGET_PATH%’; $s.WorkingDirectory = ‘%WorkingDir_PATH%’; $s.Save()”
) else (
echo %SHORTCUT_NAME% Directory exists,Ink exit;
)
) else (
echo %SHORTCUT_NAME% Directory not exists;
)

SET SHORTCUT_NAME=DV
SET TARGET_PATH=“C:\Program Files\BS\CE\DV\DV.exe”
SET WorkingDir_PATH=C:\Program Files\BS\CE\DV
REM SET ICON_PATH=“C:\Program Files\BS\CE\DV\DV.ico”
SET DESKTOP_PATH=%USERPROFILE%\Desktop
SET DESKTOPINK_PATH=“%USERPROFILE%\Desktop\DV.lnk”

if exist %TARGET_PATH% (
echo Directory exists;
if not exist %DESKTOPINK_PATH% (
echo Directory exists,%SHORTCUT_NAME% Ink not exit, Need Create;
powershell “$ws = New-Object -ComObject WScript.Shell; $s = $ws.CreateShortcut(‘%DESKTOP_PATH%%SHORTCUT_NAME%.lnk’); $s.TargetPath = ‘%TARGET_PATH%’; $s.WorkingDirectory = ‘%WorkingDir_PATH%’; $s.Save()”
) else (
echo %SHORTCUT_NAME% Directory exists,Ink exit;
)
) else (
echo %SHORTCUT_NAME% Directory not exists;
)

set “regPath=HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\CE”
set “valueName=NoModify”
set “valueData=1”
set “valueType=REG_DWORD”

REM 检查是否以管理员身份运行
net session >nul 2>&1
if %errorlevel% NEQ 0 (
echo 请以管理员身份运行此脚本。
REM exit /b 1
)

REM 修改注册表项
reg add “%regPath%” /v “%valueName%” /t %valueType% /d “%valueData%” /f

REM 检查操作是否成功
if %errorlevel% EQU 0 (
echo 成功修改注册表项。
) else (
echo 修改注册表项失败。
)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值