词条 | lnk |
释义 | 概述lnk文件是用于指向其他文件的一种文件。 这些文件通常称为快捷方式文件.通常它以快捷方式放在硬盘上.以方便使用者快速的调用 其扩展名为.lnk 相关信息Windows的.lnk文件windows的很多lnk文件(也就是快捷方式)都是带有参数的,但是自己并不真正了解,不知道有谁知道?自己通过实践摸索出一些,希望能给大家带来帮助: /play—在打开连接后自动运行媒体文件 "%1" —打开连接后自动出现文件选取框选择文件 /Play "%L" —打开winamp后自动出现List选择框选择文件播放列表 “.lnk”是WINDOWS系统默认的快捷方式的扩展名,如果“文件夹选项”下设置为“隐藏已知文件类型的扩展名”,正常情况下“.lnk”是不显示的。你的快捷方式的扩展名显现出来,证明WINDOWS设置被中断,快捷方式为不可识别信息。 修复的方法(1)点击“开始”→“运行”,键入“cmd”,进入命令提示符状态,用键盘敲入assoc.lnk=lnkfile(中间无空格),按回车即可。 (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; var hr:hresult; psl:IShelllink; wfd:win32_find_data; ppf:IPersistFile; lpw:pwidechar; buf:pwidechar; begin result:=false; getmem(buf,MAX_PATH); try if SUCCEEDED(CoInitialize(nil)) then if (succeeded(cocreateinstance(clsid_shelllink,nil,clsctx_inproc_server,IID_IShellLinkA,psl))) then begin hr:=psl.QueryInterface(iPersistFile,ppf); if succeeded(hr) then begin lpw:=stringtowidechar(lnkfilename,buf,MAX_PATH); hr := ppf.Load(lpw, STGM_READ); if succeeded(hr) then begin hr := psl.Resolve(0, SLR_NO_UI); if succeeded(hr) then begin if bSet then begin psl.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)) then result:=true; end else begin psl.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; finally freemem(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; var psl: IShellLink; ppf: IPersistFile; hres, nLen: integer; pfd: TWin32FindData; pTargetFile: PChar; pwLinkFileName: PWideChar; begin Result := false; if SUCCEEDED(CoInitialize(nil)) then begin CoCreateInstance(CLSID_ShellLink, nil, CLSCTX_INPROC_SERVER, IID_IShellLinkA, psl); if (SUCCEEDED(hres)) then begin hres := psl.QueryInterface(IID_IPersistFile, ppf); if (SUCCEEDED(hres)) then begin nLen := 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)) then begin sTargetFileName := 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病毒一打开程序,如ttplayer.exe,就会在程序目录下及任务管理器中生成 ttplayer.exe.lnk ttplayer.exe.lnk.lnk ttplayer.exe.lnk.lnk.lnk ttplayer.exe.lnk.lnk.lnk.lnk ttplayer.exe.lnk.lnk.lnk.lnk.lnk …… 重装系统也没用。 中了lnk病毒的处理方法这个是最新的lnk病毒,不同于之前的lnk快捷方式病毒。 这个病毒有感染次数限制,忘了是18次还是14次了。第一次发现就不要操作了,否则很变态一个病毒。等着杀毒软件更新入库吧。 临时处理方法: 讲最后的那个(也就是最长的那个)lnk,复制后保存。(很重要) 然后在任务管理器中将其他的(不包括最长那个)的那些lnk都终止进程。 然后将最后那个lnk改名,一定要改名。 然后使用金山网盾(百度搜索“金山网盾”。第一个链接就是) 用里面的一键修复功能处理之后重启。 |
随便看 |
百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。