Bagikan melalui


Debug-Process

Men-debug satu atau beberapa proses yang berjalan di komputer lokal.

Sintaks

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

Deskripsi

Debug-Process Cmdlet melampirkan debugger ke satu atau beberapa proses yang berjalan di komputer lokal. Anda dapat menentukan proses dengan nama proses atau ID proses (PID), atau Anda dapat menyalurkan objek proses ke cmdlet ini.

Cmdlet ini melampirkan debugger yang terdaftar untuk proses. Sebelum menggunakan cmdlet ini, verifikasi bahwa debugger diinstal dan dikonfigurasi.

Contoh

Contoh 1: Melampirkan debugger ke proses di komputer

Debug-Process -Name Powershell

Perintah ini melampirkan debugger ke proses PowerShell di komputer.

Contoh 2: Lampirkan debugger ke semua proses yang dimulai dengan string yang ditentukan

Debug-Process -Name note*

Perintah ini melampirkan debugger ke semua proses yang memiliki nama yang dimulai dengan note.

Contoh 3: Melampirkan debugger ke beberapa proses

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

Perintah ini mencoba melampirkan debugger ke proses Winlogon, Explorer, dan Outlook. Winlogon adalah proses yang dilindungi. Untuk men-debug Winlogon, Anda harus menjalankan perintah sebagai administrator.

Contoh 4: Melampirkan debugger ke beberapa ID proses

Debug-Process -Id 1132, 2028

Perintah ini melampirkan debugger ke proses yang memiliki ID proses 1132 dan 2028.

Contoh 5: Gunakan Get-Process untuk mendapatkan proses lalu lampirkan debugger ke dalamnya

Get-Process PowerShell | Debug-Process

Perintah ini melampirkan debugger ke proses PowerShell di komputer. Ini menggunakan Get-Process cmdlet untuk mendapatkan proses PowerShell di komputer, dan menggunakan operator alur (|) untuk mengirim proses ke Debug-Process cmdlet.

Untuk menentukan proses PowerShell tertentu, gunakan parameter ID dari Get-Process.

Contoh 6: Melampirkan debugger ke proses saat ini di komputer lokal

Debug-Process -Id $PID

Perintah ini melampirkan debugger ke proses PowerShell saat ini di komputer.

Perintah menggunakan $PID variabel otomatis, yang berisi ID proses dari proses PowerShell saat ini. Kemudian, ia menggunakan operator alur (|) untuk mengirim ID proses ke Debug-Process cmdlet.

Untuk informasi selengkapnya tentang $PID variabel otomatis, lihat about_Automatic_Variables.

Contoh 7: Melampirkan debugger ke proses yang ditentukan di beberapa komputer

Get-Process -ComputerName "Server01", "Server02" -Name "MyApp" | Debug-Process

Perintah ini melampirkan debugger ke proses MyApp di komputer Server01 dan Server02.

Perintah menggunakan Get-Process cmdlet untuk mendapatkan proses MyApp di komputer Server01 dan Server02. Ini menggunakan operator alur untuk mengirim proses ke Debug-Process cmdlet, yang melampirkan debugger.

Contoh 8: Melampirkan debugger ke proses yang menggunakan parameter InputObject

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

Perintah ini melampirkan debugger ke proses PowerShell di komputer lokal.

Perintah pertama menggunakan Get-Process cmdlet untuk mendapatkan proses PowerShell di komputer. Ini menyimpan objek proses yang dihasilkan dalam variabel bernama $P.

Perintah kedua menggunakan parameter InputObject cmdlet Debug-Process untuk mengirimkan objek proses dalam $P variabel.

Parameter

-Confirm

Meminta Anda mengonfirmasi sebelum menjalankan cmdlet.

Jenis:SwitchParameter
Alias:cf
Position:Named
Nilai default:False
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:False

-Id

Menentukan ID proses yang akan di-debug. Nama parameter Id bersifat opsional.

Untuk menemukan ID proses proses, ketik Get-Process.

Jenis:Int32[]
Alias:PID, ProcessId
Position:0
Nilai default:None
Diperlukan:True
Terima input alur:True
Terima karakter wildcard:False

-InputObject

Menentukan objek proses yang mewakili proses yang akan di-debug. Masukkan variabel yang berisi objek proses atau perintah yang mendapatkan objek proses, seperti Get-Process cmdlet. Anda juga dapat menyalurkan objek proses ke cmdlet ini.

Jenis:Process[]
Position:Named
Nilai default:None
Diperlukan:True
Terima input alur:True
Terima karakter wildcard:False

-Name

Menentukan nama proses yang akan di-debug. Jika ada lebih dari satu proses dengan nama yang sama, cmdlet ini melampirkan debugger ke semua proses dengan nama tersebut. Parameter Nama bersifat opsional.

Jenis:String[]
Alias:ProcessName
Position:0
Nilai default:None
Diperlukan:True
Terima input alur:True
Terima karakter wildcard:False

-WhatIf

Menunjukkan apa yang akan terjadi jika cmdlet berjalan. Cmdlet tidak dijalankan.

Jenis:SwitchParameter
Alias:wi
Position:Named
Nilai default:False
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:False

Input

Int32

Anda dapat menyalurkan ID proses ke cmdlet ini.

Process

Anda dapat menyalurkan objek proses ke cmdlet ini.

String

Anda dapat menyalurkan nama proses ke cmdlet ini.

Output

None

Cmdlet ini tidak mengembalikan output.

Catatan

Cmdlet ini menggunakan metode AttachDebugger dari kelas Win32_Process Windows Management Instrumentation (WMI). Untuk informasi selengkapnya tentang metode ini, lihat Metode AttachDebugger di pustaka MSDN.