Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我如何设置;默认应用程序";用于将文件扩展名设置为";。exe";2018年4月更新后的Windows 10_Windows_File_Cmd_App Store_Default - Fatal编程技术网

我如何设置;默认应用程序";用于将文件扩展名设置为";。exe";2018年4月更新后的Windows 10

我如何设置;默认应用程序";用于将文件扩展名设置为";。exe";2018年4月更新后的Windows 10,windows,file,cmd,app-store,default,Windows,File,Cmd,App Store,Default,我花了很长时间研究这个。大多数解决方案发布于2018年4月之前,涉及通过“设置”进入“按文件类型选择默认应用程序” 在以前尝试将应用程序分配给“.rex”时,我设法将其分配给记事本。(当时,我无法在我的C:驱动器上找到“.exe”。) 如您所见,如果您单击.rex扩展名旁边的记事本,唯一的选择就是转到“应用商店” 正如所料,如果你点击应用商店,什么也找不到 因此,从我在多个论坛上看到的情况来看,在2018年4月之前,Windows 10仍然可以“浏览硬盘”找到一个“.exe”。(就像旧版Wi

我花了很长时间研究这个。大多数解决方案发布于2018年4月之前,涉及通过“设置”进入“按文件类型选择默认应用程序”

在以前尝试将应用程序分配给“.rex”时,我设法将其分配给记事本。(当时,我无法在我的C:驱动器上找到“.exe”。)

如您所见,如果您单击.rex扩展名旁边的记事本,唯一的选择就是转到“应用商店”

正如所料,如果你点击应用商店,什么也找不到

因此,从我在多个论坛上看到的情况来看,在2018年4月之前,Windows 10仍然可以“浏览硬盘”找到一个“.exe”。(就像旧版Windows一样。)在2018年4月进行了一些更新后,该功能不再存在


在2018年4月后,有没有人找到办法将文件扩展名分配给硬盘上的“.exe”?

我认为这个问题更适合(除非你想通过程序:)来解决)

无论如何,这里有一种从控制台(cmd)执行操作的方法。我在一两年前就试过了,现在才试过,所以不管Win(10)版本如何,它都能工作
从头开始流程:

  • 打开命令提示窗口。创建一个操作系统不知道的新文件。我选择了扩展名.zzz

    e:\Work\Dev\StackOverflow\q052008516>ver
    Microsoft Windows[版本10.0.17134.228]
    e:\Work\Dev\StackOverflow\q052008516>dir/b
    e:\Work\Dev\StackOverflow\q052008516>:创建一个伪.zzz文件
    e:\Work\Dev\StackOverflow\q052008516>回显一些伪文本>file.zzz
    e:\Work\Dev\StackOverflow\q052008516>dir/b
    file.zzz
    

  • 尝试从文件浏览器(不相关,但我使用)打开文件(DblClick),或者在cmd中键入文件名。这将产生可怕的对话框:


  • 创建新的文件类型并将扩展名与之关联。实用程序是用来做这项工作的。首先,检查这种关联是否已经存在:

    e:\Work\Dev\StackOverflow\q052008516>:没有输出意味着没有关联
    e:\Work\Dev\StackOverflow\q052008516>assoc | findstr“.zzz”
    e:\Work\Dev\StackOverflow\q052008516>:对不同的扩展名使用相同的命令
    e:\Work\Dev\StackOverflow\q052008516>assoc | findstr.txt”
    .dic=txtfile
    .exc=txtfile
    .log=txtfile
    .scp=txtfile
    .txt=txtfile
    .wtx=txtfile
    e:\Work\Dev\StackOverflow\q052008516>:创建一个新的文件类型(ZZZFile)并将我们的扩展与之关联
    e:\Work\Dev\StackOverflow\q052008516>assoc.zzz=ZZZFile
    .zzz=ZZZFile
    e:\Work\Dev\StackOverflow\q052008516>assoc | findstr“.zzz”
    .zzz=ZZZFile
    
    尝试打开文件时没有更改


  • 将文件类型(ZZZFile,来自上一步)与命令关联。使用该工具完成任务。再次检查文件类型是否尚未关联(仅当文件类型在上一步之前存在时才有意义):

    e:\Work\Dev\StackOverflow\q052008516>:通常,没有输出意味着没有关联
    e:\Work\Dev\StackOverflow\q052008516>ftype | findstr ZZZFile
    e:\Work\Dev\StackOverflow\q052008516>::txtfile也是这样
    e:\Work\Dev\StackOverflow\q052008516>ftype | findstr txtfile
    txtfile=%SystemRoot%\system32\NOTEPAD.EXE%1
    e:\Work\Dev\StackOverflow\q052008516>:将ZZZFile与记事本关联
    e:\Work\Dev\StackOverflow\q052008516>ftype ZZZFile=%SystemRoot%\system32\notepad.exe%1
    ZZZFile=C:\WINDOWS\system32\notepad.exe%1
    e:\Work\Dev\StackOverflow\q052008516>ftype | findstr ZZZFile
    ZZZFile=C:\WINDOWS\system32\notepad.exe%1
    

  • 再次尝试打开文件(从cmd),然后瞧:


  • 总结: 为了使用扩展名为.zzz的notepad.exe文件打开只有两个命令需要从整个(相当长的)答案中记住:

    • assoc.zzz=ZZZFile
    • ftype ZZZFile=%SystemRoot%\system32\notepad.exe%1
    注释

    • 我的用户具有(超级)管理权限,但我想它们的影响不应该因操作从何处执行而有所不同(cmd或UI(如果可能)),换句话说,没有所需权限的用户将无法执行此操作,无论他们尝试什么
    • 显然,在这个主题上有一个(相当暗的)星云,我的知识还不能“解读”。在我的示例中,我经常将.zzz结果与.txt进行比较。然而一个巨大的惊喜是:记事本++和note记事本用于打开txtfile.txt),尽管有上述输出
    @EDIT0

    我对.txt的秘密做了更多的挖掘。事实:

    • ftype将记事本显示为打开程序
    • 它实际上是由Notepad++打开的(在cmd和PS中)
    • 在按文件类型选择默认应用程序中,将显示记事本+
    所以很明显,这不仅仅是表面上的(多年来,我习惯了微软的做事方式,在某些情况下,这似乎是(但可能是我没有掌握所有的部分)ilogic)。 我还发现了许多资源,如:

    • 其中提到了命令:
      dism/online/export defaultappassociations:“file.txt”
      
    • 其中提到了注册表键:
      • HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\${EXT}
      • HKCR\${EXT}
    我在任何地方都找不到一个明确的算法来说明如何选择可执行文件来运行具有特定扩展名的文件。我可以认为上面的2个键是被查询的,但我100%确定还有更多。更不用说我遇到了一个更奇怪的问题(对于普通用户而言)