我正在从管理命令提示符下运行assoc
我想在关联列表中添加.vbsc的条目。它不会让我,尽管它会让我为.vbsd做一个并且它正在运行assoc。(如果未找到assoc,则表示无法识别)。发生什么了?
我确实有一个程序(用于cscript.exe的包装器),我已将其链接到.vbsc文件,但确实附有该程序,尽管从grep可以看到,由于某种原因,该文件未在assoc中列出,这是一个奇怪的问题,但是我在这里询问的奇怪问题(可能与之相关),为什么assoc .vbsc=
在我的机器上说“系统找不到指定的文件”?
C:\>assoc .vbsc= <--- fails, i'd expect it to work
The system cannot find the file specified.
C:\>assoc .abc= <-- works, no error
C:\>assoc .abcd= <-- works, no error
C:\>assoc .vbsd= <-- works, no error
C:\>
并提醒您在未识别命令时显示的内容。
C:\>hjghjgjhgjh
'hjghjgjhgjh' is not recognized as an internal or external command,
operable program or batch file.
C:\>
和更多信息
C:\>assoc | grep -i vbs
.vbs=VBSFile
C:\>ftype | grep -i vbs
VBSFile=C:\blah\mycscriptwrapper.exe %1
VBS_Cscr=C:\blah\mycscriptwrapper.exe %1
C:\>
补充说明
如果有人用箭头和说明很难理解以上内容,并且不喜欢英语,而只喜欢截图,这里是指向此类截图的链接,它只是上面内容的主要部分。
它变得陌生。
约瑟夫提出了一些我认为可能实质上是突破的建议。这样做reg query hkcr\.vbsc
,并与/秒。与.abc进行比较显示出差异。
更新,我将其合并到jozef的答案中..但这里暂时作为记录。
C:\Users\harvey>reg query hkcr\.vbsc
HKEY_CLASSES_ROOT\.vbsc\OpenWithList
HKEY_CLASSES_ROOT\.vbsc\PersistentHandler
HKEY_CLASSES_ROOT\.vbsc\Shell
C:\Users\harvey>reg query hkcr\.vbsc /s
HKEY_CLASSES_ROOT\.vbsc\OpenWithList
HKEY_CLASSES_ROOT\.vbsc\PersistentHandler
OriginalPersistentHandler REG_SZ {00000000-0000-0000-0000-000000000000
}
HKEY_CLASSES_ROOT\.vbsc\Shell
HKEY_CLASSES_ROOT\.vbsc\Shell\Open
HKEY_CLASSES_ROOT\.vbsc\Shell\Open\Command
(Default) REG_EXPAND_SZ VBS_Cscr
C:\Users\harvey>
使用.abc,甚至
assoc abc = RAZ
(即使设置了ftype,它仍然只适用于.abc)
C:\Users\harvey>reg query hkcr\.abc
HKEY_CLASSES_ROOT\.abc
(Default) REG_SZ RAZ
C:\Users\harvey>
with ftype set you also get this key
ftype RAZ=c:\blah\blah.exe
C:\Users\harvey>reg query hkcr\RAZ /s
HKEY_CLASSES_ROOT\RAZ\Shell
HKEY_CLASSES_ROOT\RAZ\Shell\Open
HKEY_CLASSES_ROOT\RAZ\Shell\Open\Command
(Default) REG_EXPAND_SZ c:\blah\blah.exe
C:\Users\harvey>
C:\Users\harvey>reg delete hkcr\.vbsc
Permanently delete the registry key HKEY_CLASSES_ROOT\.vbsc (Yes/No)? y
The operation completed successfully.
现在它可以正常工作了..不知道其他条目是如何到达的..可能是“默认程序编辑器”的混合并开始了..“更改与特定扩展名关联的文件类型”并制作了一个.vbsc图标并选择了一个程序与开放在一起,并与之相伴。
added note from barlop -- solution was the troubleshooting step of reg query hkcr\.vbsd
and with /s will among other things, include values. This differs from hkcr.abcd and the solution is to delete the key. Let assoc produce the key and what is necessary within that key. ----
After all explanation, I can reproduce the problem:
C:\Windows\system32> assoc .vbsd=
C:\Windows\system32> assoc .vbsd=abc
.vbsd=abc
C:\Windows\system32> assoc .vbsd=
C:\Windows\system32> assoc .vbsd=
C:\Windows\system32> reg add HKCR\.vbsd\AnyKeyName /f
The operation completed successfully.
C:\Windows\system32> assoc .vbsd=
The system cannot find the file specified.
C:\Windows\system32> reg delete HKCR\.vbsd\AnyKeyName /f
The operation completed successfully.
C:\Windows\system32> assoc .vbsd=
C:\Windows\system32> assoc .vbsd=
C:\Windows\system32>
Here are protocols from Process Monitor: successful assoc .vbsd=
"Process Name","Operation","Path","Result","Detail"
"cmd.exe","RegQueryKey","HKLM","SUCCESS","Query: HandleTags, HandleTags: 0x0"
"cmd.exe","RegOpenKey","HKCR","SUCCESS","Desired Access: Maximum Allowed, Granted Access: All Access"
"cmd.exe","RegQueryKey","HKCR","SUCCESS","Query: HandleTags, HandleTags: 0x0"
"cmd.exe","RegOpenKey","HKCR\.vbsd","SUCCESS","Desired Access: Delete"
"cmd.exe","RegDeleteKey","HKCR\.vbsd","SUCCESS",""
"cmd.exe","RegCloseKey","HKCR\.vbsd","SUCCESS",""
"cmd.exe","RegQueryKey","HKLM","SUCCESS","Query: HandleTags, HandleTags: 0x0"
"cmd.exe","RegOpenKey","HKLM\Software\Microsoft\Windows\CurrentVersion\Explorer","SUCCESS","Desired Access: Query Value"
"cmd.exe","RegQueryValue","HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\GlobalAssocChangedCounter","SUCCESS","Type: REG_DWORD, Length: 4, Data: 108"
"cmd.exe","RegCloseKey","HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer","SUCCESS",""
"cmd.exe","RegQueryKey","HKLM","SUCCESS","Query: HandleTags, HandleTags: 0x0"
"cmd.exe","RegCreateKey","HKLM\Software\Microsoft\Windows\CurrentVersion\Explorer","SUCCESS","Desired Access: Set Value, Disposition: REG_OPENED_EXISTING_KEY"
"cmd.exe","RegSetValue","HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\GlobalAssocChangedCounter","SUCCESS","Type: REG_DWORD, Length: 4, Data: 109"
"cmd.exe","RegCloseKey","HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer","SUCCESS",""
"cmd.exe","RegCloseKey","HKCR","SUCCESS",""
And unsuccessful assoc .vbsd=
with unexpected The system cannot find the file specified
message:
"Process Name","Operation","Path","Result","Detail"
"cmd.exe","RegQueryKey","HKLM","SUCCESS","Query: HandleTags, HandleTags: 0x0"
"cmd.exe","RegOpenKey","HKCR","SUCCESS","Desired Access: Maximum Allowed, Granted Access: All Access"
"cmd.exe","RegQueryKey","HKCR","SUCCESS","Query: HandleTags, HandleTags: 0x0"
"cmd.exe","RegOpenKey","HKCR\.vbsd","SUCCESS","Desired Access: Delete"
"cmd.exe","RegDeleteKey","HKCR\.vbsd","CANNOT DELETE",""
"cmd.exe","RegCloseKey","HKCR\.vbsd","SUCCESS",""
"cmd.exe","RegQueryKey","HKCR","SUCCESS","Query: HandleTags, HandleTags: 0x0"
"cmd.exe","RegOpenKey","HKCR\.vbsd","SUCCESS","Desired Access: Maximum Allowed, Granted Access: All Access"
"cmd.exe","RegDeleteValue","HKCR\.vbsd\(Default)","NAME NOT FOUND",""
"cmd.exe","RegCloseKey","HKCR\.vbsd","SUCCESS",""
"cmd.exe","RegCloseKey","HKCR","SUCCESS",""
Unfortunately, I can't discover where subkeys under HKCR\.vbsc
come from in your case.
从barlop添加了注释---关于它的来源,我认为它是“默认程序编辑器”和“开始/ orb”的组合。“更改与特定扩展名关联的文件类型”,并制作一个.vbsc图标和选择一个打开方式为assoc的程序----
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句