
标题: [问题求助] 【已解决】帮我看下VBS,提示:语句未结束。谢谢 [打印本页]
作者: yyz219 时间: 2025-3-17 19:31 标题: 【已解决】帮我看下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.Save
复制代码
========================================
原来的问题:
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:03
本帖最后由 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.Save
复制代码
作者: yyz219 时间: 2025-3-17 20:15
回复 2# aloha20200628
我需要在 “目标”中 插入“ explorer.exe ”(好固定在任务栏)
作者: yakeyun 时间: 2025-3-17 23:26
本帖最后由 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.Save
复制代码
作者: aloha20200628 时间: 2025-3-18 18:07
本帖最后由 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
- next
复制代码
作者: yyz219 时间: 2025-3-18 18:29
谢谢大家,我已经用别的方法解决了“文件夹固定在任务栏”的问题,谢谢
作者: yyz219 时间: 2025-3-18 20:26
回复 4# yakeyun
成功了 谢谢
作者: yyz219 时间: 2025-3-18 21:52
本帖最后由 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
- exit
复制代码
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |