Windows 7系统右键快捷问题

11-21

我们在win 7右键无法新建快捷方式的问题,问题描述如题,下面记录下解决办法,查看跟.lnk相关的注册表信息,保存以下代码到a.bat运行。

问题描述如题,下面记录下解决办法:

第一、查看跟.lnk相关的注册表信息,保存以下代码到a.bat运行:

C#代码

Reg Query HKCR.lnk /S >"%Userprofile%DesktopRegQuery.txt"&Start Notepad "%Userprofile%DesktopRegQuery.txt"

这段代码会查找注册表里有关.lnk(快捷方式)的设置,并且把查找结果保存到桌面的RegQuery.txt文件里,然后打开这个文件。

第二、查看搜索到的信息,我的信息如下:

RegQuery.txt

HKEY_CLASSES_ROOT.lnk

(Default) REG_SZ lnkfile

HKEY_CLASSES_ROOT.lnkShellEx

HKEY_CLASSES_ROOT.lnkShellEx

(Default) REG_SZ

HKEY_CLASSES_ROOT.lnkShellEx

(Default) REG_SZ

HKEY_CLASSES_ROOT.lnkShellEx

(Default) REG_SZ

HKEY_CLASSES_ROOT.lnkShellEx

(Default) REG_SZ

HKEY_CLASSES_ROOT.lnkShellNew

Handler REG_SZ

IconPath REG_EXPAND_SZ %SystemRoot%system32shell32.dll,-16769

ItemName REG_SZ @shell32.dll,-30397

MenuText REG_SZ @shell32.dll,-30318

NullFile REG_SZ

Command REG_SZ rundll32.exe appwiz.cpl,NewLinkHere %1 ------->加粗~~

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

HKEY_CLASSES_ROOT.lnkShellNewConfig

DontRename REG_SZ

加粗的一行即为问题所在,ShellNew的Command如果以上的情况,那么就需要修改了。(上面的注册表情况是适用于XP……)

第三、修复问题(只需要删除掉Command这一行就好),保存以下代码到b.bat,运行:

C#代码

reg delete HKCR.lnkShellNew /V Command /F

这行代码会删除掉ShellNew里的Command这行,完成之后再右键->新建->快捷方式。我已经能顺利新建快捷方式了。

第四、修复问题后的lnk相关注册表信息如下:

RegQuery.txt 写道

HKEY_CLASSES_ROOT.lnk

(默认) REG_SZ lnkfile

HKEY_CLASSES_ROOT.lnkShellEx

HKEY_CLASSES_ROOT.lnkShellEx

(默认) REG_SZ

HKEY_CLASSES_ROOT.lnkShellEx

(默认) REG_SZ

HKEY_CLASSES_ROOT.lnkShellEx

(默认) REG_SZ

HKEY_CLASSES_ROOT.lnkShellEx

(默认) REG_SZ

HKEY_CLASSES_ROOT.lnkShellNew

Handler REG_SZ

IconPath REG_EXPAND_SZ %SystemRoot%system32shell32.dll,-16769

ItemName REG_SZ @shell32.dll,-30397

MenuText REG_SZ @shell32.dll,-30318

NullFile REG_SZ

HKEY_CLASSES_ROOT.lnkShellNewConfig

DontRename REG_SZ

----EOF----

通过以上的例子,就可以解决问题啦!