assoc и ftype, обеспечивают сопоставление между расширением и программой, запускаемой для этого расширения. И по какой-то причине, несмотря на то, что я указал в Assoc и ftype, загружается какое-то другое приложение, поэтому кажется, что ОС читает свои данные (о том, какое приложение нужно запускать), откуда-то еще, даже не проверяя Assoc и Ftype.
У меня есть расширение файла .vbsc, которое связано с cscript, и мне бы хотелось, чтобы оно было связано с чем-то другим, даже calc.exe. Я просто хочу изменить ассоциацию, но, похоже, не могу. Но я могу для других расширений. Ниже приведена демонстрация.
В демонстрации я использую assoc и ftype, чтобы создать ассоциацию для расширения файла .ab5, и демонстрация показывает, что это работает. Затем я изменяю ассоциацию, чтобы она вызывала другую программу, демонстрация показывает, что она работает. Затем я пробую это с моим расширением проблемы, и это не работает. И это не потому, что у меня проблема с расширением 4 символа, есть много длинных расширений.
Ниже этой второй демонстрации, которую я описываю, где вы прокручиваете ее вниз. Так что он читает что-то еще до ftype.
C:\Users\user>assoc | grep -i vbsc
.vbsc=VBS_Cscr
C:\Users\user>assoc .ab5=AB5file
.ab5=AB5file
C:\Users\user>ftype AB5file=c:\windows\system32\calc.exe
AB5file=c:\windows\system32\calc.exe
C:\Users\user>echo asdf>a.ab5
C:\Users\user>a.ab5
C:\Users\user>rem the above brings up calculator
C:\Users\user>ftype AB5file=c:\windows\system32\charmap.exe
AB5file=c:\windows\system32\charmap.exe
C:\Users\user>a.ab5
C:\Users\user>rem the above things up charmap
C:\Users\user>abc.vbsc
Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation. All rights reserved.
Input Error: There is no script engine for file extension ".vbsc".
C:\Users\user>assoc | find /i "vbs"
.vbs=VBSFile
.vbsc=VBS_Cscr
C:\Users\user>ftype | find /i "vbs"
VBSFile=%SystemRoot%\System32\WScript.exe "%1" %*
VBS_Cscr=c:\windows\system32\calc.exe
C:\Users\user>
В этой демонстрации я удаляю расширение. Это все еще ассоциируется с cscript.exe
Удаление расширения
C:\Windows\System32>assoc .vbsc=
C:\Windows\System32>ftype VBSFile=
C:\Windows\System32>aaa.vbsc
Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation. All rights reserved.
Input Error: There is no script engine for file extension ".vbsc".
C:\Windows\System32>