¿Cómo puedo cambiar los programas predeterminados desde un script sin derechos de administrador?

¿Cómo puedo cambiar los programas predeterminados desde un script sin derechos de administrador?

Windows 10 tiene asignados los programas predeterminados más complicados y necesito poder cambiarlos rápidamente en diferentes máquinas (es decir, crear un script). estoy tratando de usarasociadoytipo fpara lograr eso.

Este es el archivo por lotes que intenté ejecutar; para empezar, es bastante simple. Los archivos PS1 generalmente se abren en el Bloc de notas, lo cual no tiene sentido ya que deberían abrirse en PowerShell ISE, así que eso es lo que intenté hacer aquí:

@echo off
TITLE Associating File Types With Applications for %username%
assoc .ps1=Microsoft.PowerShellScript.1
ftype Microsoft.PowerShellScript.1=powershell_ise.exe
pause

La pausa fue simplemente para poder capturar el siguiente error cuando se ejecutó:

Access is denied.
Error occurred while processing: .ps1.
Access is denied.
Error occurred while processing: Microsoft.PowerShellScript.1.
Press any key to continue . . .

¡Doble acceso denegado!La forma en que está escrito el guión actualmente, tampocoasociadootipo ftrabajar. Puedo cambiar los programas predeterminados a través de la GUI, por lo que también debería poder crear un script. Desafortunadamente, Microsoft no facilita la creación de secuencias de comandos cuando no eres administrador.

No sé si elasociadoparte es realmente necesaria - parece que sólotipo fes necesario en un script ya que eso es lo que realmente cambia la asociación del archivo. Eso estaba en todos los ejemplos, así que lo incluí.

¿Cómo puedo cambiar los programas predeterminados como usuario estándar?sin ningún derecho administrativo? Afortunadamente, ahora tenemos acceso al Registro, por lo que si puedo hacer lo mismo con un archivo REG, también funcionaría. Necesito poder asociar los siguientes tipos de archivos con los siguientes programas:

  • PS1: PowerShell ISE
  • PDF: Adobe Acrobat Reader DC
  • Haga que Windows Photo Viewer (no Fotos) sea el visor predeterminado para cualquier tipo de imagen. Ya tengo un script que agrega WPV al menú "Abrir con".
  • Haga de Windows Media Player el visor predeterminado para cualquier tipo de archivo de vídeo.
  • Haga de Internet Explorer el navegador predeterminado (a diferencia de Edge). Nuestro dominio tiene una política que convierte a Chrome en el navegador predeterminado cada vez que se ejecuta, por lo que puedo volver a aplicarla con más frecuencia.
  • HTML/CSS/JS: "T:\Notepad++\Notepad++Portable.exe"

Aparte de Chrome, las políticas de dominio no afectan a los programas predeterminados.

Respuesta1

Sin derechos para el símbolo del sistema elevado, no podrá ejecutar un script como ese. Elevado significa que puede hacer clic derecho en cmd y seleccionar ejecutar como administrador.

información relacionada