Sem direitos para o prompt de comando elevado, você não poderá executar um script como esse. Elevado significa que você pode clicar com o botão direito no cmd e selecionar executar como administrador.
O Windows 10 tem os Programas padrão mais exigentes atribuídos e eu preciso ser capaz de alterá-los rapidamente em máquinas diferentes (por exemplo, criar um script). Eu estou tentando usar assoc e ftype para conseguir isso.
Este é o arquivo em lote que tentei executar - simples o suficiente para começar. Normalmente, os arquivos PS1 são abertos no Bloco de Notas, o que não faz sentido, já que eles devem ser abertos no PowerShell ISE, e é isso que tentei fazer aqui:
@echo off
TITLE Associating File Types With Applications for %username%
assoc .ps1=Microsoft.PowerShellScript.1
ftype Microsoft.PowerShellScript.1=powershell_ise.exe
pause
A pausa foi simplesmente para que eu pudesse capturar o seguinte erro quando ele fosse executado:
Access is denied.
Error occurred while processing: .ps1.
Access is denied.
Error occurred while processing: Microsoft.PowerShellScript.1.
Press any key to continue . . .
Acesso duplo negado! A maneira como o script é escrito atualmente, nem assoc ou ftype funcionam. Eu posso mudar os Programas Padrão através da GUI, então eu deveria ser capaz de fazer o script também. Infelizmente, a Microsoft não facilita o script quando você não é um administrador.
Eu não sei se a parte assoc é realmente necessária - parece que apenas ftype é necessário em um script, pois é isso que realmente muda a associação de arquivos. Isso foi em todos os exemplos, então eu incluí-lo.
Como posso alterar os programas padrão como um usuário padrão sem direitos administrativos ? Felizmente, agora temos acesso ao Registro, então se eu puder fazer a mesma coisa com um arquivo REG, isso também funcionaria. Eu preciso ser capaz de associar os seguintes tipos de arquivos com os seguintes programas:
Além do Chrome, as políticas de domínio não afetam os programas padrão.
Tags batch file-association