Share via


Debug-Process

Fouten opsporen in een of meer processen die worden uitgevoerd op de lokale computer.

Syntax

Debug-Process
     [-Name] <String[]>
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]
Debug-Process
     [-Id] <Int32[]>
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]
Debug-Process
     -InputObject <Process[]>
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]

Description

De Debug-Process cmdlet koppelt een foutopsporingsprogramma aan een of meer actieve processen op een lokale computer. U kunt de processen opgeven op basis van hun procesnaam of proces-id (PID), of u kunt procesobjecten doorsnijden naar deze cmdlet.

Deze cmdlet koppelt het foutopsporingsprogramma dat momenteel is geregistreerd voor het proces. Voordat u deze cmdlet gebruikt, controleert u of een foutopsporingsprogramma is gedownload en correct is geconfigureerd.

Voorbeelden

Voorbeeld 1: een foutopsporingsprogramma koppelen aan een proces op de computer

PS C:\> Debug-Process -Name "Windows Powershell"

Met deze opdracht wordt een foutopsporingsprogramma gekoppeld aan het PowerShell-proces op de computer.

Voorbeeld 2: een foutopsporingsprogramma koppelen aan alle processen die beginnen met de opgegeven tekenreeks

PS C:\> Debug-Process -Name "SQL*"

Met deze opdracht wordt een foutopsporingsprogramma gekoppeld aan alle processen die namen hebben die beginnen met SQL.

Voorbeeld 3: Een foutopsporingsprogramma koppelen aan meerdere processen

PS C:\> Debug-Process "Winlogon", "Explorer", "Outlook"

Met deze opdracht wordt een foutopsporingsprogramma gekoppeld aan de Winlogon-, Explorer- en Outlook-processen.

Voorbeeld 4: een foutopsporingsprogramma koppelen aan meerdere proces-id's

PS C:\> Debug-Process -Id 1132, 2028

Met deze opdracht wordt een foutopsporingsprogramma gekoppeld aan de processen met proces-id's 1132 en 2028.

Voorbeeld 5: gebruik Get-Process om een proces op te halen en voeg er vervolgens een foutopsporingsprogramma aan toe

PS C:\> Get-Process "Windows PowerShell" | Debug-Process

Met deze opdracht wordt een foutopsporingsprogramma gekoppeld aan de PowerShell-processen op de computer. De cmdlet wordt gebruikt Get-Process om de PowerShell-processen op de computer op te halen en er wordt een pijplijnoperator (|) gebruikt om de processen naar de Debug-Process cmdlet te verzenden.

Als u een bepaald PowerShell-proces wilt opgeven, gebruikt u de id-parameter van Get-Process.

Voorbeeld 6: Een foutopsporingsprogramma koppelen aan een huidig proces op de lokale computer

PS C:\> $PID | Debug-Process

Met deze opdracht wordt een foutopsporingsprogramma gekoppeld aan de huidige PowerShell-processen op de computer.

De opdracht maakt gebruik van de $PID automatische variabele, die de proces-id van het huidige PowerShell-proces bevat. Vervolgens wordt een pijplijnoperator (|) gebruikt om de proces-id naar de Debug-Process cmdlet te verzenden.

Zie about_Automatic_Variables voor meer informatie over de $PID automatische variabele.

Voorbeeld 7: een foutopsporingsprogramma koppelen aan een proces dat gebruikmaakt van de parameter InputObject

PS C:\> $P = Get-Process "Windows PowerShell"
PS C:\> Debug-Process -InputObject $P

Met deze opdracht wordt een foutopsporingsprogramma gekoppeld aan de PowerShell-processen op de lokale computer.

De eerste opdracht maakt gebruik van de Get-Process cmdlet om de PowerShell-processen op de computer op te halen. Het resulterende procesobject wordt opgeslagen in de variabele met de naam $P.

De tweede opdracht gebruikt de parameter InputObject van de Debug-Process cmdlet om het procesobject in de $P variabele te verzenden.

Parameters

-Confirm

Hiermee wordt u gevraagd om bevestiging voordat u de cmdlet uitvoert.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Id

Hiermee geeft u de proces-id's van de processen die moeten worden opgespoord. De naam van de id-parameter is optioneel.

Als u de proces-id van een proces wilt vinden, typt Get-Processu .

Type:Int32[]
Aliases:PID, ProcessId
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-InputObject

Hiermee geeft u de procesobjecten op die processen vertegenwoordigen die moeten worden opgespoord. Voer een variabele in die de procesobjecten bevat of een opdracht waarmee de procesobjecten worden opgehaald, zoals de Get-Process cmdlet. U kunt ook procesobjecten doorsnijden naar deze cmdlet.

Type:Process[]
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Name

Hiermee geeft u de namen van de processen die moeten worden opgespoord. Als er meer dan één proces met dezelfde naam is, koppelt deze cmdlet een foutopsporingsprogramma aan alle processen met die naam. De parameter Name is optioneel.

Type:String[]
Aliases:ProcessName
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-WhatIf

Hiermee wordt weergegeven wat er zou gebeuren als u de cmdlet uitvoert. De cmdlet wordt niet uitgevoerd.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Invoerwaarden

System.Int32, System.Diagnostics.Process, System.String

U kunt een proces-id (Int32), een procesobject (System.Diagnostics.Process) of een procesnaam (tekenreeks) doorsnijden naar deze cmdlet.

Uitvoerwaarden

None

Deze cmdlet genereert geen uitvoer.

Notities

Deze cmdlet maakt gebruik van de methode AttachDebugger van de WMI-Win32_Process-klasse (Windows Management Instrumentation). Zie De methode AttachDebugger in de MSDN-bibliotheek voor meer informatie over deze methode.