Executar um arquivo .bat silenciosamente?

Sep 16 2020

Eu tenho um arquivo .bat que estou usando para controlar o volume do meu monitor usando DDC / CI. Eu estava usando o nircmd para executá-lo silenciosamente, mas a partir da versão mais recente do Windows 10, isso não funciona mais.

Abaixo está meu arquivo em lote:

title CmmVolume
nircmd.exe win hide ititle "CmmVolume"

cmm.exe /ChangeValue Primary 62 %1

Respostas

RegEdit Sep 16 2020 at 02:51

O que você pode fazer é executar o arquivo em lote minimizado , o que dá praticamente o mesmo efeito:

  1. Crie um atalho para o arquivo em lote.

  2. Clique com o botão direito no atalho e escolha Propriedades.

  3. Na caixa de diálogo Propriedades, localize o Runmenu suspenso e escolha Minimizado.

ItWasn'tMe Sep 16 2020 at 20:54

Seu bastão deve atender a alguns pontos elementares que estão faltando e que possivelmente isso estaria causando a falha na execução, mas de qualquer forma, em meus testes os ajustes listados abaixo funcionaram perfeitamente:

1. Entre na pasta do seu bastão"%~dp0"

2. Aplique o caminho completo a todos os arquivos executáveis

3. usando a versão mais recente NirCMDno Windows 10

4. Substitua ititleporstitle

@echo off && title <nul 

>nul taskkill /F /FI "WindowTitle eq "CmmVolume" 2>nul 

cd /d "%~dp0" && title CmmVolume

"C:\Users\ecker\Downloads\Nircmd\Nircmd.exe" win hide stitle "CmmVolume"

>>"%~dp0\log.log"  echo\"c:\add\full\path\to\cmm.exe" /ChangeValue Primary 62 %1

>"%tmp%\VBS_play.vbs" echo\CreateObject("Wscript.Shell"^).Run "wmplayer /play /close ""%windir%\Media\notify.wav""", 0, False

wscript "%tmp%\VBS_play.vbs" & timeout /t 1 >nul & del /q /f  "%tmp%\VBS_play.vbs"

Obs .: Os vbs para execução / reprodução de áudio e o log são para verificação da execução em modo oculto / background ...