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 několika spuštěným procesům na 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 aktuálně zaregistrovaný pro tento proces. Před použitím této rutiny ověřte, jestli je ladicí program stažený a správně nakonfigurovaný.

Příklady

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

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

Tento příkaz připojí ladicí program k procesu Windows 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

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

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

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

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

Tento příkaz připojí ladicí program k procesům Winlogon, Exploreru a Outlooku.

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

PS C:\> 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: Použití Get-Process k získání procesu a připojení ladicího programu k němu

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

Tento příkaz připojí ladicí program k procesům Windows PowerShellu v počítači. Pomocí rutiny Get-Process získá procesy Windows PowerShellu v počítači a pomocí operátoru kanálu (|) odešle procesy do rutiny Debug-Process.

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

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

PS C:\> $PID | Debug-Process

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

Příkaz používá $PID automatickou proměnnou, která obsahuje ID procesu aktuálního procesu Windows 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 zadanému procesu na více počítačích

PS C:\> Get-Process -ComputerName "Server01", "Server02" -Name "MyApp" | Debug-Process

Tento příkaz připojí ladicí program k procesům MyApp na počítačích Se serverem 01 a Server02.

Příkaz používá rutinu Get-Process k získání procesů MyApp na počítačích Se serverem 01 a Server02. Používá operátor kanálu k odeslání procesů do rutiny Debug-Process, která připojí ladicí programy.

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

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

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

První příkaz používá rutinu Get-Process k získání procesů Windows PowerShellu na počítači. Uloží výsledný objekt procesu do proměnné s názvem $P.

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

Parametry

-Confirm

Před spuštěním rutiny vás vyzve 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 obsahující 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

Ukazuje, co se stane, když se rutina spustí. Rutina se nespustí.

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

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

Id procesu (Int32), objekt procesu (System.Diagnostics.Process) nebo název procesu (String) můžete do této rutiny převést.

Výstupy

None

Tato rutina negeneruje žá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.