Procurando converter meu arquivo bat para Powershell

Procurando converter meu arquivo bat para Powershell

Tenho os 2 arquivos em lote abaixo que desejo converter para Powershell.

Eu tenho bat1.bat associado a uma extensão de arquivo, então quando clico duas vezes nessa extensão bat1.bat é executado e o primeiro parâmetro é o nome do arquivo que foi clicado duas vezes

Por que usar 2 arquivos bat? Bem, se eu apenas usar bat2, uma janela de comando será aberta e visível até que o programa final seja encerrado. Ao usar os 2 arquivos em lote acima, recebo apenas um ícone da barra de tarefas (do qual quero me livrar). O que me leva ao motivo pelo qual desejo converter para Powershell. Quero poder clicar duas vezes em um dos arquivos e fazer com que o PS abra o programa Access e não tenha nenhum ícone ou qualquer indicação visual. Parece que meu programa Access é o programa que lida com arquivos com essa extensão.

Bat1.bat

@echo off
@START /MIN c:\temp\bat2.bat %1
exit

Bat2.bat

@echo off
"c:\temp\Test.accdb" /cmd %1
exit

Responder1

Não estou na frente de um PC para testar isso agora, mas você não poderia simplesmente associar a extensão do arquivo a um morcego que execute o seguinte?

@start "Access wrapper" "c:\temp\Test.accdb" /cmd %1

Sou totalmente a favor de mudar para o PowerShell, mas seu arquivo em lote será mais rápido inicialmente e, se bem me lembro, você pode passar um tipo de arquivo conhecido (como seu arquivo accdb) para o comando "iniciar" e ele descobrirá o que fazer abra-o com (ou seja, Access) e continue para a próxima linha do script (a menos que você passe "/wait"). Como não haveria uma próxima linha no script, o script e sua janela simplesmente desapareceriam.

Acho que você provavelmente poderia eliminar todo o lote com algumas edições criativas de registro, mas não estou em um PC agora para testar isso e não quero que as pessoas mexam no registro apenas com informações não testadas em minha memória.

informação relacionada