返回列表 发帖

[问题求助] 【已解决】帮我看下VBS,提示:语句未结束。谢谢

本帖最后由 yyz219 于 2025-3-19 07:11 编辑

完美解决了(应用见8楼)
Set WshShell = WScript.CreateObject("WScript.Shell")
' 确保保存快捷方式的目录存在,路径需调整为实际有效地址
strShortcutPath = "D:\你的实际桌面路径\还原百分等.lnk"
Set oShellLink = WshShell.CreateShortcut(strShortcutPath)
oShellLink.TargetPath = "%SystemRoot%\explorer.exe"
oShellLink.Arguments = "D:\1绿色软件\网络\浏览器\还原百分等"
oShellLink.SaveCOPY
========================================
原来的问题:
Set WshShell = WScript.CreateObject("WScript.Shell")
set oShellLink = WshShell.CreateShortcut("D:\桌面\Desktop\!!!\研究\222\还原百分等.lnk") 'lnk路径
oShellLink.TargetPath = explorer.exe D:\1绿色软件\网络\浏览器\还原百分等 'lnk指向目标(explorer.exe)
oShellLink.Save '保存
我是小白,希望老师多多帮助

本帖最后由 aloha20200628 于 2025-3-17 20:13 编辑

回复 1# yyz219

创建一个快捷方式》用资源管理器打开一个指定目录...
Set WshShell = WScript.CreateObject("WScript.Shell")
set oShellLink = WshShell.CreateShortcut("D:\桌面\Desktop\!!!\研究\222\还原百分等.lnk")
oShellLink.TargetPath = "D:\1绿色软件\网络\浏览器\还原百分等"
oShellLink.SaveCOPY
1

评分人数

TOP

回复 2# aloha20200628


    我需要在  “目标”中   插入“ explorer.exe ”(好固定在任务栏)
我是小白,希望老师多多帮助

TOP

本帖最后由 yakeyun 于 2025-3-17 23:35 编辑

回复 3# yyz219
Set WshShell = WScript.CreateObject("WScript.Shell")
' 确保保存快捷方式的目录存在,路径需调整为实际有效地址
strShortcutPath = "D:\你的实际桌面路径\还原百分等.lnk"
Set oShellLink = WshShell.CreateShortcut(strShortcutPath)
oShellLink.TargetPath = "C:\Windows\explorer.exe"
oShellLink.Arguments = "D:\1绿色软件\网络\浏览器\还原百分等"
oShellLink.SaveCOPY
1

评分人数

TOP

本帖最后由 aloha20200628 于 2025-3-18 18:29 编辑

回复 3# yyz219

若用桌面快捷方式右键菜单中的 ‘固定到任务栏’ 选项将其钉在任务栏,4楼代码即可,若要创建桌面快捷方式与钉在任务栏一气呵成,可用以下代码,存为 test.vbs 运行...
set ws = createobject("wscript.shell")
set lnk = ws.createshortcut("D:\桌面\Desktop\!!!\研究\222\还原百分等.lnk")
lnk.targetpath = "c:\windows\explorer.exe"
lnk.arguments = "D:\1绿色软件\网络\浏览器\还原百分等"
lnk.save
set sa = createobject("shell.application")
set d = sa.namespace("D:\桌面\Desktop\!!!\研究\222")
for each verb in d.parsename("还原百分等.lnk").verbs
    if (verb.name = "固定到任务栏(&K)") then
        verb.doit
        wsh.quit
    end if
nextCOPY
1

评分人数

TOP

谢谢大家,我已经用别的方法解决了“文件夹固定在任务栏”的问题,谢谢
我是小白,希望老师多多帮助

TOP

回复 4# yakeyun


    成功了 谢谢
我是小白,希望老师多多帮助

TOP

本帖最后由 yyz219 于 2025-3-20 09:07 编辑

