Debug-Process

Felsöker en eller flera processer som körs på den lokala datorn.

Syntax

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

Description

Cmdleten Debug-Process kopplar ett felsökningsprogram till en eller flera processer som körs på en lokal dator. Du kan ange processerna efter deras processnamn eller process-ID (PID), eller så kan du skicka processobjekt till den här cmdleten.

Den här cmdleten bifogar det felsökningsprogram som för närvarande är registrerat för processen. Innan du använder den här cmdleten kontrollerar du att ett felsökningsprogram har laddats ned och konfigurerats korrekt.

Exempel

Exempel 1: Koppla ett felsökningsprogram till en process på datorn

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

Det här kommandot kopplar ett felsökningsprogram till PowerShell-processen på datorn.

Exempel 2: Koppla ett felsökningsprogram till alla processer som börjar med den angivna strängen

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

Det här kommandot kopplar ett felsökningsprogram till alla processer som har namn som börjar med SQL.

Exempel 3: Koppla ett felsökningsprogram till flera processer

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

Det här kommandot kopplar ett felsökningsprogram till Processerna Winlogon, Explorer och Outlook.

Exempel 4: Koppla ett felsökningsprogram till flera process-ID:t

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

Det här kommandot kopplar ett felsökningsprogram till de processer som har process-ID:t 1132 och 2028.

Exempel 5: Använd Get-Process för att hämta en process och sedan koppla ett felsökningsprogram till den

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

Det här kommandot kopplar ett felsökningsprogram till PowerShell-processerna på datorn. Den använder cmdleten Get-Process för att hämta PowerShell-processerna på datorn och använder en pipelineoperator (|) för att skicka processerna till cmdleten Debug-Process .

Om du vill ange en viss PowerShell-process använder du ID-parametern Get-Processför .

Exempel 6: Koppla ett felsökningsprogram till en aktuell process på den lokala datorn

PS C:\> $PID | Debug-Process

Det här kommandot kopplar ett felsökningsprogram till de aktuella PowerShell-processerna på datorn.

Kommandot använder den $PID automatiska variabeln, som innehåller process-ID för den aktuella PowerShell-processen. Sedan använder den en pipelineoperator (|) för att skicka process-ID:t till cmdleten Debug-Process .

Mer information om den $PID automatiska variabeln finns i about_Automatic_Variables.

Exempel 7: Koppla ett felsökningsprogram till en process som använder parametern InputObject

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

Det här kommandot kopplar ett felsökningsprogram till PowerShell-processerna på den lokala datorn.

Det första kommandot använder cmdleten Get-Process för att hämta PowerShell-processerna på datorn. Det sparar det resulterande processobjektet i variabeln med namnet $P.

Det andra kommandot använder parametern InputObject för cmdleten Debug-Process för att skicka processobjektet i variabeln $P .

Parametrar

-Confirm

Uppmanar dig att bekräfta innan du kör cmdleten.

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

-Id

Anger process-ID:t för de processer som ska kopplas från. Id-parameternamnet är valfritt.

Om du vill hitta process-ID:t för en process skriver du Get-Process.

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

-InputObject

Anger de processobjekt som representerar processer som ska debuggas. Ange en variabel som innehåller processobjekten eller ett kommando som hämtar processobjekten, till exempel cmdleten Get-Process . Du kan också skicka processobjekt till den här cmdleten.

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

-Name

Anger namnen på de processer som ska kopplas från. Om det finns fler än en process med samma namn bifogar den här cmdleten ett felsökningsprogram till alla processer med det namnet. Parametern Namn är valfri.

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

-WhatIf

Visar vad som skulle hända om cmdleten kördes. Cmdleten körs inte.

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

Indata

Int32

Du kan skicka ett process-ID till den här cmdleten.

Process

Du kan skicka ett processobjekt till den här cmdleten.

String

Du kan skicka ett processnamn till den här cmdleten.

Utdata

None

Den här cmdleten returnerar inga utdata.

Kommentarer

Den här cmdleten använder metoden AttachDebugger i klassen Windows Management Instrumentation (WMI) Win32_Process. Mer information om den här metoden finns i AttachDebugger-metoden i MSDN-biblioteket.