[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
龙之谷在家里的电脑上, 单位电脑上没有,我在单位电脑上试了那段代码,也是有的快捷方式好用,有的不好用,我把不好用的(和龙之谷情况一样的)按照你说的把cmd的命令执行结果贴出来

TOP

回复 15# DAIC


   
执行结果如下:

Microsoft Windows XP [版本 5.1.2600]
(C) 版权所有 1985-2001 Microsoft Corp.

C:\Documents and Settings\Administrator>cd /d "C:\Documents and Settings\All Use
rs\「开始」菜单\程序\搜狗拼音输入法"

C:\Documents and Settings\All Users\「开始」菜单\程序\搜狗拼音输入法>dir
驱动器 C 中的卷没有标签。
卷的序列号是 48D6-C39A

C:\Documents and Settings\All Users\「开始」菜单\程序\搜狗拼音输入法 的目录

2013-03-22  12:15    <DIR>          .
2013-03-22  12:15    <DIR>          ..
2013-03-22  12:15               679 卸载.lnk
2013-03-22  12:15             1,681 扩展功能管理.lnk
2013-03-22  12:15             1,765 皮肤小盒子.lnk
2013-03-22  12:15               801 设置.lnk
2013-03-22  12:15               801 设置向导.lnk
2013-03-22  12:15               807 输入法管理器.lnk
2013-03-22  12:15    <DIR>          链接
               6 个文件          6,534 字节
               3 个目录  9,776,476,160 可用字节

C:\Documents and Settings\All Users\「开始」菜单\程序\搜狗拼音输入法>find /i ":"
*.lnk

---------- 卸载.LNK
/C:\
:

---------- 扩展功能管理.LNK
/C:\
:
:
:

---------- 皮肤小盒子.LNK
/C:\
:
:
:

---------- 设置.LNK
/C:\
:
:

---------- 设置向导.LNK
/C:\
:
:

---------- 输入法管理器.LNK
/C:\
:
:

C:\Documents and Settings\All Users\「开始」菜单\程序\搜狗拼音输入法>

TOP

回复 17# llqcnw


你选择一个有问题的.lnk文件,比如:输入法管理器.LNK
1、右键单击,属性,看看里面有没有程序的完整路径。
2、在CMD窗口里面执行这个命令:
  1. type 输入法管理器.LNK
复制代码
把结果贴出来看看

TOP

回复 18# DAIC


    有完整的路径
目标:"C:\Program Files\sogoupinyin\SogouExe\SogouExe.exe" "c:\Program Files\sogoupinyin\6.5.0.9181\SGTool.exe" --appid=config /m
起始位置:"c:\Program Files\sogoupinyin\6.5.0.9181\SkinPreview"

TOP

回复 19# llqcnw


你下载一个shortcut.exe试试它能否识别
http://www.bathome.net/thread-4020-1-1.html
  1. shortcut.exe /f:"输入法管理器.LNK" /a:q
复制代码

TOP

回复 20# DAIC


    C:\Documents and Settings\All Users\「开始」菜单\程序\搜狗拼音输入法>shortcut.ex
e /f:"输入法管理器.LNK" /a:q

[输入法管理器.LNK]
TargetPath=C:\Program Files\sogoupinyin\SogouExe\SogouExe.exe
TargetPathExpanded=C:\Program Files\sogoupinyin\SogouExe\SogouExe.exe
Arguments="c:\Program Files\sogoupinyin\6.5.0.9181\SGTool.exe" --appid=config /m

ArgumentsExpanded="c:\Program Files\sogoupinyin\6.5.0.9181\SGTool.exe" --appid=c
onfig /m
WorkingDirectory=c:\Program Files\sogoupinyin\6.5.0.9181\SkinPreview
WorkingDirectoryExpanded=c:\Program Files\sogoupinyin\6.5.0.9181\SkinPreview
RunStyle=1
IconLocation=,0
IconLocationExpanded=,0
HotKey=0 (None)
Description=

The command completed successfully.

C:\Documents and Settings\All Users\「开始」菜单\程序\搜狗拼音输入法>

TOP

回复 21# llqcnw


    开起来是可以识别的,还有其它问题吗?

TOP

本帖最后由 llqcnw 于 2013-9-3 20:28 编辑

回复 22# DAIC


    但是执行代码后得到的结果是::

ECHO 处于关闭状态。

请按任意键继续. . .


没有得到路径啊?而有的快捷方式执行这段代码后得到的结果是:

C:\Program Files\Baofeng\StormPlayer\StormPlayer.exe

请按任意键继续. . .



(下午出门了,刚回来)
另外还有个问题,就是得到的结果是目标位置,而不是起始位置,即结果是包含有exe文件的一个链接,我想要的路径是到文件夹为止,不需要把文件名也列出来。

TOP

你好,感谢这几天的耐心解答,不过现在问题没有解决,我做了测试,如果把快捷方式的起始位置的路径中的中文都改成英文,执行这段代码就能得到结果即快捷方式的目标位置的路径,请问有办法解决执行结果中的中文路径的问题吗?

你是说shortcut.exe无法支持中文路径是吗?

TOP

回复 23# llqcnw


ECHO 处于关闭状态。
请按任意键继续. . .

你执行的哪个代码得到的这个结果?

TOP

本帖最后由 batman 于 2013-9-4 17:45 编辑

给个示例,自己对着改吧。。。
  1. @echo off
  2. set "folder=%userprofile%\「开始」菜单\程序\"
  3. for /f "delims=" %%a in ('dir /a-d /b /s "%folder%腾讯QQ.lnk"') do (
  4.   for /f "delims=" %%b in ('type "%%a"^|find /i ".exe"') do set "getpath=%%~dpb"
  5. )
  6. echo,%getpath%
  7. pause>nul
复制代码
***共同提高***

TOP

回复 26# batman


   @echo off

for /f "delims=" %%a in ('find /i ":" QQ游戏.lnk ^| findstr /i "^[a-z]:"') do set QQfull=%%a

echo %QQfull%

echo.&pause

就是这段代码执行的结果,如果结果里有中文就显示 echo处于关闭状态, 如果结果中没有中文,就显示出路径了。



谢谢!我今晚试一下你给的这段代码

TOP

本帖最后由 terse 于 2013-9-4 18:15 编辑
  1. @echo off
  2. for /f "delims=" %%a in ('more "狙击.jgs.lnk" ^| findstr /ib [a-z]:\\') do set "lnk=%%a"
  3. echo %lnk%
  4. pause
复制代码
d:\我的文档\军旗\明\junqi2012_2_16_23_5.jgs
请按任意键继续. . .
  1. @echo off
  2. set "folder=%userprofile%\「开始」菜单\程序\"
  3. for /f "delims=" %%a in ('dir /b /a-d /s "%folder%\*.lnk"') do (
  4. for /f "delims=" %%b in ('more "%%a" ^| findstr /ib [a-z]:\\') do (
  5. echo "%%a" "%%b"
  6. )
  7. )
  8. pause
复制代码

TOP

本帖最后由 llqcnw 于 2013-9-4 20:40 编辑

回复 26# batman


    真是见鬼啦

用你这段代码执行的结果是

系统找不到指定的文件。
请按任意键继续. . .

(我的腾讯QQ.lnk在C:\Documents and Settings\All Users\「开始」菜单\程序\腾讯软件\QQ2013文件夹里,
我把代码中的set "folder=%userprofile%\「开始」菜单\程序\"  改为 set "folder=%userprofile%\「开始」菜单\程序\腾讯软件\QQ2013\"
这样是对的吧? 但执行的结果就是这样。

晕,怎么 =%userprofile%变成是  C:\Documents and Settings\Administrator   不应该是C:\Documents and Settings\All Users 吗?

TOP

本帖最后由 llqcnw 于 2013-9-4 20:57 编辑

回复 28# terse





第二段代码应该是把目录里的所有lnk文件都显示出来,但是我有个目录里明明有两个lnk文件,但是就是显示不出来,用dir可以看到lnk文件,shortcut看也可以看到lnk文件的内容,

TOP

返回列表