Los scripts de Perl en Windows 10 se ejecutan desde el Explorador pero no desde el símbolo del sistema

He instalado ActiveState Perl en mi nueva PC con Windows 10. He instalado la misma versión exacta de Perl en varias de mis PC, y está instalada en cientos de PC de otros usuarios en mi empresa. La misma instalación exacta, creada por mí.

Esta es la primera vez que intenta esto en Windows 10. Las acciones básicas de hacer doble clic en un script de Perl (* .pl) en Explorer hacen que se abra una ventana de consola y Perl ejecute el script.

Además, en el símbolo del sistema de Windows, puedo escribirperl.exe script.pl, y el script funciona bien. Pero cuando solo escriboscript.pl, no pasa nada. Sin salida, sin errores, sin procesos perl.exe visibles en el Administrador de tareas.

La primera vez que ejecuté un script Perl (desde el símbolo del sistema de Windows, creo, usando solo elscript.pl sintaxis), Windows apareció una ventana preguntándome qué programa quería usar para abrir este archivo. Perl era el predeterminado, e hice clic en Aceptar.

Nunca he visto esa ventana en Windows 7 u 8, así que creo que es algo específico de Windows 10, y que es lo que de alguna manera me impide escribirscript.pl. Porque, al lanzarscript.pl, Requiero que las asociaciones de archivos elijan el programa correcto, pero cuando escriboperl.exe script.pl, perl.exe se está iniciando directamente. Pero, esa cosa de Windows 10 "elige tu programa predeterminado" se interpone en el camino cuando se ejecuta desde el símbolo del sistema desordenando las asociaciones de archivos.

Sin embargo, no estoy 100% seguro de por qué funciona desde Explorer, pero estoy bastante seguro de que necesito borrar esa cosa predeterminada del programa. Eliminé la entrada de registro para.pl archivos bajoHKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExtsPero eso no ayudó.

Este parece ser un problema más genérico con Windows 10, o posiblemente solo mi instalación, o una Política de grupo que no conozco.

Los siguientes comandos (ejecutados en un símbolo del sistema de administración) funcionan bien en Windows 8.1 pero no en Windows 10:

assoc .foo=Foobar
ftype Foobar=C:\WINDOWS\system32\foo.bat %1
echo @echo off > foo.bat
echo echo The filename is %1 >> foo.bat
echo hi > foo.foo
foo.foo

El resultado debería ser la salida:

The filename is C:\WINDOWS\system32\foo.foo

Pero Windows 10 no hace nada. Parece que solo permite que las aplicaciones integradas se asocien de esta manera, y no las secuencias de comandos BAT de los EXE descargados / instalados.

Respuestas a la pregunta(1)

Su respuesta a la pregunta