取快捷方式目标及查询快捷方式一个BUG
功能说明:该程序是一个基于易语言开发的Windows平台快捷方式(.lnk文件)操作工具,核心功能包括:1)创建指定路径、参数、工作目录和备注信息的桌面快捷方式;2)读取并返回已有快捷方式所指向的目标文件全路径。程序通过调用Windows COM接口(IShellLink和IPersistFile)实现底层操作,严格遵循Shell Link规范:自动补全“.lnk”扩展名、支持Unicode路径、正确处理命令行参数(/e)、工作目录(c:\windows)及描述信息(“备注信息”);所有COM资源(ppv1/ppv2)均在使用后及时释放,并调用CoInitialize/CoUninitialize确保线程初始化与反初始化。主流程在_临时子程序中演示:以当前用户桌面为位置生成名为“新建快捷方式.lnk”的快捷方式,指向explorer.exe并附加/e参数,随后立即查询其目标路径并输出结果。两个公开子程序“创建快捷方式_”和“查询快捷方式_”具备完整参数校验与容错逻辑(如空参数跳过设置),可被其他模块直接调用,适用于自动化部署、软件安装包集成或系统管理脚本场景。程序无界面、轻量级、纯本地执行,不依赖外部DLL,符合绿色工具定位。
======程序集1
| |
| |------ _启动子程序
| |
| |------ _临时子程序
| |
| |------ 创建快捷方式_
| |
| |------ 查询快捷方式_
| |
| |
======IShellLink
| |
| |------ QueryInterface
| |
| |------ Release
| |
| |------ GetPath
| |
| |------ SetArguments
| |
| |------ SetDescription
| |
| |------ SetIconLocation
| |
| |------ SetPath
| |
| |------ SetWorkingDirectory
| |
| |------ Load
| |
| |------ Save
| |
| |------ Ansi转Unicode
| |
| |------ 取变量数据地址_字节集
| |
| |------ 取变量数据地址_文本型
| |
| |
======调用的Dll
| |
| |---[dll]------ CoCreateInstance
| |
| |---[dll]------ CoInitialize
| |
| |---[dll]------ CoUninitialize
| |
| |---[dll]------ MultiByteToWideChar
| |
| |---[dll]------ LocalAlloc
| |
| |---[dll]------ LocalFree
| |
| |---[dll]------ lstrcmpi
| |
| |---[dll]------ lstrlen
注:本站源码主要来源于网络收集。如有侵犯您的利益,请联系我们,我们将及时删除!
部分源码可能含有危险代码,(如关机、格式化磁盘等),请看清代码在运行。
由此产生的一切后果本站均不负责。源码仅用于学习使用,如需运用到商业场景请咨询原作者。
使用本站源码开发的产品均与本站无任何关系,请大家遵守国家相关法律。