Sdílet prostřednictvím


Debug-Process

Ladí jeden nebo více procesů spuštěných v místním počítači.

Syntaxe

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

Description

Rutina Debug-Process připojí ladicí program k jednomu nebo více spuštěným procesům v místním počítači. Procesy můžete zadat podle názvu procesu nebo ID procesu (PID) nebo můžete řadit objekty procesu do této rutiny.

Tato rutina připojí ladicí program, který je zaregistrovaný pro tento proces. Před použitím této rutiny ověřte, že je nainstalovaný a nakonfigurovaný ladicí program.

Příklady

Příklad 1: Připojení ladicího programu k procesu v počítači

Debug-Process -Name Powershell

Tento příkaz připojí ladicí program k procesu PowerShellu v počítači.

Příklad 2: Připojení ladicího programu ke všem procesům, které začínají zadaným řetězcem

Debug-Process -Name note*

Tento příkaz připojí ladicí program ke všem procesům, které mají názvy začínající note.

Příklad 3: Připojení ladicího programu k více procesům

Debug-Process "Winlogon", "Explorer", "Outlook"

Tento příkaz se pokusí připojit ladicí program k procesům Winlogon, Exploreru a Outlooku. Winlogon je chráněný proces. Pokud chcete ladit Winlogon, musíte příkaz spustit jako správce.

Příklad 4: Připojení ladicího programu k více ID procesů

Debug-Process -Id 1132, 2028

Tento příkaz připojí ladicí program k procesům, které mají ID procesů 1132 a 2028.

Příklad 5: Získání procesu pomocí příkazu Get-Process a pak k němu připojte ladicí program.

Get-Process PowerShell | Debug-Process

Tento příkaz připojí ladicí program k procesům PowerShellu v počítači. Používá rutinu Get-Process k získání procesů PowerShellu v počítači a k odeslání procesů do Debug-Process rutiny používá operátor kanálu (|).

Pokud chcete zadat konkrétní proces PowerShellu, použijte parametr ID parametru Get-Process.

Příklad 6: Připojení ladicího programu k aktuálnímu procesu na místním počítači

Debug-Process -Id $PID

Tento příkaz připojí ladicí program k aktuálním procesům PowerShellu v počítači.

Příkaz používá automatickou proměnnou $PID , která obsahuje ID procesu aktuálního procesu PowerShellu. Potom pomocí operátoru kanálu (|) odešle ID procesu do rutiny Debug-Process .

Další informace o $PID automatické proměnné najdete v tématu about_Automatic_Variables.

Příklad 7: Připojení ladicího programu k procesu, který používá parametr InputObject

$P = Get-Process PowerShell
Debug-Process -InputObject $P

Tento příkaz připojí ladicí program k procesům PowerShellu v místním počítači.

První příkaz pomocí rutiny Get-Process získá procesy PowerShellu v počítači. Uloží výsledný objekt procesu do proměnné s názvem $P.

Druhý příkaz používá parametr Debug-Process InputObject rutiny k odeslání objektu $P procesu v proměnné.

Parametry

-Confirm

Před spuštěním rutiny zobrazí výzvu k potvrzení.

Typ:SwitchParameter
Aliasy:cf
Position:Named
Default value:False
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-Id

Určuje ID procesů, které se mají ladit. Název parametru ID je volitelný.

Chcete-li zjistit ID procesu, zadejte Get-Process.

Typ:Int32[]
Aliasy:PID, ProcessId
Position:0
Default value:None
Vyžadováno:True
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

-InputObject

Určuje objekty procesu, které představují procesy, které se mají ladit. Zadejte proměnnou, která obsahuje objekty procesu, nebo příkaz, který získá objekty procesu, například rutinu Get-Process . Do této rutiny můžete také pipetovat objekty zpracování.

Typ:Process[]
Position:Named
Default value:None
Vyžadováno:True
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

-Name

Určuje názvy procesů, které se mají ladit. Pokud existuje více procesů se stejným názvem, připojí tato rutina ladicí program ke všem procesům s tímto názvem. Parametr Name je volitelný.

Typ:String[]
Aliasy:ProcessName
Position:0
Default value:None
Vyžadováno:True
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

-WhatIf

Zobrazuje, co by se stalo při spuštění rutiny. Rutina není spuštěna.

Typ:SwitchParameter
Aliasy:wi
Position:Named
Default value:False
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

Vstupy

Int32

ID procesu můžete do této rutiny převést.

Process

Objekt procesu můžete do této rutiny převést.

String

Název procesu můžete do této rutiny převést.

Výstupy

None

Tato rutina nevrátí žádný výstup.

Poznámky

Tato rutina používá metodu AttachDebugger třídy Win32_Process windows Management Instrumentation (WMI). Další informace o této metodě naleznete v tématu AttachDebugger metoda v knihovně MSDN.