Hoe u PowerShell kunt gebruiken om een screenshot van een externe computer te maken
U kunt leren hoe u PowerShell kunt gebruiken om een screenshot van een externe computer te maken via opdrachtregels. Dit overzicht behandelt de beste technieken voor het vastleggen van afbeeldingen op een externe Windows-computer.
Hoe u PowerShell kunt gebruiken om een screenshot van een externe computer te maken
PowerShell wordt veel gebruikt door IT-beheerders voor externe automatisering en systeembeheer, dus het is vaak het eerste hulpmiddel waar mensen aan denken wanneer ze een screenshot van een externe computer moeten maken. In theorie kan PowerShell via .NET-bibliotheken communiceren met grafische Windows-componenten, waardoor schermopname mogelijk is. In de praktijk brengt externe uitvoering echter grote beperkingen met zich mee met betrekking tot gebruikerssessies en machtigingen. Dit werkt door PowerShell-remote-uitvoering te gebruiken om de screenshotcode op afstand uit te voeren. De afbeelding wordt opgeslagen op de externe computer, niet op de lokale.
Stap 1. Voer het PowerShell-script uit op de doelcomputer, handmatig, via een geplande taak of als onderdeel van een geautomatiseerd script. De screenshot wordt op dat moment op die machine gemaakt wanneer het script wordt uitgevoerd.
Stap 2. Laad de vereiste .NET-assembly's met Add-Type. De System.Drawing-assembly wordt gebruikt om beeldgegevens te maken en te beheren, terwijl System.Windows.Forms nodig is om scherminformatie zoals resolutie te detecteren.
Stap 3. Definieer een uitvoerpad waar de screenshot wordt opgeslagen. Dit pad moet bestaan en beschrijfbaar zijn, bijvoorbeeld een map zoals C:\Temp, om ervoor te zorgen dat het beeldbestand succesvol kan worden aangemaakt.
Stap 4. Detecteer de schermresolutie door de grenzen van het primaire scherm uit te lezen van System.Windows.Forms.Screen. Deze stap zorgt ervoor dat de screenshot overeenkomt met de volledige zichtbare schermgrootte.
Stap 5. Maak een bitmapobject in het geheugen met behulp van de gedetecteerde schermbreedte en -hoogte. Deze bitmap fungeert als een lege afbeelding die de vastgelegde scherminhoud zal bevatten.
Stap 6. Genereer een grafisch object vanuit de bitmap. Dit grafische object is verantwoordelijk voor het tekenen en kopiëren van visuele gegevens in de bitmap.
Stap 7. Gebruik de CopyFromScreen-methode om alle zichtbare schermpixels in de bitmap te kopiëren. Dit is de stap waar de daadwerkelijke screenshot wordt vastgelegd.
Stap 8. Sla de bitmap op als een beeldbestand en maak systeembronnen vrij door de grafische en bitmapobjecten weg te gooien. De screenshot kan later worden bekeken voor probleemoplossing of documentatiedoeleinden.
U kunt dit voorbeeld volgen om PowerShell te gebruiken om een screenshot van een externe computer te maken:
# Definieer externe computernaam
$RemoteComputer = "REMOTE-PC-NAME"
# Definieer screenshot-opslagpad op de externe computer
$OutputPath = "C:\Temp\PowerShellScreenCapture.jpg"
Invoke-Command -ComputerName $RemoteComputer -ScriptBlock {
Add-Type -AssemblyName System.Drawing Add-Type -AssemblyName System.Windows.Forms
# Haal de resolutie van het primaire scherm op $ScreenBounds = [System.Windows.Forms.Screen]::PrimaryScreen.Bounds
# Maak een bitmap die overeenkomt met de schermresolutie $Bitmap = New-Object System.Drawing.Bitmap ` $ScreenBounds.Width, $ScreenBounds.Height
# Maak een grafisch object $Graphics = [System.Drawing.Graphics]::FromImage($Bitmap)
# Kopieer scherminhoud naar de bitmap $Graphics.CopyFromScreen( $ScreenBounds.Location, [System.Drawing.Point]::Empty, $ScreenBounds.Size )
# Sla de schermafbeelding op $Bitmap.Save($using:OutputPath, [System.Drawing.Imaging.ImageFormat]::Jpeg)
# Opruimen $Graphics.Dispose() $Bitmap.Dispose() }
🔥De Makkelijkste Manier om Schermafbeeldingen Op Afstand te Maken: AnyViewer
Voor IT-personeel en thuiswerkers die snel resultaat willen zonder complexe scripts, is AnyViewer een praktische keuze. Het biedt een eenvoudige manier om schermen op afstand vast te leggen, terwijl het de configuratie- en machtigingsproblemen vermijdt die vaak komen kijken bij opdrachtregel-gebaseerde tools. Dit maakt het ideaal voor dagelijkse ondersteuningstaken en routinematige monitoring.
Zodra u verbinding maakt met een apparaat op afstand, is het maken van een schermafbeelding eenvoudig. U klikt gewoon op de knop Schermafbeelding en de afbeelding wordt direct opgeslagen op uw lokale computer. Er is geen noodzaak om displaydrivers aan te passen of handmatig afbeeldingen in andere programma's te plakken. Omdat AnyViewer onbeheerde toegang ondersteunt, kunt u schermen vastleggen zelfs wanneer niemand is ingelogd, wat handig is voor het controleren van servers of achtergrondtaken.
AnyViewer verwijdert ook veelvoorkomende technische barrières. U hoeft geen firewalls te configureren, poorten te openen of systeembeleid te wijzigen. Het toont betrouwbaar het echte scherm zonder zwarte weergaveproblemen, en alle beeldgegevens worden beschermd met sterke encryptie tijdens de overdracht. Door snelheid, eenvoud en beveiliging te combineren, maakt AnyViewer het vastleggen van schermafbeeldingen op afstand veel eenvoudiger en efficiënter.
Stap 1. Installeer en start AnyViewer op beide computers. Ga naar Inloggen > Registreren om een AnyViewer-account aan te maken. (Als u zich al heeft geregistreerd op de officiële website, kunt u direct inloggen.)
Stap 2. Vervolgens kunt u zien dat u succesvol bent ingelogd bij AnyViewer. Uw apparaat wordt automatisch toegewezen aan het account waarmee u bent ingelogd.
Stap 3. Log in op de twee apparaten met hetzelfde AnyViewer-account; Ga op uw lokale apparaat naar Apparaat, en vervolgens kunt u een directe verbinding tot stand brengen door op One-click control te klikken.
Vervolgens kunt u het externe scherm vastleggen op dezelfde manier als op een lokale computer.
Vergelijking: PowerShell vs. AnyViewer
| Functie | PowerShell / Scripts | AnyViewer |
|---|---|---|
| Installatiecomplexiteit | Hoog (Vereist codering & WinRM-configuratie) | Laag (Installeren & Gebruiken) |
| Sessiebeheer | Vangt vaak een Zwart Scherm (Sessie 0) | Vangt het Zichtbare Bureaublad (Automatisch beheerd) |
| Beveiliging | Vereist het versoepelen van uitvoeringsbeleid | Gebruikt End-to-End ECC-codering |
| Beste gebruiksscenario | Massa-implementatie (100 pc's tegelijk) | Probleemoplossing voor specifieke machines |
Conclusie
Hoewel PowerShell en CMD krachtige automatiseringsmogelijkheden bieden, zijn ze vaak ongeschikt voor grafische taken zoals schermopname vanwege Sessie 0-isolatie en complexe machtigingen.
Voor beheerders die betrouwbare, hoogwaardige visuele logboeken nodig hebben zonder het risico op zwarte schermen of beveiligingslekken, is een gespecialiseerd hulpmiddel zoals AnyViewer de professionele keuze. Het stelt u in staat u te concentreren op wat er op het scherm staat, in plaats van u zorgen te maken over hoe u het moet vastleggen.
Veelgestelde vragen
1. Kan PowerShell echt een schermafbeelding maken van een externe computer?
Ja, PowerShell kan een schermafbeelding maken door een script uit te voeren op de externe computer via PowerShell-remote toegang. De opname is afhankelijk van de actieve gebruikerssessie en de machtigingen.
2. Waar wordt de schermafbeelding opgeslagen bij gebruik van PowerShell-remote toegang?
De schermafbeelding wordt opgeslagen op de externe computer, niet op de lokale machine. U moet een beschrijfbaar pad op het doelapparaat opgeven, zoals C:\Temp.
3. Waarom tonen PowerShell-schermafbeeldingen soms een zwart scherm?
Dit gebeurt meestal omdat het script wordt uitgevoerd in een niet-interactieve sessie, zoals Sessie 0, die geen toegang heeft tot het zichtbare bureaublad.
4. Welke .NET-componenten zijn vereist voor schermopname met PowerShell?
Het script vereist System.Drawing om afbeeldingen te maken en op te slaan, en System.Windows.Forms om schermresolutie en weergave-informatie te detecteren.
5. Waarom is AnyViewer gemakkelijker dan PowerShell voor externe schermafbeeldingen?
AnyViewer legt het zichtbare bureaublad direct vast en slaat afbeeldingen op de lokale computer op. Het vermijdt scripting, sessieproblemen en machtigingsproblemen, waardoor het sneller is voor dagelijks gebruik.