Prompt de comando transparente no Vista?

8

É possível ter uma janela de prompt de comando um pouco transparente no Vista ou Windows 7?

Eles são alternativas de terceiros?

Duckworth
fonte

Respostas:

11

Eu gosto do console , ele suporta transparência, bem como prompts de comando com guias.

TroyC
fonte
Console é um programa incrível. Fortemente recomendado.
Weegee
Legal, parece que tem alguma atividade recente. A última vez que verifiquei, pensei que era um projeto morto.
Duckworth
Eu tentei algumas ... horas e não gostei muito. Eu acho que foi a falta de "select + enter" para copiar e botão direito para colar o que me fez abandoná-lo.
OscarRyz 16/07/2009
Tentei isso no Vista64, nenhum texto aparece no console. Eu posso digitar, e ele move o cursor como se o texto estivesse lá, mas nada está mudando visivelmente.
Sampson
@ Oscar Reyes - Eu tenho o Console 2.0 ou superior configurado para fazer o que você deseja.
Umber Ferrule
3

Se você estiver procurando por um efeito aerodinâmico e vítreo, use o Glass CMD .

Cristián Romo
fonte
Ele suporta "modo de edição rápida" (selecione + ENTER para copiar, clicar para colar?)
OscarRyz
Deveria, está apenas modificando as propriedades de uma janela de console comum. Deixe-me ter certeza ... Sim, faz.
Cristián Romo
1

Para tornar transparentes todas as janelas cmd e powershell em execução no momento, execute-as em um terminal powershell (as janelas abertas após a execução não serão transparentes e o sistema não será modificado):

$user32 = Add-Type -Name User32 -Namespace Win32 -PassThru -MemberDefinition '[DllImport("user32.dll")]public static extern int GetWindowLong(IntPtr hWnd, int nIndex);[DllImport("user32.dll")]public static extern int SetWindowLong(IntPtr hWnd, int nIndex, int dwNewLong);[DllImport("user32.dll", SetLastError = true)]public static extern bool SetLayeredWindowAttributes(IntPtr hWnd, uint crKey, int bAlpha, uint dwFlags);'
Get-Process | Where-Object { @('powershell', 'cmd') -contains $_.ProcessName } | % {$user32::SetWindowLong($_.MainWindowHandle, -20, ($user32::GetWindowLong($_.MainWindowHandle, -20) -bor 0x80000));$user32::SetLayeredWindowAttributes($_.MainWindowHandle, 0, 200, 0x02)}

Para tornar as janelas do terminal do PowerShell sempre transparentes (isso altera o arquivo de perfil do PowerShell específico do usuário):

if (-not Test-Path -Path $profile) { New-Item -path $profile -type file -force }
Add-Content -Path $profile -Value '$user32 = Add-Type -Name ''User32'' -Namespace ''Win32'' -PassThru -MemberDefinition ''[DllImport("user32.dll")]public static extern int GetWindowLong(IntPtr hWnd, int nIndex);[DllImport("user32.dll")]public static extern int SetWindowLong(IntPtr hWnd, int nIndex, int dwNewLong);[DllImport("user32.dll", SetLastError = true)]public static extern bool SetLayeredWindowAttributes(IntPtr hWnd, uint crKey, int bAlpha, uint dwFlags);'''
Add-Content -Path $profile -Value 'Get-Process | Where-Object { @(''powershell'', ''cmd'') -contains $_.ProcessName } | % { $user32::SetWindowLong($_.MainWindowHandle, -20, ($user32::GetWindowLong($_.MainWindowHandle, -20) -bor 0x80000)) | Out-Null;$user32::SetLayeredWindowAttributes($_.MainWindowHandle, 0, 200, 0x02) | Out-Null }'
Grenade
fonte
0

Existem mais utilitários "aplicar transparência a qualquer janela aleatória" disponíveis do que você pode usar. Pesquise no Google um e tente. Você pode ajustar a transparência em praticamente qualquer janela, incluindo consoles.

Goyuix
fonte