添到任务栏-文件(夹)(也支持快捷方式).bat
@echo off
::【双击退出,拖运行】
if "%~1"=="" exit /b 3
隐藏批处理窗口.exe @ /HID
::【检测“TaskBar”里面,有无 “文件名.lnk” 文件(有向下(退出),无到 :A)】
cd /d "%appData%\Microsoft\Internet Explorer\Quick Launch\User Pinned\TaskBar\" >nul 2>nul
if not exist "%~n1.lnk" goto :A
exit
::==============================================================================================
:A
::【检测(被拖文件是否.lnk)(是跳到:S,否跳到:T)】
echo %~1 |findstr /rec:".lnk *"&&goto :S||goto :T
::▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆【下面是对(.lnk)的代码】▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆
:S
RD /S /Q "%~dp0lnk文件" >nul 2>nul &MD "%~dp0lnk文件\" &xcopy /y  %1 "%~dp0lnk文件\" >nul 2>nul
::==============================================================================================
::【获取:lnk指向目标】
>"%tmp%\t.t" echo;WSH.echo CreateObject("WScript.Shell").CreateShortcut(WSH.Arguments(0)).targetpath & for /f "delims=" %%a in ('cscript -nologo -e:vbscript "%tmp%\t.t" "%~1"')    do set "lnk指向目标=%%a"
set "lnk路径=%~1"
::==============================================================================================
::【添加:在快捷方式的目标最前面,添加 “explorer.exe ”】
>"lnk(含explorer.exe).vbs" echo Set WshShell = WScript.CreateObject("WScript.Shell")
>>"lnk(含explorer.exe).vbs" echo strShortcutPath = "%lnk路径%" '快捷方式的路径
>>"lnk(含explorer.exe).vbs" echo Set oShellLink = WshShell.CreateShortcut(strShortcutPath)
>>"lnk(含explorer.exe).vbs" echo oShellLink.TargetPath = "%SystemRoot%\explorer.exe"
>>"lnk(含explorer.exe).vbs" echo oShellLink.Arguments = "%lnk指向目标%" '文件夹路径
>>"lnk(含explorer.exe).vbs" echo oShellLink.Save '保存
lnk(含explorer.exe).vbs
::==============================================================================================
::【固定在任务栏】
Pecmd.exe PINT "%lnk路径%",TaskBand
::==============================================================================================
::【修改:(TaskBar目录、原来目录)里面的快捷方式为正常】
copy /y "%~dp0lnk文件\*.*" "%appData%\Microsoft\Internet Explorer\Quick Launch\User Pinned\TaskBar\"
copy /y "%~dp0lnk文件\*.lnk"  "%~dp1"
::==============================================================================================
::【删除无用文件(文件夹)】
RD /S /Q "%~dp0lnk文件\" & del lnk(含explorer.exe).vbs
::==============================================================================================
::【刷新】
ASSOC .tmp=tmpfile
exit
::▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆【下面是对(文件夹 和 文件)的代码】▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆▆
:T
"%~dp0创建快捷方式.exe" /f:"%~dp1%~n1.lnk" /a:c /t:%1
::==============================================================================================
set "lnk路径=%~dp1%~n1.lnk"
set "文件夹路径=%~1"
::【添加:在快捷方式的目标最前面,添加 “explorer.exe ”】
>"lnk(含explorer.exe).vbs" echo Set WshShell = WScript.CreateObject("WScript.Shell")
>>"lnk(含explorer.exe).vbs" echo strShortcutPath = "%lnk路径%" '快捷方式的路径
>>"lnk(含explorer.exe).vbs" echo Set oShellLink = WshShell.CreateShortcut(strShortcutPath)
>>"lnk(含explorer.exe).vbs" echo oShellLink.TargetPath = "%SystemRoot%\explorer.exe"
>>"lnk(含explorer.exe).vbs" echo oShellLink.Arguments = "%文件夹路径%" '文件夹路径
>>"lnk(含explorer.exe).vbs" echo oShellLink.Save '保存
lnk(含explorer.exe).vbs
::==============================================================================================
::【固定在任务栏】
Pecmd.exe PINT "%~dp1%~n1.lnk",TaskBand
::【删除无用文件(文件夹)】
del lnk(含explorer.exe).vbs "%~dp1%~n1.lnk"
::【修改:TaskBar里面的快捷方式为正常的 】
"%~dp0创建快捷方式.exe" /f:"%appData%\Microsoft\Internet Explorer\Quick Launch\User Pinned\TaskBar\%~n1.lnk" /a:c /t:%1
::【刷新】
ASSOC .tmp=tmpfile
exitCOPY
我是小白,希望老师多多帮助

TOP

返回列表