Przejrzysty wiersz polecenia w systemie Vista?


Odpowiedzi:


11

Lubię konsolę , obsługuje przezroczystość, a także polecenia z kartami.


Konsola to niesamowity program. Zdecydowanie polecam.
Weegee

Fajnie, wygląda na to, że ma trochę aktywności. Ostatnim razem, gdy sprawdzałem, pomyślałem, że to martwy projekt.
duckworth

Próbowałem kilka ... godzin i nie bardzo mi się podobało. Myślę, że to brak „wybierz + enter”, aby skopiować i prawy przycisk, aby wkleić, co powoduje, że go porzucam.
OscarRyz

Próbowałem tego na Vista64, w konsoli nie pojawia się żaden tekst. Mogę pisać, a kursor przesuwa się tak, jakby tam był tekst, ale nic się nie zmienia.
Sampson,

@Oscar Reyes - Mam konsolę 2.0+ skonfigurowaną do robienia tego, co chcesz.
Umber Ferrule


1

Aby wszystkie aktualnie uruchomione okna cmd i PowerShell były przezroczyste, uruchom to w terminalu PowerShell (okna otwarte po uruchomieniu nie będą przezroczyste, a system nie będzie modyfikowany):

$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)}

Aby okna terminala PowerShell były zawsze przezroczyste (zmienia to specyficzny dla użytkownika plik profilu PowerShell):

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 }'

0

Dostępnych jest więcej narzędzi „stosuj przezroczystość do dowolnego okna losowego”, niż można potrząsnąć. Google jeden i daj mu szansę. Możesz dostosować przezroczystość w prawie każdym oknie, w tym konsolach.


Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.