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 för Get-Process
.
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:t 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.
Typ: | SwitchParameter |
Alias: | cf |
Position: | Named |
Standardvärde: | False |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-Id
Anger process-ID:t för de processer som ska kopplas från. Parameternamnet ID är valfritt.
Om du vill hitta process-ID:t för en process skriver du Get-Process
.
Typ: | Int32[] |
Alias: | PID, ProcessId |
Position: | 0 |
Standardvärde: | None |
Obligatorisk: | True |
Godkänn pipeline-indata: | True |
Godkänn jokertecken: | 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.
Typ: | Process[] |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | True |
Godkänn pipeline-indata: | True |
Godkänn jokertecken: | 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 Name är valfri.
Typ: | String[] |
Alias: | ProcessName |
Position: | 0 |
Standardvärde: | None |
Obligatorisk: | True |
Godkänn pipeline-indata: | True |
Godkänn jokertecken: | False |
-WhatIf
Visar vad som skulle hända om cmdleten körs. Cmdleten körs inte.
Typ: | SwitchParameter |
Alias: | wi |
Position: | Named |
Standardvärde: | False |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
Indata
System.Int32, System.Diagnostics.Process, System.String
Du kan skicka ett process-ID (Int32), ett processobjekt (System.Diagnostics.Process) eller ett processnamn (Sträng) till den här cmdleten.
Utdata
None
Den här cmdleten genererar 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-metod i MSDN-biblioteket.