无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 100|回复: 2
打印 上一主题 下一主题

[原创] 快捷方式盘符修正程序

[复制链接]
跳转到指定楼层
1#
发表于 昨天 22:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 9zhmke 于 2026-1-24 22:58 编辑

简述:修正快捷方式中的盘符错误
下载: FixShortcuts_v1.exe (970.5 KB, 下载次数: 5)
使用:1. 把文件夹(快捷方式所在)拖到本程序上去
          2. 命令行参数调用这个文件夹,例: FixShortcuts_v1.exe    D:\我的文档\系统设置\开始菜单


          系统爱好者经常重装系统,为了不重装软件,又把大量软件都搞成了绿色版,这些绿色版大多使用快捷方式,而经常换硬盘、换分区后这些快捷方式就会失效。
          比如以前的快捷方式: 阿里旺旺.lnk中,程序指向了E:\Software\应用系统\阿里旺旺\AliIM.exe,但是后来重新分区后,变成了D:\Software\应用系统\阿里旺旺\AliIM.exe,这时快捷方式就会失效,此时就可以用本程序来大展身手了。
          本程序目前只考虑了更换盘符,暂未考虑其他,以便我一样的同道中人共享或修改。

其实也不是我原创的,我都没写一句程序,都是让trae写的....
给他的描述如下:
我要用autoit编写程序,Autoit3.3.18安装在C:\Program Files (x86)\AutoIt3
程序位置放置在"E:\Prog\AU3\修正快捷方式"
一、程序目标要求:
1.检测命令行参数,如果有参数进入下一步,没有参数则提示用户输入文件夹位置
2.检测用户指定的文件是否是真实存在,里面含子目录下的文件至少有一个快捷方式文件,即.lnk文件
        如果没有,跳转到第一步,提示用户输入文件夹或把文件夹拖到程序上来运行
3.穷举硬盘中从C开始的、实际上存在的硬盘分区(不含移动盘)
4.穷举文件夹所有的快捷方式
5.对文件夹含子目录穷举每个快捷方式,进行判断三个位置:程序位置、程序起始位置、程序图标位置
        如果程序在原指定位置存在,则不做任何操作,进行下一步(下一个文件检测)
                如果指向的位置有指定文件,则检查下一个
                如果指向的位置没有指定文件,证明是错误的快捷方式,则:
                        取出整个盘符、路径
                                检测,把盘符替换成除了原盘符的、从D开始的盘符,依次检测所有盘符下相同子目录位置是否有对应文件
                                        如果没有,检测下一个盘符,直到最后一个盘符
                                        如果有:
                                                a.把程序位置修改为新位置
                                                b.程序起始位置是否相同也是指向程序所在位置,否则保留以前参数,是则修改为新位置
                                                c.程序图标,   是否相同也是指向程序所在位置,否则保留以前参数,是则修改为新位置
                                        修改完成后应保存
        检测下一个文件,如此循环,直到完成
6.最终完成后,弹出完成提示,并在3秒后退出程序
二、写程序的注意事项:
1.我已建好测试文件夹,在“C:\应用软件快捷方式”中,有总共8个正确和错误的快捷方式,可以用这个来测试程序,你运行时直接把这个文件夹作为参数调用
2.请对所有步骤和结果写事件记录日志文件,以便每次运行后进行自查,每次程序结束后可以自己先检查一次记录文件是否是正常结束。
3.用于记录程序的每一步操作结果如何的文件,应该每次运行程序前清空重新写,否则很容易搞不清楚是哪次的结果
4.程序的名字就只用一个"FixShortcuts",不同版本,可以在修正后,在后面添加v1、v2、v2.1等表示修正版本







2#
发表于 昨天 23:29 来自手机 | 只看该作者
本帖最后由 窄口牛 于 2026-1-24 23:33 编辑

所以你的盘符要固定,换了系统还是原来的,多系统下,也都一样。我为什么有盘符导出批处理,导入批处理,按照硬盘卷标修改盘符批处理,都是一个目的,到所有硬盘的任何系统里,都是一样的盘符环境。
回复

使用道具 举报

3#
发表于 昨天 23:36 | 只看该作者
感谢分享!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2026-1-25 01:07

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表