Powershell Mauszeiger ausblenden
Hi,
wie kann man den Mauszeiger in Windows ausblenden?
Habe einiges probiert wie z.B. [Windows.Forms.Cursor]::Hide(), aber es passiert nichts.
Einfaches wegbewegen hilft mir nicht.
Danke
wie kann man den Mauszeiger in Windows ausblenden?
Habe einiges probiert wie z.B. [Windows.Forms.Cursor]::Hide(), aber es passiert nichts.
Einfaches wegbewegen hilft mir nicht.
Danke
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 322456
Url: https://administrator.de/forum/powershell-mauszeiger-ausblenden-322456.html
Ausgedruckt am: 11.04.2025 um 01:04 Uhr
11 Kommentare
Neuester Kommentar

Windows.Forms.Cursor]::Hide()
Das würde ja auch nur für eine sichtbare Windows Forms Anwendung über dessen Fenster gelten und nicht Systemweit!http://stackoverflow.com/questions/10541014/hiding-system-cursor
Oder ein "durchsichtiges" Cursoricon setzen.
Gruß
p.s. wenn dich Usereingaben stören dann Blocke diese doch mit BlockInput()

Na dann
https://msdn.microsoft.com/de-de/library/windows/desktop/ms648393(v=vs.8 ...
P.s. WinApI Funktionen kannst du problemlos über AddType in die PS einbinden und verwenden.
https://msdn.microsoft.com/de-de/library/windows/desktop/ms648393(v=vs.8 ...
A handle to the cursor. The cursor must have been created by the CreateCursor function or loaded by the LoadCursor or LoadImage function. If this parameter is NULL, the cursor is removed from the screen.
vielen Dank für deine konkreten Ausführungen. Ich bin raus!
Zitat von @Marabunta:
Danke für die Antwort.
Hier dran zu bleiben ist für den Zweck leider zu aufwändig.
Ich benutze jetzt diesen Workaround:
Add-Type -AssemblyName System.Windows.Forms
$screen = [System.Windows.Forms.SystemInformation]::VirtualScreen
[Windows.Forms.Cursor]::Position = "$($screen.Width),$($screen.Height/2)"
Nicht perfekt aber ausreichend
Das ist exakt der selbe Ansatz, den ich gepostet habe...Danke für die Antwort.
Hier dran zu bleiben ist für den Zweck leider zu aufwändig.
Ich benutze jetzt diesen Workaround:
Add-Type -AssemblyName System.Windows.Forms
$screen = [System.Windows.Forms.SystemInformation]::VirtualScreen
[Windows.Forms.Cursor]::Position = "$($screen.Width),$($screen.Height/2)"
Nicht perfekt aber ausreichend
Servus miteinander,
Nicht wirklich
Cursor verschwinden lassen, kein Problem ...
Grüße Uwe
Nicht wirklich
Cursor verschwinden lassen, kein Problem ...
Add-Type -AssemblyName System.Drawing
$tools = Add-Type –memberDefinition '
public struct IconInfo
{
public bool fIcon;
public int xHotspot;
public int yHotspot;
public IntPtr hbmMask;
public IntPtr hbmColor;
}
[DllImport("user32.dll")] public static extern bool SetSystemCursor(IntPtr hcur, uint id);
[DllImport("user32.dll")] public static extern bool GetIconInfo(IntPtr hIcon, ref IconInfo pIconInfo);
[DllImport("user32.dll")] public static extern IntPtr CreateIconIndirect(ref IconInfo icon);
' -name "windowtools" -namespace Win32Functions –passThru -EA SilentlyContinue
# transparentes Bitmap erstellen
$imgptr = (new-object System.Drawing.Bitmap 24,24).GetHicon()
# Iconinfo erstellen und Hotspot setzen
$iconinfo = new-object Win32Functions.windowtools+IconInfo
[Win32Functions.windowtools]::GetIconInfo($imgptr,[ref]$iconinfo)
$iconinfo.xHotspot = 12;$iconinfo.yHotspot = 12; $iconinfo.fIcon = $false
# Icon erstellen und Pointer zurückgeben
$icon = [Win32Functions.windowtools]::CreateIconIndirect([ref]$iconinfo)
# Folgende Cursor durch das transparente Icon ersetzen (OCR_NORMAL / OCR_WAIT / OCR_APPSTARTING)
@(32512,32514,32650) | %{[Win32Functions.windowtools]::SetSystemCursor($icon,$_) | out-null}

Nicht wirklich
Elegant