tp下载最新版本|lnk
lnk文件到底怎么打开? - 知乎
lnk文件到底怎么打开? - 知乎首页知乎知学堂发现等你来答切换模式登录/注册软件计算机聊天工具lnk文件到底怎么打开?朋友用QQ给我发了一个以本人名字为名字的后缀名为lnk的文件,然后下载下来的结果是打不开,问了朋友,朋友说他也不知道那是什么文件,所以,lnk文件是什…显示全部 关注者11被浏览208,010关注问题写回答邀请回答好问题 3添加评论分享5 个回答默认排序知乎用户QeFZEf 关注那个是快捷方式,不是真正的文件,快捷方式只是为了方便打开文件的一种格式,它只是相当于一个连接,通过快捷方式里储存的文件位置来打开真正的文件。你朋友给你的只是快捷方式,真正的文件当然是没有的,所以打不开了发布于 2015-07-20 21:41赞同 153 条评论分享收藏喜欢收起王自飞有梦想就有未来。 关注lnk文件是快捷方式文件,你朋友没有给你发送正确的文件,你还是再找他吧。发布于 2015-07-20 21:37赞同 2添加评论分享收藏喜欢收起
电脑LNK格式文件的正确打开方式 - 知乎
电脑LNK格式文件的正确打开方式 - 知乎切换模式写文章登录/注册电脑LNK格式文件的正确打开方式迷你兔数据安全中心LNK格式文件是Windows操作系统中的快捷方式文件。它们包含指向目标文件或文件夹的路径,以及其他相关信息,如图标和启动参数。通过双击LNK文件,用户可以快速访问目标文件或文件夹,而无需浏览整个文件系统。LNK文件相关的常见问题和信息创建快捷方式:要创建LNK文件,可以右键单击目标文件或文件夹,然后选择“创建快捷方式”选项。新的LNK文件将在相同的目录中生成。快捷方式图标:LNK文件可以具有自定义图标,以便与目标文件或文件夹区分开来。这些图标通常是目标文件或文件夹的缩小版本。目标路径:LNK文件包含指向目标文件或文件夹的路径。当双击LNK文件时,操作系统将根据该路径打开相应的目标。更改目标:可以通过右键单击LNK文件,选择“属性”选项,然后在“快捷方式”选项卡上更改目标路径。这可以用于更新LNK文件指向的目标。快捷方式扩展名:LNK文件的扩展名是.lnk。在Windows资源管理器中,它们通常显示为目标文件或文件夹的名称加上箭头图标。共享LNK文件:LNK文件可以通过电子邮件、网络共享或可移动媒体(如USB驱动器)与其他用户共享。接收者可以双击LNK文件以打开其指向的目标。总而言之,LNK文件是Windows操作系统中的快捷方式文件,它们提供了一种快速访问目标文件或文件夹的方式。它们是与目标文件或文件夹相关联的小型文件,方便用户快速浏览和打开特定位置的内容。lnk文件的打开方式双击打开:在Windows资源管理器中,双击LNK文件即可打开它。操作系统将读取LNK文件中的目标路径,并打开指向的目标文件或文件夹。右键菜单打开:在Windows资源管理器中,右键单击LNK文件,然后选择“打开”选项。这将使用默认程序打开LNK文件指向的目标。使用命令行打开:可以使用命令行窗口打开LNK文件。在命令行中,输入start 路径\文件名.lnk,将路径和文件名替换为实际的LNK文件路径和文件名,然后按回车键。这将使用默认程序打开LNK文件指向的目标。使用特定程序打开:如果你想使用特定程序打开LNK文件而不是默认程序,可以右键单击LNK文件,选择“打开方式”或“打开方式"(取决于Windows版本),然后从列表中选择所需的程序。使用文本编辑器查看:LNK文件实际上是一种二进制文件,但你可以使用文本编辑器(如记事本)打开它以查看其中的一些元数据信息。右键单击LNK文件,选择“打开方式”或“打开方式",然后选择记事本或其他文本编辑器。请注意,LNK文件本身并不包含实际的目标文件或文件夹内容,它们只是指向目标的快捷方式。打开LNK文件实际上是通过操作系统解析其目标路径,并打开指向的文件或文件夹。以上是关于LNK文件的相关知识介绍,相信大家对于LNK文件有了更深入的了解。发布于 2023-07-25 10:27・IP 属地四川格式电脑知识文件格式赞同 3添加评论分享喜欢收藏申请
lnk_百度百科
百度百科 网页新闻贴吧知道网盘图片视频地图文库资讯采购百科百度首页登录注册进入词条全站搜索帮助首页秒懂百科特色百科知识专题加入百科百科团队权威合作下载百科APP个人中心收藏查看我的收藏0有用+10lnk播报讨论上传视频指向其他文件的文件lnk文件是用于指向其他文件的一种文件。 这些文件通常称为快捷方式文件,通常它以快捷方式放在硬盘上,以方便使用者快速的调用。中文名lnk指 向其他文件的一种文件称 为快捷方式文件安 装Windows补丁程序目录1基本信息▪Windows▪修复方法2漏洞▪病毒▪处理方法基本信息播报编辑Windowswindows的很多lnk文件(也就是快捷方式)都是带有参数的。/play—在打开连接后自动运行媒体文件"%1" —打开连接后自动出现文件选取框选择文件/Play "%L" —打开winamp后自动出现List选择框选择文件播放列表“.lnk”是WINDOWS系统默认的快捷方式的扩展名,如果“文件夹选项”下设置为“隐藏已知文件类型的扩展名”,正常情况下“.lnk”是不显示的。你的快捷方式的扩展名显现出来,证明WINDOWS设置被中断,快捷方式为不可识别信息。修复方法(1)点击“开始”→“运行”,键入“cmd”,进入命令提示符状态,用键盘敲入assoc.lnk=lnkfile(中间无空格),按回车即可。lnk操作失误:如果修改快捷方式之后,反而是成了这个模样,那一定是命令有误,或者没有注意最后不能有空格的提示,只要重新输入正确的修复快捷方式的命令即可。这时不要怀疑命令的正确性,只是多了一个空格而已。继续在命令提示符窗口中按一下F3键(这样会自动去除多余的空格),回车执行命令就好了。 [1](2)点击“开始”→“运行”,键入“regedit”,进入注册表,搜索“HKEY_LOCAL_MACHINE\SOFTWARE\CLASSES\”下的“.lnk”键,修改其值为“lnkfile”,保存即可。两种办法本质一样,如果你不懂注册表建议采用第一种方法______________________________________WIN7系统电脑除了计算机,网络,回收站以外的图标都变成后缀为lnk的文件了,也就是打开快捷方式 的时候用别的程序打开后所有快捷方式都变化的情况。步骤1:Windows vista\Windows 7 操作系统修复方法.......1、首先 win开始键+r 2、打开运行程序 3、输入: regedit 4、找到: 计算机\HKEY_CURRENT_USER\SOFTWARE\MICROSOFT\WINDOWS\currentversion\Explorer\FileExts\.lnk会发现有openwithlist 和 openwithprogids 两项,如果有其他的选项将其删除5、再将openwithlist 内的除默认以外的所有键值都删除6、将openwithprogids内的除默认和lnkfile以外的所有键值都删除.7、保存退出即可。如何通过lnk文件获取该文件的执行路径和程序function LinkFileInfo(const lnkFileName:string;var info:LINK_FILE_INFO;const bSet:boolean):boolean;varhr:hresult;psl:IShelllink;wfd:win32_find_data;ppf:IPersistFile;lpw:pwidechar;buf:pwidechar;beginresult:=false;getmem(buf,MAX_PATH);tryif SUCCEEDED(CoInitialize(nil)) thenif (succeeded(cocreateinstance(clsid_shelllink,nil,clsctx_inproc_server,IID_IShellLinkA,psl))) thenbeginhr:=psl.QueryInterface(iPersistFile,ppf);if succeeded(hr) thenbeginlpw:=stringtowidechar(lnkfilename,buf,MAX_PATH);hr := ppf.Load(lpw, STGM_READ);if succeeded(hr) thenbeginhr := psl.Resolve(0, SLR_NO_UI);if succeeded(hr) thenbeginif bSet thenbeginpsl.SetArguments(info.Arguments);psl.SetDescription(info.Description);psl.SetHotkey(info.HotKey);psl.SetIconLocation(info.IconLocation,info.IconIndex);psl.SetIDList(info.ItemIDList);psl.SetPath(info.FileName);psl.SetShowCmd(info.ShowState);psl.SetRelativePath(info.RelativePath,0);psl.SetWorkingDirectory(info.WorkDirectory);if succeeded(psl.Resolve(0,SLR_UPDATE)) thenresult:=true;endelsebeginpsl.GetPath(info.FileName,MAX_PATH, wfd,SLGP_SHORTPATH );psl.GetIconLocation(info.IconLocation,MAX_PATH,info.IconIndex);psl.GetWorkingDirectory(info.WorkDirectory,MAX_PATH);psl.GetDescription(info.Description,CCH_MAXNAME);psl.GetArguments(info.Arguments,MAX_PATH);psl.GetHotkey(info.HotKey);psl.GetIDList(info.ItemIDList);psl.GetShowCmd(info.ShowState);result:=true;end;end;end;end;end;finallyfreemem(buf);end;end;//*******************调用*****************showmessage(\'FileName:\'+info.filename+#13+\'Description:\'+info.Description+#13+\'IconFilename:\'+info.IconLocation+\',\'+inttostr(info.IconIndex)+#13+\'WordDir:\'+info.WorkDirectory+#13+\'Arguments:\'+info.Arguments+#13+\'ShorCuts:\'+shortcuttotext(s));info.WorkDirectory:=\'D:\\Borland\\Delphi5\\projects\';linkfileinfo(opendialog1.filename,info,true);end;end;==============================================function GetLinkFileName(sLinkFileName: string; var sTargetFileName: string): boolean;varpsl: IShellLink;ppf: IPersistFile;hres, nLen: integer;pfd: TWin32FindData;pTargetFile: PChar;pwLinkFileName: PWideChar;beginResult := false;if SUCCEEDED(CoInitialize(nil)) thenbeginCoCreateInstance(CLSID_ShellLink, nil, CLSCTX_INPROC_SERVER, IID_IShellLinkA, psl);if (SUCCEEDED(hres)) thenbeginhres := psl.QueryInterface(IID_IPersistFile, ppf);if (SUCCEEDED(hres)) thenbeginnLen := MultiByteToWideChar(CP_ACP, 0, PChar(sLinkFileName), -1, pwLinkFileName, 0);GetMem(pwLinkFileName, nLen);ZeroMemory(pwLinkFileName, nLen);MultiByteToWideChar(CP_ACP, 0, PChar(sLinkFileName), -1, pwLinkFileName, nLen);ppf.Load(pwLinkFileName, STGM_READ);GetMem(pTargetFile, MAX_PATH);ZeroMemory(pTargetFile, MAX_PATH);hres := psl.GetPath(pTargetFile, MAX_PATH, pfd, SLGP_UNCPRIORITY );if (SUCCEEDED(hres)) thenbeginsTargetFileName := StrPas(pTargetFile);Result := true;end;FreeMem(pTargetFile);FreeMem(pwLinkFileName);end;end;end;end;漏洞播报编辑2010年7月16日,Windows快捷方式自动执行0day漏洞[CVE-2010-2568](微软安全知识库编 号2286198)被披露,很快网上已经可以找到利用这个漏洞攻击的样本。利用Windows快捷方式自动执行0day漏洞可以做到:看一眼恶意软件就中 毒,而根本不需要去执行它。金山毒霸安全实验室预计在未来一段时间,这个漏洞将会被广泛使用,网民须高度重视。攻击者利用Windows快捷方式自动执行0day漏洞,可以制作一个特殊的lnk文件(LNK是快捷方式文件的扩展名),当Windows解析这个 LNK文件时,会自动执行指定的恶意程序。这个漏洞最佳利用通道是U盘、移动硬盘、数码存储卡,也可以是本地磁盘或网络共享文件夹,当U盘或网络共享文件 夹存在这样的攻击程序时,只需要使用资源管理器,或与资源管理器类似的应用程序查看这个文件夹,不需要手动运行病毒程序,病毒自己就会触发。这个漏洞最令人吃惊的地方在于,“不需要双击病毒文件,仅看一眼文件图标就中毒”。几年前,曾经有个叫“新欢乐时光 (VBS.KJ)”的病毒广为流传,VBS.KJ病毒会在每个文件夹下生成desktop.ini和folder.htt文件(这两个文件控制了文件夹在 资源管理器中的显示)。只要打开被病毒修改过的含有desktop.ini和folder.htt的文件夹,不需要双击病毒,看一眼就中毒。现在和新欢乐 时光传播类似的病毒将要出现了,尽管我们还没有看到很多病毒作者利用Windows快捷方式漏洞传播,但相信这种病毒攻击一定会有。Windows快捷方式自动执行0day漏洞存在所有流行的Windows版本,包括尚未公开发布的Windows 7 SP1 beta和Windows 2008 R2 SP1 beta。意味着,这个风险几乎遍布所有安装了Windows的电脑。防止这个漏洞被利用,微软方面提供了几个暂时缓解的方案:1.关闭快捷方式图标的显示,不过这会让Windows界面变得奇丑,因为一个个漂亮的桌面图标和开始菜单图标全都不显示了。2.建议企业用户关闭WebClient服务,个人用户(一般不使用网络共享资源)可以不必考虑这个问题。3.关闭U盘自动播放可以避免插上U盘的动作就中毒,只有手动查看文件夹才有风险。4.以受限用户权限运行计算机可以降低风险对于喜欢使用各种Windows美化版的用户来说,可能麻烦更大一些,这些美化版大都修改了shell32.dll,针对这个Windows 快捷方式自动执行0day漏洞的修补程序,可能去修补shell32.dll,可能会让这些美化版出现一些问题。倘若这些真的发生了,那些使用美化版的盗 版Windows用户也许会拒绝这个重要的安全补丁,从而加剧利用此漏洞的病毒传播。这是一个需要安全厂商和所有消费者高度关注的安全漏洞,希望微软能在下一个例行补丁日到来之前提供应急补丁。金山毒霸安全实验室提供以下临时的紧急解决方案:1.根本上解决,必须安装Windows补丁程序。待微软官方更新之后,用户须立即使用金山卫士或Windows Update安装补丁。2.临时解决办法:安装金山网盾,升级后,获得对lnk漏洞(快捷方式漏洞)的免疫能力。3.安装金山毒霸2011安全套装,检查U盘存储的文件,及时清理U盘中的病毒。4.网管宜加强局域网共享权限的管理,关闭不受控的完全共享,避免病毒文件在局域网共享文件夹中传播。病毒lnk病毒(1张)一打开程序,如ttplayer.exe,就会在程序目录下及任务管理器中生成ttplayer.exe.lnkttplayer.exe.lnk.lnkttplayer.exe.lnk.lnk.lnkttplayer.exe.lnk.lnk.lnk.lnkttplayer.exe.lnk.lnk.lnk.lnk.lnk……重装系统也没用。处理方法这个是最新的lnk病毒,不同于之前的lnk快捷方式病毒。这个病毒有感染次数限制,忘了是18次还是14次了。第一次发现就不要操作了,否则很变态一个病毒。等着杀毒软件更新入库吧。临时处理方法:讲最后的那个(也就是最长的那个)lnk,复制后保存。(很重要)然后在任务管理器中将其他的(不包括最长那个)的那些lnk都终止进程。然后将最后那个lnk改名,一定要改名。然后使用金山网盾(百度搜索“金山网盾”。第一个链接就是)用里面的一键修复功能处理之后重启。新手上路成长任务编辑入门编辑规则本人编辑我有疑问内容质疑在线客服官方贴吧意见反馈投诉建议举报不良信息未通过词条申诉投诉侵权信息封禁查询与解封©2024 Baidu 使用百度前必读 | 百科协议 | 隐私政策 | 百度百科合作平台 | 京ICP证030173号 京公网安备110000020000Windows 如何打开和编辑.lnk文件-CSDN博客
>Windows 如何打开和编辑.lnk文件-CSDN博客
Windows 如何打开和编辑.lnk文件
最新推荐文章于 2024-01-16 18:56:33 发布
小青龍
最新推荐文章于 2024-01-16 18:56:33 发布
阅读量5w
收藏
7
点赞数
4
分类专栏:
Windows
Python
文章标签:
windows
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/B11050729/article/details/131538291
版权
Windows
同时被 2 个专栏收录
24 篇文章
3 订阅
订阅专栏
Python
16 篇文章
3 订阅
订阅专栏
文章目录
一、背景二、查看/修改`.lnk`文件内容方案1:用`type命令`查看方案2:更改`.lnk`文件后缀为`.txt`再查看方案3:用`记事本`或`NodePad++`打开方案4:使用`HxD hex editor`十六进制编辑器方案5:使用第三方库查看或编辑1. `Matmaus/LnkParse3` 库1)`get_json()`输出解析内容(无格式化)2)`print_lnk_file()` 输出解析内容(自带格式化)3)`ldata.print_json()` 输出解析内容(自带格式化)
2. `strayge/pylnk`库1)解析已有的`.lnk`文件2)更改已有的`.lnk`文件3)从零开始创建新的`.lnk`文件
三、总结
一、背景
在Windows系统中,快捷方式是最最常见的文件了。 (.lnk后缀的文件,后缀可能是隐藏的)点击.lnk后缀的文件,会打开其关联的目标对象。 (目标对象可以是本地或网络程序、文件、文件夹、计算机、Internet 地址等等)大多数人永远都不会需要打开.lnk文件进行查看或编辑它。 (注意这里说的是.lnk文件本身,而不是它链接的目标文件,当然也不是在说右键>属性查看/编辑.lnk文件属性)我也差点成为大多数人中的一员,直到前几天我在写一个批处理时,发现命令提示符.lnk快捷方式打开的dos窗口,与cmd.exe 程序打开的dos窗口,两者窗口的属性配置竟然不一致,后者的属性配置是从注册表加载的,而前者属性配置会不会是从.lnk文件本身读取的呢? (如果你从没有修改过cmd.exe或.lnk打开的dos窗口的属性,那它们的属性配置都是默认值,都一样。这里就不细说了,感兴趣的可以看我的另一篇文章:Windows 不同方式打开的cmd/dos窗口属性配置不同)
为了探究命令提示符.lnk文件中是否存储了dos窗口属性配置信息,于是我有了想要查看.lnk文件内容的需求,接下来就我尝试多的几种方案做下总结。
二、查看/修改.lnk文件内容
(温馨提示:方案1~4 都是失败的方案,方案5 才是成功的方案,你可以直接跳到 方案5)
方案1:用type命令查看
通过type命令在DOS窗口查看.lnk文件内容 格式:type path_to_lnk_file 或者结合重定向将内容输出到.txt文件中,示例:
C:\Users\cyinl>type Desktop\cmd.lnk > cmd_content.txt
总结:方案1,输出文件内容是乱码,基本没法看,更别说修改了。。。不可取
方案2:更改.lnk文件后缀为.txt再查看
因为多数人电脑上.lnk后缀不显示,所以重命名改后缀的方式不太可行, 这里推荐使用cp命令复制.lnk文件,新文件使用.txt后缀,示例:
C:\Users\cyinl>copy Desktop\cmd.lnk cmd_content2.txt
已复制 1 个文件。
总结:方案2,查看到的内容也是乱码,不可取。(实质上跟方案1中的重定向生成的.txt文件一样)
方案3:用记事本或NodePad++打开
注意:不要用 文件>打开 的方式打开,而是直接把.lnk文件拖到记事本或NodePad++窗口 你也可以在dos窗口,使用编辑器应用程序运行.lnk文件,如使用notepad.exe程序,打开.lnk文件:
C:\Windows\System32>notepad.exe C:\users\cyinl\Desktop\cmd.lnk
总结:方案3,查看到的内容也是乱码,不可取
方案4:使用HxD hex editor十六进制编辑器
HxD官网下载地址:HxD hex editor HxD 下载安装完成后,通过拖拽或文件>打开方式,打开.lnk文件 总结:方案4,以十六进制打开lnk文件,但是转换出来的文本仍有乱码,阅读性差。虽然查看及编辑lnk文件,但是一般人真编辑不来。。。不可取
方案5:使用第三方库查看或编辑
在Python的库里我体验了几个.lnk相关的库,这里推荐两个觉得不错的。 建议可以先了解下关于.lnk二进制文件格式的有关知识: [MS-SHLLINK]: Shell Link (.LNK) Binary File Format
1. Matmaus/LnkParse3 库
GitHub仓库:Matmaus/LnkParse3
特点:
简单易用,官网文档详细;解析lnk文件输出信息比较全,格式也漂亮;支持cli、python package 两种使用方式;但这个库仅解析lnk文件,不支持编辑或创建。
详细的介绍、安装和使用方式见官网 这里使用 python package 方式演示,cli命令行的方式参考官网自行体验吧。
# -*- coding:utf-8 -*-
import LnkParse3
with open("C:\\Users\cyinl\Desktop\cmd.lnk","rb") as lf:
ldata = LnkParse3.lnk_file(lf)
print(ldata.get_json()) # 获取解析数据,未格式化的json格式
ldata.print_json() # 打印输出格式化后的json数据
ldata.print_lnk_file() # 打印输出文本形式的数据,也有漂亮的格式
获取.lnk文件解析内容的方式如下:
1)get_json()输出解析内容(无格式化)
{'header': {'guid': '00021401-0000-0000-C000-000000000046', 'r_link_flags': 989, 'r_file_flags': 0, 'creation_time': None, 'accessed_time': None, 'modified_time': None, 'file_size': 0, 'icon_index': 0, 'windowstyle': 'SW_SHOWNORMAL', 'hotkey': 'UNSET - UNSET {0x0000}', 'r_hotkey': 0, 'link_flags': ['HasTargetIDList', 'HasName', 'HasRelativePath', 'HasWorkingDir', 'HasIconLocation', 'IsUnicode', 'ForceNoLinkInfo', 'HasExpString'], 'file_flags': []}, 'data': {'description': '@%windir%\\system32\\shell32.dll,-22534', 'relative_path': '..\\..\\..\\WINDOWS\\system32\\cmd.exe', 'working_directory': '%HOMEDRIVE%%HOMEPATH%', 'icon_location': '%windir%\\system32\\cmd.exe'}, 'extra': {'SPECIAL_FOLDER_LOCATION_BLOCK': {'size': 16, 'special_folder_id': 37, 'offset': 221}, 'KNOWN_FOLDER_LOCATION_BLOCK': {'size': 28, 'known_folder_id': '1AC14E77-02E7-4E5D-B744-2EB1AE5198B7', 'offset': 221}, 'ENVIRONMENTAL_VARIABLES_LOCATION_BLOCK': {'size': 788, 'target_ansi': '%windir%\\system32\\cmd.exe', 'target_unicode': '%windir%\\system32\\cmd.exe'}, 'CONSOLE_PROPERTIES_BLOCK': {'size': 204, 'fill_attributes': 15, 'popup_fill_attributes': 181, 'screen_buffer_size_x': 110, 'screen_buffer_size_y': 6000, 'window_size_x': 110, 'window_size_y': 33, 'window_origin_x': 104, 'window_origin_y': 0, 'font_size': 1179648, 'font_family': 54, 'font_weight': 400, 'face_name': '仿宋', 'cursor_size': 25, 'full_screen': 0, 'quick_edit': 1, 'insert_mode': 1, 'auto_position': 1, 'history_buffer_size': 50, 'number_of_history_buffers': 4, 'history_no_dup': 0, 'color_table': 789516}, 'CONSOLE_CODEPAGE_BLOCK': {'size': 12, 'code_page': 936}, 'METADATA_PROPERTIES_BLOCK': {'size': 334, 'storage_size': 232, 'version': '0x53505331', 'format_id': '0C570607-0396-43DE-9D61-E321D7DF5026'}}, 'target': {'items': [{'class': 'Root Folder', 'sort_index': 'My Computer', 'guid': '20D04FE0-3AEA-1069-A2D8-08002B30309D'}, {'class': 'Volume Item', 'flags': '0xf', 'data': None}, {'class': 'File entry', 'flags': 'Is directory', 'file_size': 0, 'file_attribute_flags': 16, 'primary_name': 'WINDOWS'}, {'class': 'File entry', 'flags': 'Is directory', 'file_size': 0, 'file_attribute_flags': 16, 'primary_name': 'system32'}, {'class': 'File entry', 'flags': 'Is file', 'file_size': 0, 'file_attribute_flags': 0, 'primary_name': 'cmd.exe'}]}, 'link_info': {}}
2)print_lnk_file() 输出解析内容(自带格式化)
Windows Shortcut Information:
Link CLSID: 00021401-0000-0000-C000-000000000046
Link Flags: HasTargetIDList | HasName | HasRelativePath | HasWorkingDir | HasIconLocation | IsUnicode | ForceNoLinkInfo | HasExpString - (989)
File Flags: - (0)
Creation Timestamp: None
Modified Timestamp: None
Accessed Timestamp: None
Icon Index: 0
Window Style: SW_SHOWNORMAL
HotKey: UNSET - UNSET {0x0000}
TARGETS:
Index: 78
ITEMS:
Root Folder
Sort index: My Computer
Guid: 20D04FE0-3AEA-1069-A2D8-08002B30309D
Volume Item
Flags: 0xf
Data: None
File entry
Flags: Is directory
Modification time: None
File attribute flags: 16
Primary name: WINDOWS
File entry
Flags: Is directory
Modification time: None
File attribute flags: 16
Primary name: system32
File entry
Flags: Is file
Modification time: None
File attribute flags: 0
Primary name: cmd.exe
DATA
Description: @%windir%\system32\shell32.dll,-22534
Relative path: ..\..\..\WINDOWS\system32\cmd.exe
Working directory: %HOMEDRIVE%%HOMEPATH%
Icon location: %windir%\system32\cmd.exe
EXTRA BLOCKS:
SPECIAL_FOLDER_LOCATION_BLOCK
Special folder id: 37
KNOWN_FOLDER_LOCATION_BLOCK
Known folder id: 1AC14E77-02E7-4E5D-B744-2EB1AE5198B7
ENVIRONMENTAL_VARIABLES_LOCATION_BLOCK
Target ansi: %windir%\system32\cmd.exe
Target unicode: %windir%\system32\cmd.exe
CONSOLE_PROPERTIES_BLOCK
Fill attributes: 15
Popup fill attributes: 181
Window origin x: 104
Window origin y: 0
Font family: 54
Font weight: 400
Face name: 仿宋
Full screen: 0
Quick edit: 1
Insert mode: 1
Auto position: 1
Number of history buffers: 4
History no dup: 0
Color table: 789516
CONSOLE_CODEPAGE_BLOCK
Code page: 936
METADATA_PROPERTIES_BLOCK
Version: 0x53505331
Format id: 0C570607-0396-43DE-9D61-E321D7DF5026
3)ldata.print_json() 输出解析内容(自带格式化)
{
"data": {
"description": "@%windir%\\system32\\shell32.dll,-22534",
"icon_location": "%windir%\\system32\\cmd.exe",
"relative_path": "..\\..\\..\\WINDOWS\\system32\\cmd.exe",
"working_directory": "%HOMEDRIVE%%HOMEPATH%"
},
"extra": {
"CONSOLE_CODEPAGE_BLOCK": {
"code_page": 936,
"size": 12
},
"CONSOLE_PROPERTIES_BLOCK": {
"auto_position": 1,
"color_table": 789516,
"cursor_size": 25,
"face_name": "\u4eff\u5b8b",
"fill_attributes": 15,
"font_family": 54,
"font_size": 1179648,
"font_weight": 400,
"full_screen": 0,
"history_buffer_size": 50,
"history_no_dup": 0,
"insert_mode": 1,
"number_of_history_buffers": 4,
"popup_fill_attributes": 181,
"quick_edit": 1,
"screen_buffer_size_x": 110,
"screen_buffer_size_y": 6000,
"size": 204,
"window_origin_x": 104,
"window_origin_y": 0,
"window_size_x": 110,
"window_size_y": 33
},
"ENVIRONMENTAL_VARIABLES_LOCATION_BLOCK": {
"size": 788,
"target_ansi": "%windir%\\system32\\cmd.exe",
"target_unicode": "%windir%\\system32\\cmd.exe"
},
"KNOWN_FOLDER_LOCATION_BLOCK": {
"known_folder_id": "1AC14E77-02E7-4E5D-B744-2EB1AE5198B7",
"offset": 221,
"size": 28
},
"METADATA_PROPERTIES_BLOCK": {
"format_id": "0C570607-0396-43DE-9D61-E321D7DF5026",
"size": 334,
"storage_size": 232,
"version": "0x53505331"
},
"SPECIAL_FOLDER_LOCATION_BLOCK": {
"offset": 221,
"size": 16,
"special_folder_id": 37
}
},
"header": {
"accessed_time": null,
"creation_time": null,
"file_flags": [],
"file_size": 0,
"guid": "00021401-0000-0000-C000-000000000046",
"hotkey": "UNSET - UNSET {0x0000}",
"icon_index": 0,
"link_flags": [
"HasTargetIDList",
"HasName",
"HasRelativePath",
"HasWorkingDir",
"HasIconLocation",
"IsUnicode",
"ForceNoLinkInfo",
"HasExpString"
],
"modified_time": null,
"r_file_flags": 0,
"r_hotkey": 0,
"r_link_flags": 989,
"windowstyle": "SW_SHOWNORMAL"
},
"link_info": {},
"target": {
"items": [
{
"class": "Root Folder",
"guid": "20D04FE0-3AEA-1069-A2D8-08002B30309D",
"sort_index": "My Computer"
},
{
"class": "Volume Item",
"data": null,
"flags": "0xf"
},
{
"class": "File entry",
"file_attribute_flags": 16,
"file_size": 0,
"flags": "Is directory",
"primary_name": "WINDOWS"
},
{
"class": "File entry",
"file_attribute_flags": 16,
"file_size": 0,
"flags": "Is directory",
"primary_name": "system32"
},
{
"class": "File entry",
"file_attribute_flags": 0,
"file_size": 0,
"flags": "Is file",
"primary_name": "cmd.exe"
}
]
}
}
观察输出的数据,你应该能发现extras字段中的CONSOLE_CODEPAGE_BLOCK、CONSOLE_PROPERTIES_BLOCK 中就是控制台窗口属性配置信息。 总结:LnkParse3 库解析.lnk文件内容确实挺好的,内容全、格式漂亮、使用也简单,不足之处就是它不能创建或编辑.lnk
2. strayge/pylnk库
Github仓库:strayge/pylnk
特点:
支持cli、python package 两种使用方式;可以解析.lnk文件,从中提取有关信息;可以对已有的.lnk文件进行解析生成lnk对象,该对象可以被更改再保存;可以创建新的.lnk文件,方法是创建一个lnk对象,用数据填充它,然后保存到.lnk文件;缺点:当前仅支持操作指向本地计算机上的文件和文件夹的快捷方式
官网仅给出了cli命令行使用方式的示例,但我这里自己体验了下python package的使用方式,如下:
1)解析已有的.lnk文件
import pylnk3
with open("C:\\Users\cyinl\Desktop\cmd.lnk","rb") as fdata:
lnk = pylnk3.parse(fdata)
print(lnk)
解析内容输出:
Target file:
{ 'archive': False,
'compressed': False,
'directory': False,
'encrypted': False,
'hidden': False,
'normal': False,
'not_content_indexed': False,
'offline': False,
'read_only': False,
'reparse_point': False,
'reserved1': False,
'reserved2': False,
'sparse_file': False,
'system_file': False,
'temporary': False}
Creation Time: 2023-07-05 20:36:53.407509
Modification Time: 2023-07-05 20:36:53.407509
Access Time: 2023-07-05 20:36:53.407509
File size: 0
Window mode: Normal
Hotkey:
File Location Info:
Description: @%windir%\system32\shell32.dll,-22534
Relative Path: ..\..\..\WINDOWS\system32\cmd.exe
Working Directory: %HOMEDRIVE%%HOMEPATH%
Icon: %windir%\system32\cmd.exe
Used Path: C:\WINDOWS\system32\cmd.exe
ExtraDataBlock
signature 0xa0000005
data: b'%\x00\x00\x00\xdd\x00\x00\x00'
ExtraDataBlock
signature 0xa000000b
data: b'wN\xc1\x1a\xe7\x02]N\xb7D.\xb1\xaeQ\x98\xb7\xdd\x00\x00\x00'
EnvironmentVariableDataBlock
TargetAnsi: %windir%\system32\cmd.exe
TargetUnicode: %windir%\system32\cmd.exe
ExtraDataBlock
signature 0xa0000002
data: b'\x0f\x00\xb5\x00n\x00p\x17n\x00!\x00h\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x006\x00\x00\x00\x90\x01\x00\x00\xffN\x8b[\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x002\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x0c\x0c\x0c\x00\x007\xda\x00\x13\xa1\x0e\x00:\x96\xdd\x00\xc5\x0f\x1f\x00\x88\x17\x98\x00\xc1\x9c\x00\x00\x0c\x0c\x0c\x00vvv\x00;x\xff\x00\x16\xc6\x0c\x00a\xd6\xd6\x00\xe7HV\x00\xb4\x00\x9e\x00777\x00\xf2\xf2\xf2\x00'
ExtraDataBlock
signature 0xa0000004
data: b'\xa8\x03\x00\x00'
PropertyStoreDataBlock
PropertyStore
FormatID: {0C570607-0396-43DE-9D61-E321D7DF5026}
3 = 0xb: b'\xff\xff\x00\x00'
9 = 0x13: 4294967295
12 = 0x13: 4294967295
13 = 0xb: b'\x00\x00\x00\x00'
1 = 0xb: b'\xff\xff\x00\x00'
2 = 0xb: b'\xff\xff\x00\x00'
4 = 0xb: b'\x00\x00\x00\x00'
6 = 0x2: b'\xff\x00\x00\x00'
8 = 0x13: 0
11 = 0x13: 4294967295
5 = 0xb: b'\xff\xff\x00\x00'
10 = 0xb: b'\x00\x00\x00\x00'
PropertyStore
FormatID: {9F4C2855-9F79-4B39-A8D0-E1D42DE1D5F3}
18 = 0x13: 1
PropertyStore
FormatID: {46588AE2-4CBC-4338-BBFC-139326986DCE}
0 = 0x13: 0
2)更改已有的.lnk文件
修改已有的.lnk文件,或保存到原有的.lnk文件,或保为到新的.lnk文件
import pylnk3
with open("C:\\Users\cyinl\Desktop\cmd.lnk","rb") as fdata:
lnk = pylnk3.parse(fdata)
# 修改lnk对象的有关属性值
lnk.working_dir = "F:\Chen\python3\ExciseC"
lnk.window_mode = pylnk3.WINDOW_MAXIMIZED
# 这里也可以给别的路径及名字,这样就相当于复制并修改后保存为一个新的
lnk.save("C:\\Users\cyinl\Desktop\cmd2.lnk")
print(lnk)
修改后的内容输出:
Target file:
{ 'archive': False,
'compressed': False,
'directory': False,
'encrypted': False,
'hidden': False,
'normal': False,
'not_content_indexed': False,
'offline': False,
'read_only': False,
'reparse_point': False,
'reserved1': False,
'reserved2': False,
'sparse_file': False,
'system_file': False,
'temporary': False}
Creation Time: 2023-07-05 21:09:56.770144
Modification Time: 2023-07-05 21:09:56.770144
Access Time: 2023-07-05 21:09:56.770144
File size: 0
Window mode: Maximized
Hotkey:
File Location Info:
Description: @%windir%\system32\shell32.dll,-22534
Relative Path: ..\..\..\WINDOWS\system32\cmd.exe
Working Directory: F:\Chen\python3\ExciseC
Icon: %windir%\system32\cmd.exe
Used Path: C:\WINDOWS\system32\cmd.exe
ExtraDataBlock
signature 0xa0000005
data: b'%\x00\x00\x00\xdd\x00\x00\x00'
ExtraDataBlock
signature 0xa000000b
data: b'wN\xc1\x1a\xe7\x02]N\xb7D.\xb1\xaeQ\x98\xb7\xdd\x00\x00\x00'
EnvironmentVariableDataBlock
TargetAnsi: %windir%\system32\cmd.exe
TargetUnicode: %windir%\system32\cmd.exe
ExtraDataBlock
signature 0xa0000002
data: b'\x0f\x00\xb5\x00n\x00p\x17n\x00!\x00h\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x006\x00\x00\x00\x90\x01\x00\x00\xffN\x8b[\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x002\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x0c\x0c\x0c\x00\x007\xda\x00\x13\xa1\x0e\x00:\x96\xdd\x00\xc5\x0f\x1f\x00\x88\x17\x98\x00\xc1\x9c\x00\x00\x0c\x0c\x0c\x00vvv\x00;x\xff\x00\x16\xc6\x0c\x00a\xd6\xd6\x00\xe7HV\x00\xb4\x00\x9e\x00777\x00\xf2\xf2\xf2\x00'
ExtraDataBlock
signature 0xa0000004
data: b'\xa8\x03\x00\x00'
PropertyStoreDataBlock
PropertyStore
FormatID: {0C570607-0396-43DE-9D61-E321D7DF5026}
3 = 0xb: b'\xff\xff\x00\x00'
9 = 0x13: 4294967295
12 = 0x13: 4294967295
13 = 0xb: b'\x00\x00\x00\x00'
1 = 0xb: b'\xff\xff\x00\x00'
2 = 0xb: b'\xff\xff\x00\x00'
4 = 0xb: b'\x00\x00\x00\x00'
6 = 0x2: b'\xff\x00\x00\x00'
8 = 0x13: 0
11 = 0x13: 4294967295
5 = 0xb: b'\xff\xff\x00\x00'
10 = 0xb: b'\x00\x00\x00\x00'
PropertyStore
FormatID: {9F4C2855-9F79-4B39-A8D0-E1D42DE1D5F3}
18 = 0x13: 1
PropertyStore
FormatID: {46588AE2-4CBC-4338-BBFC-139326986DCE}
0 = 0x13: 0
生成的新.lnk文件 打开cmd2.lnk快捷方式,验证确实已生效 (起始位置:F:\Chen\python3\ExciseC,运行方式:最大化)
3)从零开始创建新的.lnk文件
准备一个目标文件,F:\test\test.bat
@echo off
echo working_dir=%cd%
if "%*" == "" (
echo "no arguments"
) else (
for %%i in (%*) do echo %%i
)
timeout /T 10 /NOBREAK
为test.bat文件生成一个test.lnk快捷方式
import pylnk3
# 准备lnk文件内容数据
args = "A B C"
desc = "a lnk to test.bat"
icon_f = "%SystemRoot%\\System32\\SHELL32.dll"
icon_idx = 320
work_dir = "F:\\test"
window_m = pylnk3.WINDOW_NORMAL
target_f = "F:\\test\\test.bat"
lnk_name = "F:\\test\\test.lnk"
# 创建lnk文件
pylnk3.for_file(target_file=target_f,lnk_name=lnk_name,
arguments=args,description=desc,icon_file=icon_f,
icon_index=icon_idx,work_dir=work_dir,window_mode=window_m)
# 解析生成的lnk文件
with open(lnk_name,"rb") as fdata:
lnk = pylnk3.parse(fdata)
print(lnk)
python脚本控制台输出:
Target file:
{ 'archive': False,
'compressed': False,
'directory': False,
'encrypted': False,
'hidden': False,
'normal': False,
'not_content_indexed': False,
'offline': False,
'read_only': False,
'reparse_point': False,
'reserved1': False,
'reserved2': False,
'sparse_file': False,
'system_file': False,
'temporary': False}
Creation Time: 2023-07-05 22:55:30
Modification Time: 2023-07-05 22:55:30
Access Time: 2023-07-05 22:55:30
File size: 0
Window mode: Normal
Hotkey:
File Location Info:
Description: a lnk to test.bat
Working Directory: F:\test
Commandline Arguments: A B C
Icon: %SystemRoot%\System32\SHELL32.dll
Used Path: F:\test\test.bat
生成的test.lnk文件 点击test.lnk快捷方式
总结:pylnk3 库功能比较齐全,支持lnk文件的解析、编辑、创建等,但它在内容解析方面对比 LnkParse3 ,格式不漂亮、内容不太全(比如cmd.lnk的解析,extras没有console相关的属性信息)(再吐槽一点,pylnk3 官网的使用说明里没有python package的用法示例,上面的用法我摸索了好久。。。)
三、总结
方案1~4是失败的,方案5是成功的,谁又不是从失败中一步步走来呢;经过使用LnkParse3解析cmd.lnk内容以及结合 Shell Link (.LNK) Binary File Format,得出结论cmd.lnk打开的dos窗口,属性配置确实是保存在cmd.lnk文件本身内的;虽然pylnk3库支持.lnk文件的修改、创建,但我还是建议你通过 右键>属性 方式修改lnk文件的内容,通过右键>创建快捷方式的方式来创建lnk快捷方式。
参考资料: how-do-i-persuade-programs-open-an-actual-lnk-file-in-windows-7 how-can-you-open-and-edit-windows-.lnk-shortcut-files [MS-SHLLINK]: Shell Link (.LNK) Binary File Format Matmaus/LnkParse3
优惠劵
小青龍
关注
关注
4
点赞
踩
7
收藏
觉得还不错?
一键收藏
打赏
知道了
1
评论
Windows 如何打开和编辑.lnk文件
Windows 如何打开和编辑.lnk文件(不是其链接的目标文件),通过使用python的LnkParse3库解析lnk文件内容,证明了通过.lnk方式打开的dos窗口的属性配置是从.lnk文件内容中加载的。文中还演示了通过pylnk3库创建lnk文件及解析/修改lnk文件
复制链接
扫一扫
专栏目录
用于创建或修改现有LNK的C#项目-.NET开发
05-27
用于创建或修改现有LNK的C#项目LNKMod输出文件名如果使用-modify,将更新您指定的.LNK如果使用-create用法/测试用例,则将创建payload.lnk。修改(将在当前目录中修改.LNK,仅放置一个! )修改可执行文件的路径,不带参数。\ LNKMod.exe -modify -path“ C:\ Windows \ system32 \ calc.exe”修改可执行文件和参数的路径。\ LNKMod.exe -modify -path“ C:\ Windows \ system32 \ cmd.exe“ -args” / c notepad.exe“创建(将在当前目录中创建payload.lnk,没有
WinRAR 压缩文件管理软件 5.31 简体中文注册版(去锁定).exe
05-16
1、改善了对 高分辨率DPI适配情况:
a) 当文字缩放比为 150% 或更高时,WinRAR 的说明文字不随之变化,看起来太小;
b) 当文字缩放比为 125% 或更高时,WinRAR 文件菜单的字段宽度比预期的要小。
2、修正以下问题:
a) WinRAR 的自解压模块可以自己执行相同路径下的 DLL 文件且呼叫 Windows API 函数。如果自解压文件和恶意软件同时放在同一个文件夹中,可能给产生资料和信息安全带来隐患。现在自解压文件会进一步做判断,具体表现在 Windows Vista 以上的版本。
至于 Windows XP 用户,不要在自解压文件所在的文件夹中存放可疑的DLL 文件。请务必小心,我们只能帮你到这了。
b) WinRAR 5.30 无法成功的从文件列表中运行.lnk文件。
版本特点
以英文版做为母版 + 周明波版官方简体中文升级, 并做了部分修改
集成 Real key,安装后即是注册版
无视文件锁定 (可编辑锁定的 RAR 文件, 方便修改注释、添加或删除文件!)
汉化命令行版本 RAR.EXE 和 UnRAR.exe
修改资源管理器右键查看 RAR 注释字体为宋体9号
1 条评论
您还未登录,请先
登录
后发表或查看评论
批处理 给已有的快捷方式.LNK加启动参数
最新发布
wuyinbin的博客
01-16
370
set "lnkfile=C:\Users\Public\Desktop\浏览器.lnk"rem 在指定快捷方式的目标项后面添加/增加一个参数值。rem 指定快捷方式的路径。rem 指定添加的参数。
后缀是lnk是什么文件_ink是什么文件?ink文件怎么打开
weixin_39947812的博客
12-20
1万+
首先其实是没有.ink后缀的文件的,也就是说很多人都看错了,实际上它是.lnk的后缀文件,所以我们其实是问的.lnk是什么文件,它怎么打开,其实.lnk其实就是我们最常见的快捷方式文件,我们在电脑桌面上看到的很多图标都是.lnk的快捷方式,比如qq,比如浏览器都是lnk文件。一、可以注意到我们只要是lnk结尾的都是左下角带有一个弯箭头的图标,这种就是快捷方式lnk文件了,它其实是打开某个软件的快捷...
在Windows上实现link
gande08的专栏
06-28
3329
众所周知,在Linux上,link命令很好很强大,可以很方便的为我们创建链接。但是在Windows上却没有对应的功能,之多只能建一个快捷方式,但是远远达不到link的功能。如何才能使Windows上也具备类似Linux上link的功能呢?最近因工作需要,研究了一下,发现方法还挺多。
1. mklink
这个是Windows自带的命令,可惜只有在Vista与Win7以上的版本才能默认支持
文件的读写基本操作
热门推荐
范高伦的博客
09-07
1万+
一、文件是计算机中数据持久化存储的表现形式
读写文件标准操作格式1:
1、打开文件:file1 = open('文件名','读写模式')
2、操作文件
3、关闭文件:file1.close()
文件操作完毕后必须关闭,否则长期保持对文件的连接状态,造成内存溢出的现象发生
读写文件操作格式2:
# 1、打开文件
file1 = open('demo.txt','w')
# 2、操作文件
file1.write('hello world')
# 3、关闭文件
file1.close()
1、打开文件:wi
VC修改存在快捷方式图标
itjobtxq的专栏
05-20
3730
直接上代码:
bool ChangeLinkIcon(const CString &strLnkName, const CString &strIconPath)
{
if (strLnkName.IsEmpty() || strIconPath.IsEmpty())
{
return false;
}
HRESULT hres;
【嵌入式】如何写一个链接文件
weixin_43060137的博客
02-11
5415
链接文件一般以“.lds”、“.link”为后缀的文件在嵌入式软件工程中出现。其作用是规定把输入文件内的section(部分)放入输出文件内, 以及控制输出文件内各部分在程序地址空间内的布局。
我们以Telink SIG Mesh中boot.link文件为例:
/* to tell the linker the program begin from __start label in cstartup.s, thus do not treat it as a unused symbol */
ENTRY(__
vscode 打开 .lnk 文件, 改变默认编译器方法
tiandyoin的专栏
03-23
711
2. ctrl + , 进入设置, 输入 lock group,看到 Workbench>Editor: Auto Lock Groups。3. 在 vscode 的资源管理器,就可以直接双击打开 xxx.cpp.lnk 等快捷方式指向的文件了。1. 在扩展里搜索 Windows lnk 安装,Open 插件名就叫 Open。勾选 lnk Connector.
打开方式更改为计算机程序,Lnk打开方式被修改 快捷方式被其他应用程序强制关联...
weixin_33416900的博客
07-16
1386
今天朋友给我发来消息,她说自己电脑上的快捷方式都变了图标,全部被WMP关联了,无法正常打开程序,关于Lnk打开方式被修改的问题,下边就为大家介绍一下如何修复!主要症状:快捷方式图标被强制改为某应用程序图标,且双击打开时被强制使用此应用程序打开。可能原因:不小心更改了快捷方式*.lnk后缀的文件的打开方式,将之关联到某一应用程序,使得系统内所有快捷方式图标变为该应用程序图标,双击调用该应用程序打开。...
Windows lnk有什么作用?怎么打开?
SAW1234567的博客
06-29
4248
许多朋友在重装完Win10系统后都非常怀念Win7系统的桌面便签功能,每天把工作学习计划内容写在上面非常的方便。其实在Win10系统中也有类似的小工具,即Windows lnk工作区。下面就来介绍一下Win10系统的Windows lnk工作区功能以及如何进行设置。Win10系统Windows lnk工作区的设置方法1、右键点击任务栏,选择点击“任务栏设置”。2、在打开界面的右侧栏中找到通知区域下...
Jatchfiles:Windows维护脚本(批处理文件中的JScript)
05-19
档案文件Windows维护脚本(批处理文件中的JScript)内容ln.cmd-mklink包装器。 sendto.cmd-SendTo维护工具。 startup.cmd-启动维护工具。 please.cmd-以管理员身份执行。 chpath.js-使用notepad.exe编辑Root-%PATH...
快速启动工具 Maye 1.2.2 中文.zip
04-24
软件没有繁杂的功能,操作中也不会产生任何垃圾文件,绿色无污染,只专注于文件的快速启动,是用户提升 Windows 操作体验的好帮手。 开源免费快速启动工具 Maya 中文版 开源免费快速启动工具 Maye 中文版 Maye ...
Maya 快速启动工具 v1.0.8免费版
12-11
支持多文件拖拽添加启动、快捷键呼出、自动多列显示、lnk文件解析等等功能,软件没有繁杂的功能,操作中也不会产生任何垃圾文件,绿色无污染,只专注于文件的快速启动,是用户提升Windows操作体验的好帮手。...
桌面应用快速启动工具Maye v1.3.4.rar
04-25
不要看体积小巧,它的功能还是非常多样化的,比如:多文件拖拽添加启动、快捷键呼出、自动多列显示、lnk文件解析等等。软件没有繁杂的功能,操作中也不会产生任何垃圾文件,绿色无污染,只专注于文件的快速启动,是...
编译别人的GHO
03-12
软件的删除方法很简单就是在打开的GHO文件的文件树中找到Document and Settings-Administrator--桌面,将里边的QQ和迅雷的连接文件删除,再到all users--桌面里的bitcomet.lnk,maxthon.lnk删除,再到all users--开始...
开源免费快速启动工具 Maye 1.2.2 中文免费版.zip
05-23
软件没有繁杂的功能,操作中也不会产生任何垃圾文件,绿色无污染,只专注于文件的快速启动,是用户提升 Windows 操作体验的好帮手。 开源免费快速启动工具 Maya 中文版开源免费快速启动工具 Maye 中文版 Maye 功能 ...
快速启动工具Maye v1.3.2一款体积小巧、简单易用的软件快捷图标分类工具.exe
04-25
不要看体积小巧,它的功能还是非常多样化的,比如:多文件拖拽添加启动、快捷键呼出、自动多列显示、lnk文件解析等等。软件没有繁杂的功能,操作中也不会产生任何垃圾文件,绿色无污染,只专注于文件的快速启动,是...
Serv-U FTP Server v7.0.0.2
08-03
+ 更改了 Windows 链接支持,从而当遇到 Windows .LNK 文件时,对于 SIZE 命令和传输操作,将其作为列表显示时所引用的文件处理。 + 删除了 -L LIST 和 NLST 选项,因为它们会与其他设置冲突。 + 在辅助线程执行所有...
在python中读取.lnk文件的目标
05-26
在Python中读取.lnk文件的目标可以使用pylnk库,该库可以解析Windows快捷方式文件(.lnk)并提取目标路径、命令行参数、工作目录等信息。
首先需要安装pylnk库,可以使用以下命令在命令行中安装:
```
pip install pylnk
```
安装完成后,可以使用以下代码示例读取.lnk文件的目标:
```python
from pylnk import ShellLink
# 读取.lnk文件
link = ShellLink('path/to/shortcut.lnk')
# 获取目标路径
target_path = link.target_path
print(target_path)
```
上述代码将读取指定.lnk文件的目标路径,并打印输出。你可以替换`'path/to/shortcut.lnk'`为你想要读取的.lnk文件的路径。
“相关推荐”对你有帮助么?
非常没帮助
没帮助
一般
有帮助
非常有帮助
提交
小青龍
博客等级
码龄12年
84
原创
648
点赞
2488
收藏
92
粉丝
关注
私信
热门文章
【Github】作为程序员不得不知道的几款Github加速神器
121965
Windows 下 Redis 安装与配置 教程
111664
推荐几个Windows iso镜像下载的网站
106174
MinGW-W64 下载、安装与配置(支持最新版的GCC,目前 GCC 13.2.0)
95120
Xshell7/Xftp7 解决强制更新问题:要继续使用此程序,您必须应用最新的更新或使用最新版本
67762
分类专栏
MySQL
6篇
Windows
24篇
Batch
11篇
Docker
9篇
MSYS2
3篇
Cygwin
3篇
Redis
2篇
Linux
9篇
杂项
17篇
C/C++
1篇
MinGW-w64
1篇
YAML
1篇
NodeJs
8篇
Postman
1篇
JsonPath
1篇
PHP
1篇
JMeter
LoadRunner
1篇
HTTP
1篇
Python
16篇
最新评论
Windows 下 Redis 安装与配置 教程
@幼儿园大哥:
reg start Redis
这是什么命令呀
使用`systemctl`命令报错:System has not been booted with systemd as init system (PID 1). Can‘t operate.
「鑫」~ITS:
可以有效,我的是debain
【Github】作为程序员不得不知道的几款Github加速神器
小小孙十八:
Watt Toolkit测试好用
使用`systemctl`命令报错:System has not been booted with systemd as init system (PID 1). Can‘t operate.
瓜牛会飞:
CentOS8-stream不管用
Windows 下 Redis 安装与配置 教程
m0_64172803:
7.0.11版本的redis没有redis.windows-service.conf,怎么设置自启动
您愿意向朋友推荐“博客详情页”吗?
强烈不推荐
不推荐
一般般
推荐
强烈推荐
提交
最新文章
解决 SQLyog 连接 MySQL8.0+ 报错:错误号码2058
SQLyog 各版本下载与安装(目前最新版本为13.2.0)
解决`SQLyog Trial`试用到期的问题(提供一个脚本解决方案)
2023年79篇
2021年2篇
2020年1篇
2019年2篇
2017年1篇
目录
目录
分类专栏
MySQL
6篇
Windows
24篇
Batch
11篇
Docker
9篇
MSYS2
3篇
Cygwin
3篇
Redis
2篇
Linux
9篇
杂项
17篇
C/C++
1篇
MinGW-w64
1篇
YAML
1篇
NodeJs
8篇
Postman
1篇
JsonPath
1篇
PHP
1篇
JMeter
LoadRunner
1篇
HTTP
1篇
Python
16篇
目录
评论 1
被折叠的 条评论
为什么被折叠?
到【灌水乐园】发言
查看更多评论
添加红包
祝福语
请填写红包祝福语或标题
红包数量
个
红包个数最小为10个
红包总金额
元
红包金额最低5元
余额支付
当前余额3.43元
前往充值 >
需支付:10.00元
取消
确定
下一步
知道了
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝
规则
hope_wisdom 发出的红包
打赏作者
小青龍
你的鼓励将是我创作的最大动力
¥1
¥2
¥4
¥6
¥10
¥20
扫码支付:¥1
获取中
扫码支付
您的余额不足,请更换扫码支付或充值
打赏作者
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额
0
抵扣说明:
1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。 2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。
余额充值
桌面图标变成.lnk格式文件如何恢复 - 知乎
桌面图标变成.lnk格式文件如何恢复 - 知乎切换模式写文章登录/注册桌面图标变成.lnk格式文件如何恢复迷你兔数据安全中心“.lnk”是什么格式的文件?你也许会很陌生,实际上,它就在我们的桌面上,是Windows系统默认的快捷方式的扩展名,如果“文件夹选项”下设置为“隐藏已知文件类型的扩展名”,正常情况下“.lnk”是不显示的。所以快捷方式的扩展名显现出来,就证明WINDOWS设置被中断,快捷方式为不可识别信息。那么该怎么恢复会原样呢,其实很简单,有两种方法,选择自己适合的就可以轻松恢复了,下面就让小编来演示怎么操作吧。更改注册表第一步:通过功能键“win+R ”打开运行程序,输入“regedit” 然后回车,打开注册表。第二步:在搜索栏中复制粘贴以下路径:“HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.lnk”后回车,并且在“.lnk”文件夹中,只保留“OpenWithList”项和“OpenWithProgids”项。在“OpenWithList”项之下,只保留“默认”键值,其他全部删除。第三步:在“OpenWithProgids”项之下,只保留“默认”键值和“lnkfile”键值,其他全删。做到以上操作以后保存并退出,就可以了。新建文档如果你不会更改注册表,可以尝试下面这个方法。第一步:首先我们在桌面新建一个文本文档,命名为“1.inf”。第二步:然后我们双击点击打开该文本文档,在里面复制粘贴以下代码:“[Version]Signature="$Chicago$"[DefaultInstall]DelReg=DeleteMe[DeleteMe]HKCU,"Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.exe"HKCU,"Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.lnk”,之后保存。第三步:然后我们返回桌面鼠标右键单击该文本文档选择“安装”,之后桌面的图标就恢复了。还有一种情况,如果桌面上所有文件都变成了.lnk格式的文件,则要考虑是否是因为中毒,需要通过杀毒软件进行查杀。若在查杀的过程中不慎丢失桌面文件,可通过迷你兔数据恢复找回数据。第一步:在官网上下载并安装软件,打开,选择“开始恢复”。 第二步:点击“桌面”。 第三步:等待扫描结束后,勾选文件,点击“恢复数据”,将恢复的文件保存在新硬盘上。 发布于 2022-02-07 10:44恢复文件恢复恢复文件赞同 61 条评论分享喜欢收藏申请
ink文件是什么文件?与lnk文件只差一个字母,却有天壤之别! - 知乎
ink文件是什么文件?与lnk文件只差一个字母,却有天壤之别! - 知乎首发于笔点酷玩切换模式写文章登录/注册ink文件是什么文件?与lnk文件只差一个字母,却有天壤之别!笔点酷玩搞机十五年,玩测看笔点ink文件是什么文件?与lnk文件只差一个字母,却有天壤之别!看到网上错误的解答说,电脑文件扩展名为“.ink”的文件代表着一种“快捷方式”,这样说的人实际上是将“.ink”与“.lnk”后缀的文件(快捷方式,即用于指向其他文件的一种文件)混为一谈——ink的第一个字母是i,i大写时与L的小写很相似,都是一个竖直笔画,因而容易造成混淆。再加上部分网友人云亦云、以讹传讹,造成了“ink文件是快捷方式”的误导。不信你在网上搜索,大部分回答都把.ink(大写形式为.INK)当成了.lnk,回答者都没有注意第一个字母是i。正确的答案是,.ink文件与4种文件类型相关联,通常以Mimio Ink Data File文件格式存在(注意其中的Ink的I也是大写的字母i,而不是L的小写字母),可以用Mimio开发的MimioStudio查看。 在大多数情况下,这些文件被视为数据文档(Data Files), 但它们也可以是矢量图像文件(Vector Image Files)或光栅图像文件Raster Image Files。.ink文件可以在Windows系统、Mac系统和Linux操作系统下查看,比如使用知名矢量绘图软件CorelDRAW X3的时候会接触到.ink文件,此时.ink文件可以被CorelDRAW软件打开,它被归类为矢量图像文件,与常见的.bmp、.jpeg文件一样比较类似,都属于位图文件。CorelDRAW X3软件界面如下:如果你可以接触到国际通用的标准色卡潘通色卡(PANTONE),也可以在部分色卡中发现ink的存在,此时INK对应的就是英文的本意:“墨水”。我是笔点酷玩,这篇科普就写到这里,希望能够解决你的疑惑!扩展阅读【耳机控】 如何选择适合自己的耳机? | 有线耳机真的过时了吗? | 3.5mm耳机孔落伍了吗?| 耳机进水了如何解决?还能用吗?|【手机党】为什么有人觉得骁龙 888 不如骁龙 870? | 如何评价华为Mate X2折叠屏? |iPhone 12手机壳怎么选? | iPhone11和12选哪个更值得? | 三星 S21跌破3899值得入手吗? |小米10s值得买吗? | 如何评价红米K40? | iPhone XR凭什么能卷土重来? | 为什么苹果不改USB-C口?| 最好的智能老人机是哪个牌子? | 小米12Pro值得买吗 | Redmi K50 Pro、K50、K40s、K50电竞版最详细对比 | 预算5000元,2022年哪一款旗舰手机值得入手? | 手机存储内存不足,如何选购TF卡扩容? |【便携派】迷你笔记本值得买吗? | iPad2020值得买吗? | 华为MatePad10.4值得买吗? | 大二学生买iPad Pro合理吗? | 2021年适合大学生使用的笔记本电脑推荐 | 2022年学生用平板电脑选购指南 | 桌面移动硬盘选西数还是希捷? | 充电宝哪个品牌的更实用更安全? | 65W快充能用100W充电器吗? |【装机经】 2021年双12,显卡会继续降价吗? | 如何看待RTX 3060被破解? | 台式机会被淘汰吗? | 怎么看待显卡里的等等党? | 2021哪些国产SSD值得买? | 2021显卡疯涨何时能降? | 2021 年 6 月显卡价格趋势 | RX6600XT值得买吗? | 5900x+3080ti的功耗,850w电源够用么?| 5900x的散热器如何选择? | 国产固态硬盘靠谱吗? | M2固态硬盘插在主板上哪个接口合适? | 2021哪些游戏鼠标值得买? | 机械键盘61键的方便吗? | 显卡价格2022年能否回归正常?| 有哪些值得买的4K专业显示器? | 2021有什么神级CPU三年不用换? | 2022年SSD固态硬盘选购指南:PCIe3.0还是PCIe4.0? | 2022有哪些值得推荐的性价比鼠标?|【工具咖】有必要把Win10升级到Win11吗? | 如何评价不限速的阿里云盘? | 苹果知道我在“黑苹果”吗? | 为什么我的NAS这么难用? | 家用硬盘柜怎么选? | 有必要为Mac配置UPS应急电源吗? | 如何评价百度网盘青春版? | 如何用最快的方式实现SSD整盘克隆? | 如何彻底关闭Flash弹窗广告 | 6步安全去除WinRAR广告 |【家电控】手持吸尘器哪个牌子比较好? | 厨师机、揉面机、面包机有何差别?如何选择? | 无叶电风扇优缺点有哪些? | 哪些工具或物品堪称宿舍/出租屋神器? | 烤箱和空气炸锅哪个更实用? |小米的电饭煲好用吗? | 2022年手持便携风扇/迷你风扇/桌面风扇推荐 | 扫地机器人和吸尘器哪个好? | 家装改造新手,电钻冲击钻电锤怎么选? | 老房改造,如何选择智能灯具or替换传统墙壁开关? |【早教范】边拼积木边玩编程,Jimu机器人星际探险系列 | 儿童编程和机器人编程有啥区别? |【游戏迷】原神V2.1钓鱼攻略:27钓鱼点全攻略 | 原神1.5尘歌壶攻略:如何高效堆仙力? | 原神1.5伐木攻略:11CD急速伐木法 | 你玩原神时做过哪些傻事? | 原神邀约事件全成就+奖励攻略 |如何看待《原神》玩家被喊“原批”? |【热点说】如何看待周杰伦霸榜Top100? | 永生者如何避免身份暴露? | 大学贫困生有一万块奖金,可以买iPad吗? | 大学生预算10000元入手5件日常学习必备数码产品的终极攻略 | 哪些设备和工具可以大幅提升办公效率? | 有哪些值得推荐的人体工学椅? | 中国手机出货量已连续4年下跌,为什么年轻人不爱换手机了? |关注笔点酷玩,玩数码不迷路!编辑于 2022-06-23 10:14文件格式图像文件格式系统文件赞同 4添加评论分享喜欢收藏申请转载文章被以下专栏收录笔点酷玩一手好物评测,科技奇趣前沿,尽在笔
Windows上lnk文件是如何工作的? - 知乎
Windows上lnk文件是如何工作的? - 知乎首页知乎知学堂发现等你来答切换模式登录/注册Microsoft Windows编程Windows 资源管理器Windows 10Windows上lnk文件是如何工作的?快捷方式他是如何工作的,我该怎么打开lnk文件本身?感谢各位知乎网友的热请回复。关注者15被浏览12,712关注问题写回答邀请回答好问题 1添加评论分享3 个回答默认排序蒋晟程序员 关注文件本身不能自己工作。具体的打开的处理是在文件类型关联的程序里面。对于lnk这个扩展名,关联的处理程序是资源管理器。打开的时候会根据里面保存的路径或者PIDL来解析,如果解析成功,那么打开目标,如果解析不成功,首先会调用Distributed Link Tracking and Object Identifiers来查找目标的可能移动的位置(如果是在NTFS 5.0文件系统之间移动的话),找不到的话,其次会根据lnk文件里面保存的文件特征去查找目标的所在目录。还是找不到的话就开始在桌面上和文件系统里到处翻了(IShellLink::Resolve method)。应用程序可以创建一个CLSID_ShellLink对象,用其IShellLink接口来设置属性,然后用IPersistStream或者IPersistFile来保存。要打开一个lnk文件的话,需要创建一个CLSID_ShellLink对象,然后用其IPersistFile接口加载文件数据,然后用其IShellLink接口来读取数据。编辑于 2017-04-01 11:49赞同 173 条评论分享收藏喜欢收起yang leonierSiyah çerçeveli gözlük. 关注.lnk是OLE和Windows Shell规定的一种数据结构的文件形式,在Windows Shell中会作为特殊文件来处理。绕过shell32系的API,直接用CreateFile之类的API或者标准C/C++文件接口打开。编辑于 2017-03-29 23:50赞同 3添加评论分享收藏喜欢收起
文件后缀名被修改成lnk,怎么还原它? - 知乎
文件后缀名被修改成lnk,怎么还原它? - 知乎首页知乎知学堂发现等你来答切换模式登录/注册恢复文件文件修复文件后缀名被修改成lnk,怎么还原它?有一个文件"A.txt",修改它的后缀名后变成了"A.lnk",现在我想打开这个文件,或者把它后缀名改或还原成txt文件,该如何实现? [图片] 跪求…显示全部 关注者3被浏览12,434关注问题写回答邀请回答好问题添加评论分享2 个回答默认排序胡敏航 关注这个是快捷方式扩展名,就算文件夹选项设置显示后缀也不行。当然这是小问题可以利用压缩软件,打开后定位到文件相应位置,你就会看到lnk后缀了发布于 2018-06-18 12:00赞同 41 条评论分享收藏喜欢收起知乎用户打开文件资源管理器,上面有“查看”,点击“查看”勾选“显示文件扩展名”,之后就可以改扩展名了。发布于 2018-06-16 23:14赞同2 条评论分享收藏喜欢收起
lnk_百度百科
lnk_百度百科
Beta
進入詞條
清除歷史記錄關閉
反饋
分享
複製鏈接
請複製以下鏈接發送給好友
https://baike.baidu.hk/item/lnk/854751
複製
複製成功
lnk
鎖定
lnk文件是用於指向其他文件的一種文件。 這些文件通常稱為快捷方式文件,通常它以快捷方式放在硬盤上,以方便使用者快速的調用。
中文名
lnk
指 向
其他文件的一種文件
稱 為
快捷方式文件
安 裝
Windows補丁程序
目錄
1
基本信息
▪
Windows
▪
修復方法
2
漏洞
▪
病毒
▪
處理方法
lnk基本信息
lnkWindows
windows的很多lnk文件(也就是快捷方式)都是帶有參數的。/play—在打開連接後自動運行媒體文件"%1" —打開連接後自動出現文件選取框選擇文件/Play "%L" —打開winamp後自動出現List選擇框選擇文件播放列表“.lnk”是WINDOWS系統默認的快捷方式的擴展名,如果“文件夾選項”下設置為“隱藏已知文件類型的擴展名”,正常情況下“.lnk”是不顯示的。你的快捷方式的擴展名顯現出來,證明WINDOWS設置被中斷,快捷方式為不可識別信息。
lnk修復方法
(1)點擊“開始”→“運行”,鍵入“cmd”,進入命令提示符狀態,用鍵盤敲入assoc.lnk=lnkfile(中間無空格),按回車即可。
lnk
操作失誤:如果修改快捷方式之後,反而是成了這個模樣,那一定是命令有誤,或者沒有注意最後不能有空格的提示,只要重新輸入正確的修復快捷方式的命令即可。這時不要懷疑命令的正確性,只是多了一個空格而已。繼續在命令提示符窗口中按一下F3鍵(這樣會自動去除多餘的空格),回車執行命令就好了。
[1]
(2)點擊“開始”→“運行”,鍵入“regedit”,進入註冊表,搜索“HKEY_LOCAL_MACHINE\SOFTWARE\CLASSES\”下的“.lnk”鍵,修改其值為“lnkfile”,保存即可。兩種辦法本質一樣,如果你不懂註冊表建議採用第一種方法______________________________________WIN7系統電腦除了計算機,網絡,回收站以外的圖標都變成後綴為lnk的文件了,也就是打開快捷方式 的時候用別的程序打開後所有快捷方式都變化的情況。步驟1:Windows vista\Windows 7 操作系統修復方法.......1、首先 win開始鍵+r 2、打開運行程序 3、輸入: regedit 4、找到: 計算機\HKEY_CURRENT_USER\SOFTWARE\MICROSOFT\WINDOWS\currentversion\Explorer\FileExts\.lnk會發現有openwithlist 和 openwithprogids 兩項,如果有其他的選項將其刪除5、再將openwithlist 內的除默認以外的所有鍵值都刪除6、將openwithprogids內的除默認和lnkfile以外的所有鍵值都刪除.7、保存退出即可。如何通過lnk文件獲取該文件的執行路徑和程序function LinkFileInfo(const lnkFileName:string;var info:LINK_FILE_INFO;const bSet:boolean):boolean;varhr:hresult;psl:IShelllink;wfd:win32_find_data;ppf:IPersistFile;lpw:pwidechar;buf:pwidechar;beginresult:=false;getmem(buf,MAX_PATH);tryif SUCCEEDED(CoInitialize(nil)) thenif (succeeded(cocreateinstance(clsid_shelllink,nil,clsctx_inproc_server,IID_IShellLinkA,psl))) thenbeginhr:=psl.QueryInterface(iPersistFile,ppf);if succeeded(hr) thenbeginlpw:=stringtowidechar(lnkfilename,buf,MAX_PATH);hr := ppf.Load(lpw, STGM_READ);if succeeded(hr) thenbeginhr := psl.Resolve(0, SLR_NO_UI);if succeeded(hr) thenbeginif bSet thenbeginpsl.SetArguments(info.Arguments);psl.SetDescription(info.Description);psl.SetHotkey(info.HotKey);psl.SetIconLocation(info.IconLocation,info.IconIndex);psl.SetIDList(info.ItemIDList);psl.SetPath(info.FileName);psl.SetShowCmd(info.ShowState);psl.SetRelativePath(info.RelativePath,0);psl.SetWorkingDirectory(info.WorkDirectory);if succeeded(psl.Resolve(0,SLR_UPDATE)) thenresult:=true;endelsebeginpsl.GetPath(info.FileName,MAX_PATH, wfd,SLGP_SHORTPATH );psl.GetIconLocation(info.IconLocation,MAX_PATH,info.IconIndex);psl.GetWorkingDirectory(info.WorkDirectory,MAX_PATH);psl.GetDescription(info.Description,CCH_MAXNAME);psl.GetArguments(info.Arguments,MAX_PATH);psl.GetHotkey(info.HotKey);psl.GetIDList(info.ItemIDList);psl.GetShowCmd(info.ShowState);result:=true;end;end;end;end;end;finallyfreemem(buf);end;end;//*******************調用*****************showmessage(\'FileName:\'+info.filename+#13+\'Description:\'+info.Description+#13+\'IconFilename:\'+info.IconLocation+\',\'+inttostr(info.IconIndex)+#13+\'WordDir:\'+info.WorkDirectory+#13+\'Arguments:\'+info.Arguments+#13+\'ShorCuts:\'+shortcuttotext(s));info.WorkDirectory:=\'D:\\Borland\\Delphi5\\projects\';linkfileinfo(opendialog1.filename,info,true);end;end;==============================================function GetLinkFileName(sLinkFileName: string; var sTargetFileName: string): boolean;varpsl: IShellLink;ppf: IPersistFile;hres, nLen: integer;pfd: TWin32FindData;pTargetFile: PChar;pwLinkFileName: PWideChar;beginResult := false;if SUCCEEDED(CoInitialize(nil)) thenbeginCoCreateInstance(CLSID_ShellLink, nil, CLSCTX_INPROC_SERVER, IID_IShellLinkA, psl);if (SUCCEEDED(hres)) thenbeginhres := psl.QueryInterface(IID_IPersistFile, ppf);if (SUCCEEDED(hres)) thenbeginnLen := MultiByteToWideChar(CP_ACP, 0, PChar(sLinkFileName), -1, pwLinkFileName, 0);GetMem(pwLinkFileName, nLen);ZeroMemory(pwLinkFileName, nLen);MultiByteToWideChar(CP_ACP, 0, PChar(sLinkFileName), -1, pwLinkFileName, nLen);ppf.Load(pwLinkFileName, STGM_READ);GetMem(pTargetFile, MAX_PATH);ZeroMemory(pTargetFile, MAX_PATH);hres := psl.GetPath(pTargetFile, MAX_PATH, pfd, SLGP_UNCPRIORITY );if (SUCCEEDED(hres)) thenbeginsTargetFileName := StrPas(pTargetFile);Result := true;end;FreeMem(pTargetFile);FreeMem(pwLinkFileName);end;end;end;end;
lnk漏洞
2010年7月16日,Windows快捷方式自動執行0day漏洞[CVE-2010-2568](微軟安全知識庫編 號2286198)被披露,很快網上已經可以找到利用這個漏洞攻擊的樣本。利用Windows快捷方式自動執行0day漏洞可以做到:看一眼惡意軟件就中 毒,而根本不需要去執行它。金山毒霸安全實驗室預計在未來一段時間,這個漏洞將會被廣泛使用,網民須高度重視。攻擊者利用Windows快捷方式自動執行0day漏洞,可以製作一個特殊的lnk文件(LNK是快捷方式文件的擴展名),當Windows解析這個 LNK文件時,會自動執行指定的惡意程序。這個漏洞最佳利用通道是U盤、移動硬盤、數碼存儲卡,也可以是本地磁盤或網絡共享文件夾,當U盤或網絡共享文件 夾存在這樣的攻擊程序時,只需要使用資源管理器,或與資源管理器類似的應用程序查看這個文件夾,不需要手動運行病毒程序,病毒自己就會觸發。這個漏洞最令人吃驚的地方在於,“不需要雙擊病毒文件,僅看一眼文件圖標就中毒”。幾年前,曾經有個叫“新歡樂時光 (VBS.KJ)”的病毒廣為流傳,VBS.KJ病毒會在每個文件夾下生成desktop.ini和folder.htt文件(這兩個文件控制了文件夾在 資源管理器中的顯示)。只要打開被病毒修改過的含有desktop.ini和folder.htt的文件夾,不需要雙擊病毒,看一眼就中毒。現在和新歡樂 時光傳播類似的病毒將要出現了,儘管我們還沒有看到很多病毒作者利用Windows快捷方式漏洞傳播,但相信這種病毒攻擊一定會有。Windows快捷方式自動執行0day漏洞存在所有流行的Windows版本,包括尚未公開發布的Windows 7 SP1 beta和Windows 2008 R2 SP1 beta。意味着,這個風險幾乎遍佈所有安裝了Windows的電腦。防止這個漏洞被利用,微軟方面提供了幾個暫時緩解的方案:1.關閉快捷方式圖標的顯示,不過這會讓Windows界面變得奇醜,因為一個個漂亮的桌面圖標和開始菜單圖標全都不顯示了。2.建議企業用户關閉WebClient服務,個人用户(一般不使用網絡共享資源)可以不必考慮這個問題。3.關閉U盤自動播放可以避免插上U盤的動作就中毒,只有手動查看文件夾才有風險。4.以受限用户權限運行計算機可以降低風險對於喜歡使用各種Windows美化版的用户來説,可能麻煩更大一些,這些美化版大都修改了shell32.dll,針對這個Windows 快捷方式自動執行0day漏洞的修補程序,可能去修補shell32.dll,可能會讓這些美化版出現一些問題。倘若這些真的發生了,那些使用美化版的盜 版Windows用户也許會拒絕這個重要的安全補丁,從而加劇利用此漏洞的病毒傳播。這是一個需要安全廠商和所有消費者高度關注的安全漏洞,希望微軟能在下一個例行補丁日到來之前提供應急補丁。金山毒霸安全實驗室提供以下臨時的緊急解決方案:1.根本上解決,必須安裝Windows補丁程序。待微軟官方更新之後,用户須立即使用金山衞士或Windows Update安裝補丁。2.臨時解決辦法:安裝金山網盾,升級後,獲得對lnk漏洞(快捷方式漏洞)的免疫能力。3.安裝金山毒霸2011安全套裝,檢查U盤存儲的文件,及時清理U盤中的病毒。4.網管宜加強局域網共享權限的管理,關閉不受控的完全共享,避免病毒文件在局域網共享文件夾中傳播。
lnk病毒
lnk病毒(1張)
一打開程序,如ttplayer.exe,就會在程序目錄下及任務管理器中生成ttplayer.exe.lnkttplayer.exe.lnk.lnkttplayer.exe.lnk.lnk.lnkttplayer.exe.lnk.lnk.lnk.lnkttplayer.exe.lnk.lnk.lnk.lnk.lnk……重裝系統也沒用。
lnk處理方法
這個是最新的lnk病毒,不同於之前的lnk快捷方式病毒。這個病毒有感染次數限制,忘了是18次還是14次了。第一次發現就不要操作了,否則很變態一個病毒。等着殺毒軟件更新入庫吧。臨時處理方法:講最後的那個(也就是最長的那個)lnk,複製後保存。(很重要)然後在任務管理器中將其他的(不包括最長那個)的那些lnk都終止進程。然後將最後那個lnk改名,一定要改名。然後使用金山網盾(百度搜索“金山網盾”。第一個鏈接就是)用裏面的一鍵修復功能處理之後重啓。
參考資料
1.
快捷方式擴展名
.百度百科[引用日期2014-11-30]
圖集
lnk的概述圖(1張)
詞條統計
瀏覽次數:次
編輯次數:40次歷史版本
最近更新:
一碗加糖饭
(2023-12-24)
1
基本信息
1.1
Windows
1.2
修復方法
2
漏洞
2.1
病毒
2.2
處理方法
百科協議 隱私協議 意見反饋
Beta
進入詞條
清除歷史記錄關閉
反饋
登錄
Windows下快捷方式 (*.lnk) 的使用技巧整理 - SHARP-EYE - 博客园
Windows下快捷方式 (*.lnk) 的使用技巧整理 - SHARP-EYE - 博客园
会员
周边
新闻
博问
AI培训
云市场
所有博客
当前博客
我的博客
我的园子
账号设置
简洁模式 ...
退出登录
注册
登录
SHARP-EYE
If you show someone their future,they have no future. if you take away the mystery,you take away hope.
博客园
首页
新随笔
联系
订阅
管理
Windows下快捷方式 (*.lnk) 的使用技巧整理
日常应用中,许多软件都会在安装过程最后一步添加多个命令,针对其应用创建快捷方式发送到桌面以及快速启动栏和开始菜单,供人们快速找到并打开。在我的使用习惯中也会将诸多常用的应用右键-发送到-桌面快捷方式来实现快速启动。但是偶然一次的使用中,应用和其对应的快捷方式都移植到了另一台机子上,发现打开快捷方式会有问题。这就引起了我的注意。对地址、路径敏感一点的同行都能想到肯定是传统的快捷方式使用了绝对的地址,而想要移植,那么相对路径是一个好对策。
就像这样对一个.exe右键创建快捷方式:
我们右键属性,可以看到用到的是绝对路径。倘若移植到了不同环境,那么该快捷方式就不能正常运行。如何来修改呢?
正文
如果想要直接在该文件属性上修改是不好实现的,反正我没成功。我们尝试采用正常的流程创建快捷方式--- 右键资源管理器中得文件夹区域-新建-快捷方式,会弹出下方对话框:
如果选择“浏览”,可以选择文件或文件夹,但还是绝对地址。在此要手动输入。
使用Explorer方式
键入
%SystemRoot%\explorer.exe
然后后面加上打开的文件或文件名,使用相对路径,如:
%SystemRoot%\explorer.exe abc
意思是打开该目录下的名为‘abc’的文件夹。%SystemRoot%是系统环境变量,详情请见计算机-高级系统设置-环境变量。注意创建完快捷方式要右键-属性把[起始位置]删除,如下:
这样就可以实现相对路径下打开文件夹,如果想打开文件,如下键入:
%SystemRoot%\explorer.exe .\main\_conf\config.ini
%SystemRoot%\explorer.exe .\HxD.exe
甚至还可以打开根目录下的上级目录中的一个文件夹,如:
%SystemRoot%/explorer.exe ..\steam
此命令代表打开当前目录的上级目录中名为‘steam’的文件夹。
这样的调用方式,就不怕移植、换环境了。
使用cmd.exe方式
同样的道理,创建快捷方式,键入:
%windir%\system32\cmd.exe /c
然后后面加标准的dos批处理命令,如运行一个应用[注意这里的 /c一定得加,不然dos界面会跳出等待用户输入,这不是我们要的,让它开一个dos命令后立即关闭dos界面]:
%windir%\system32\cmd.exe /c .\HxD.exe
还是要看一下属性中的[起始位置],把它清空。当然这里可以使用start启动应用,如:
%windir%\system32\cmd.exe /c start .\HxD.exe
如果要打开文件夹:
%windir%\system32\cmd.exe /c start .\abc
当然,你还可以以正常的批处理代码键入,如:
%windir%\system32\cmd.exe /c echo hello world>.\hello.txt
还可以多指令执行,如:
%windir%\system32\cmd.exe /c echo hello world>.\hello11.txt & start .\hello11.txt
这样也可以极大满足环境变化。
总结
【注意】所有键入的斜杠、反斜杠都是敏感的,不能随意更改,否则无效!!
这两方式殊途同归,给不同环境下快捷方式正常运行做好基础。有了此解决方案后,开发后期也能得到应用,做一些快捷通道,包括执行语句、调用文件等操作、逻辑判断、文件读写、数据通讯等功能,个人认为挺酷的 我们下回再见!~
参考文献:
[1] https://www.cnblogs.com/vibratea/archive/2010/09/16/1827761.html DOS中Start命令详解
[2] https://www.zhihu.com/question/20061568 Windows 中如何创建一个指向某相对路径的快捷方式 。。。
[3] https://blog.csdn.net/ju_pan/article/details/79454394 创建使用相对路径的快捷方式
posted @
2021-07-07 17:28
SHARP-EYE
阅读(3363)
评论(0)
编辑
收藏
举报
会员力量,点亮园子希望
刷新页面返回顶部
公告
Copyright © 2024 SHARP-EYE
Powered by .NET 8.0 on Kubernetes