Bagikan melalui


Opsi penelusuran kesalahan proyek

Untuk mengatur opsi debugger Visual Studio, pilih Alat>Opsi, dan di bawah Penelusuran Kesalahan pilih atau hapus centang pada kotak di samping opsi Umum. Anda dapat memulihkan semua pengaturan bawaan dengan Alat>Pengaturan Impor dan Ekspor>Atur ulang semua pengaturan. Untuk mengatur ulang subset pengaturan, simpan pengaturan Anda dengan Wizard Pengaturan Impor dan Ekspor sebelum membuat perubahan yang ingin Anda pengujian, lalu impor pengaturan tersimpan setelahnya.

Anda dapat mengatur opsi Umum berikut:

Tanya sebelum menghapus semua titik henti : Memerlukan konfirmasi sebelum menyelesaikan perintah Hapus Semua Titik Henti.

Jeda semua proses saat satu proses terjeda: Secara bersamaan menjeda semua proses tempat debugger terpasang, saat terjadi jeda.

Jeda saat pengecualian melintasi AppDomain atau batas terkelola/asli: Dalam penelusuran kesalahan mode terkelola atau campuran, runtime bahasa umum dapat menangkap pengecualian yang melintasi batas domain aplikasi atau batas terkelola/asli jika kondisi berikut ini benar:

  1. Saat kode asli memanggil kode terkelola dengan menggunakan Interop COM dan kode terkelola memunculkan pengecualian. Lihat Pengantar Interop COM.

  2. Saat kode terkelola berjalan di domain aplikasi 1 memanggil kode terkelola di domain aplikasi 2, dan kode di domain aplikasi 2 mengeluarkan pengecualian. Lihat Pemrograman dengan domain aplikasi.

  3. Saat kode memanggil fungsi dengan menggunakan refleksi, dan fungsi itu melempar pengecualian. Lihat Refleksi.

Dalam kondisi 2 dan 3, pengecualian terkadang ditangkap oleh kode terkelola di mscorlib daripada oleh runtime bahasa umum. Opsi ini tidak memengaruhi pemutusan pengecualian yang ditangkap oleh mscorlib.

Aktifkan penelusuran kesalahan tingkat alamat: Mengaktifkan fitur lanjutan untuk debugging di tingkat alamat (jendela Pembongkaran, jendela Daftar, dan titik henti alamat).

  • Tampilkan pembongkaran jika sumber tidak tersedia : Secara otomatis menampilkan jendela Pembongkaran saat Anda men-debug kode yang sumbernya tidak tersedia.

Aktifkan filter titik henti sementara: Memungkinkan Anda mengatur filter pada titik henti sementara sehingga filter hanya akan memengaruhi proses, utas, atau komputer tertentu.

Gunakan Pembantu Pengecualian baru: Mengaktifkan Pembantu Pengecualian yang menggantikan asisten pengecualian. (Pembantu Pengecualian didukung mulai di Visual Studio 2017)

Catatan

Untuk kode terkelola, opsi ini sebelumnya disebut Aktifkan asisten pengecualian .

Aktifkan Hanya Kode Saya: Debugger hanya menampilkan dan masuk ke kode pengguna ("Kode Saya"), mengabaikan kode sistem dan kode lain yang dioptimalkan atau yang tidak memiliki simbol debug.

  • Peringatkan jika tidak ada kode pengguna saat peluncuran (Hanya terkelola): Saat penelusuran kesalahan dimulai dengan Hanya Kode Saya diaktifkan, opsi ini memperingatkan Anda jika tidak ada kode pengguna ("Kode Saya").

Aktifkan langkah sumber .NET Framework: Memungkinkan debugger untuk masuk ke sumber .NET Framework. Mengaktifkan opsi ini secara otomatis menonaktifkan Hanya Kode Saya. Simbol .NET Framework akan diunduh ke lokasi cache. Ubah lokasi chace dengan kotak dialog Opsi, kategori Penelusuran Kesalahan, halaman Simbol.

Lewati properti dan operator (Hanya terkelola) : Mencegah debugger masuk ke properti dan operator dalam kode terkelola.

Aktifkan evaluasi properti dan panggilan fungsi implisit lainnya: Mengaktifkan evaluasi otomatis properti dan panggilan fungsi implisit di jendela variabel dan kotak dialog QuickWatch.

  • Panggil fungsi konversi string pada objek di jendela variabel (khusus C# dan JavaScript): Menjalankan panggilan konversi string implisit saat mengevaluasi objek di jendela variabel. Hasilnya ditampilkan sebagai string alih-alih nama jenis. Hanya berlaku saat penelusuran kesalahan dalam kode C#. Pengaturan ini dapat diganti oleh atribut DebuggerDisplay (lihat Menggunakan atribut DebuggerDisplay).

Aktifkan dukungan server sumber: Memberi tahu debugger Visual Studio untuk mendapatkan file sumber dari server sumber yang menerapkan protokol SrcSrv (srcsrv.dll). Team Foundation Server dan Alat Penelusuran Kesalahan untuk Windows adalah dua server sumber yang mengimplementasikan protokol. Untuk informasi lebih selengkapnya tentang penyiapan SrcSrv, lihat dokumentasi SrcSrv. Selain itu, lihat Menentukan simbol (.pdb) dan file sumber .

Penting

Karena membaca file .pdb dapat mengeksekusi kode arbitrer dalam file, pastikan Anda memercayai server.

  • Cetak pesan diagnostik server sumber ke jendela Output: Bila dukungan server sumber diaktifkan, pengaturan ini akan mengaktifkan tampilan diagnostik.

  • Izinkan server sumber untuk rakitan kepercayaan sebagian (Hanya terkelola): Saat dukungan server sumber diaktifkan, pengaturan ini menimpa perilaku default tidak mengambil sumber untuk rakitan kepercayaan sebagian.

  • Selalu jalankan perintah server sumber yang tidak dipercaya tanpa diminta: Saat dukungan server sumber diaktifkan, pengaturan ini mengesampingkan perilaku default yang meminta saat menjalankan perintah yang tidak dipercaya.

Aktifkan dukungan Tautan Sumber: Memberi tahu debugger Visual Studio untuk mengunduh file sumber untuk file .pdb yang berisi informasi Tautan Sumber. Untuk informasi selengkapnya tentang Tautan Sumber, lihat Spesifikasi tautan sumber.

Penting

Karena Tautan Sumber akan mengunduh file menggunakan http atau https, pastikan Anda mempercayai file .pdb.

  • Kembali ke autentikasi Git Credential Manager untuk semua permintaan Tautan Sumber : Saat dukungan Tautan Sumber diaktifkan, dan permintaan Tautan Sumber gagal autentikasi, Visual Studio kemudian memanggil Git Credential Manager.

Sorot seluruh baris sumber untuk titik henti sementara dan pernyataan saat ini (khusus C++): Saat debugger menyorot titik henti sementara atau pernyataan saat ini, debugger menyorot seluruh baris.

Memerlukan file sumber agar sama persis dengan versi aslinya: Memberi tahu debugger untuk memverifikasi bahwa file sumber cocok dengan versi kode sumber yang digunakan untuk membuat file yang dapat dieksekusi yang sedang Anda debug. Ketika versi tidak cocok, Anda akan diminta untuk menemukan sumber yang cocok. Jika sumber yang cocok tidak ditemukan, kode sumber tidak akan ditampilkan selama penelusuran kesalahan.

Arahkan ulang semua teks jendela Output ke jendela Segera: Mengirim semua pesan debugger yang biasanya muncul di jendela Output ke jendela Langsung sebagai gantinya.

Tampilkan struktur mentah objek di jendela variabel: Mematikan semua kustomisasi tampilan struktur objek. Untuk informasi selengkapnya tentang kustomisasi tampilan, lihat Membuat tampilan kustom objek terkelola.

Tekan pengoptimalan JIT pada beban modul (Hanya terkelola): Menonaktifkan pengoptimalan JIT dari kode terkelola saat modul dimuat dan JIT dikompilasi saat debugger dilampirkan. Menonaktifkan pengoptimalan dapat mempermudah untuk men-debug beberapa masalah, meskipun dengan mengorbankan performa. Jika Anda menggunakan Hanya Kode Saya, menekan pengoptimalan JIT dapat menyebabkan kode non-pengguna muncul sebagai kode pengguna ("Kode Saya"). Untuk informasi selengkapnya, lihat Pengoptimalan dan penelusuran kesalahan JIT.

Aktifkan penelusuran kesalahan JavaScript untuk ASP.NET (Chrome, Microsoft Edge, dan IE): Mengaktifkan debugger skrip untuk aplikasi ASP.NET. Pada penggunaan pertama di Chrome, Anda mungkin perlu masuk ke browser untuk mengaktifkan ekstensi Chrome yang telah Anda instal. Nonaktifkan opsi ini untuk kembali ke perilaku lama.

Aktifkan menggunakan debugger JavaScript multi-target untuk men-debug JavaScript di target yang berlaku (memerlukan mulai ulang penelusuran kesalahan) Mengaktifkan koneksi ke browser dan back-end secara bersamaan, memungkinkan Anda untuk men-debug kode Anda yang berjalan di klien dan server langsung dari editor.

Muat ekspor dll (Hanya asli) : Memuat tabel ekspor dll. Informasi simbol dari tabel ekspor dll dapat berguna jika Anda bekerja dengan pesan Windows, prosedur Windows (WindowProcs), objek COM, atau menyusun, atau dll yang tidak memiliki simbol. Membaca informasi ekspor dll melibatkan beberapa overhead. Oleh karena itu, kemampuan ini dimatikan secara default.

Untuk melihat simbol apa yang tersedia di tabel ekspor dll, gunakan dumpbin /exports. Simbol tersedia untuk dll sistem 32-bit. Dengan membaca output dumpbin /exports, Anda dapat melihat nama fungsi yang tepat, termasuk karakter non-alfanumerik. Ini berguna untuk mengatur titik henti pada suatu fungsi. Nama fungsi dari tabel ekspor dll mungkin tampak terpotong di tempat lain di debugger. Panggilan terdaftar dalam urutan panggilan, dengan fungsi saat ini (yang paling dalam bersarang) di bagian atas. Untuk informasi selengkapnya, lihat dumpbin/ekspor.

Tampilkan diagram tumpukan paralel dari bawah ke atas: Mengontrol arah tampilan tumpukan di jendela Tumpukan Paralel.

Abaikan pengecualian akses memori GPU jika data yang ditulis tidak mengubah nilai: Mengabaikan kondisi balapan yang terdeteksi selama debugging jika data tidak berubah. Untuk informasi selengkapnya, lihat Men-debug Kode GPU.

Gunakan Mode Kompatibilitas Terkelola: Mengganti mesin penelusuran kesalahan default dengan versi lawas untuk mengaktifkan skenario berikut:

  • Anda menggunakan bahasa .NET selain C#, Visual Basic, atau F# yang menyediakan Evaluator Ekspresi sendiri (termasuk C++/CLI).

  • Anda ingin mengaktifkan Edit dan Lanjutkan untuk proyek C++ selama penelusuran kesalahan mode campuran.

Catatan

Memilih mode Kompatibilitas Terkelola menonaktifkan beberapa fitur yang diterapkan hanya di mesin penelusuran kesalahan default. Mesin penelusuran kesalahan lama diganti di Visual Studio 2012.

Peringatkan visualizer debugger kustom terhadap proses yang berpotensi tidak aman (Hanya terkelola) : Visual Studio memperingatkan Anda saat Anda menggunakan visualizer debugger kustom yang menjalankan kode dalam proses debug, karena itu bisa menjalankan kode yang tidak aman.

Aktifkan pengalokasi timbunan debug Windows (Hanya asli) : Mengaktifkan timbunan debug windows untuk meningkatkan diagnostik timbunan. Mengaktifkan opsi ini akan memengaruhi performa penelusuran kesalahan.

Aktifkan Alat Penelusuran Kesalahan UI untuk XAML: Pohon Visual Langsung dan jendela Jelajahi Properti Langsung akan muncul saat Anda mulai men-debug (F5) jenis proyek yang didukung. Untuk informasi selengkapnya, lihat Memeriksa properti XAML saat men-debug.

  • Pratinjau elemen yang dipilih di Pohon Visual Langsung: Elemen XAML yang konteksnya dipilih juga dipilih di jendela Pohon Visual Langsung.

  • Tampilkan alat runtime dalam aplikasi: Menampilkan perintah Pohon Visual Langsung di bilah alat di jendela utama aplikasi XAML yang sedang di-debug.

  • Aktifkan XAML Hot Reload: Memungkinkan Anda menggunakan fitur XAML Hot Reload dengan kode XAML saat aplikasi Anda berjalan. (Fitur ini sebelumnya disebut "XAML Edit dan Lanjutkan")

  • Aktifkan Hanya XAML Saya: Mulai Visual Studio 2019 versi 16.4, Pohon Visual Langsung secara default hanya menampilkan XAML yang diklasifikasikan sebagai kode pengguna. Jika Anda menonaktifkan opsi ini, semua kode XAML yang dihasilkan akan ditampilkan di alat.

  • Matikan mode pemilihan saat elemen dipilih Mulai di Visual Studio 2019 versi 16.4, tombol pemilih elemen bilah alat dalam aplikasi (Aktifkan pemilihan) mati saat elemen dipilih. Jika Anda menonaktifkan opsi ini, pemilihan elemen akan tetap aktif hingga Anda mengeklik lagi tombol bilah alat dalam aplikasi.

  • Terapkan XAML Hot Reload pada penyimpanan dokumen Mulai dari Visual Studio 2019 versi 16.6, terapkan XAML Hot Reload saat Anda menyimpan dokumen.

Aktifkan Alat Diagnostik saat men-debug: Jendela Alat Diagnostik muncul saat Anda men-debug.

Tampilkan PerfTip waktu yang telah berlalu saat men-debug: Jendela kode menampilkan waktu yang telah berlalu dari pemanggilan metode yang diberikan saat Anda melakukan debug.

Aktifkan Edit dan Lanjutkan: Mengaktifkan fungsi Edit dan Lanjutkan saat menelusuri kesalahan.

  • Aktifkan Edit dan Lanjutkan Asli: Anda dapat menggunakan fungsi Edit dan Lanjutkan saat men-debug kode C++ asli. Untuk informasi selengkapnya, lihat Edit dan Lanjutkan (C++).

  • Terapkan perubahan saat melanjutkan (Hanya asli): Visual Studio secara otomatis mengompilasi dan menerapkan perubahan kode luar biasa yang telah Anda buat saat melanjutkan proses dari keadaan istirahat. Jika tidak dipilih, Anda dapat memilih untuk menerapkan perubahan menggunakan item Terapkan Perubahan Kode di bawah menu Debug.

  • Peringatkan tentang kode kedaluwarsa (Hanya asli): Dapatkan peringatan tentang kode kedaluwarsa.

Tampilkan tombol Jalankan untuk Klik di editor saat menelusuri masalah: Bila opsi ini dipilih, tombol Jalankan untuk Klik akan ditampilkan saat penelusuran kesalahan.

Tutup secara otomatis konsol saat penelusuran kesalahan berhenti: Memberi tahu Visual Studio untuk menutup konsol di akhir sesi debugging.

Aktifkan evaluasi ekspresi cepat (Hanya terkelola): Memungkinkan debugger untuk mencoba evaluasi lebih cepat dengan mensimulasikan eksekusi properti dan metode sederhana.

Muat simbol debug dalam proses eksternal (Hanya asli) Mengaktifkan pengoptimalan memori ini saat penelusuran kesalahan.

Bawa Visual Studio ke latar depan saat menjeda debugger Mengalihkan Visual Studio ke latar depan saat Anda menjeda debugger.

Biarkan tips data yang diperluas tetap terbuka hingga diklik Bila opsi ini dipilih, kiat data yang diperluas tetap terbuka hingga Anda mengekliknya.

Opsi tersedia di versi Visual Studio yang lebih lama

Jika Anda menggunakan versi Visual Studio yang lebih lama, beberapa opsi tambahan mungkin ada.

Aktifkan Alat Pengembang Edge untuk Aplikasi JavaScript UWP (Eksperimental) : Mengaktifkan alat pengembang untuk aplikasi JavaScript UWP di Microsoft Edge.

Aktifkan debugger JavaScript Chrome warisan untuk ASP.NET: Mengaktifkan debugger skrip JavaScript Chrome warisan untuk aplikasi ASP.NET. Pada penggunaan pertama di Chrome, Anda mungkin perlu masuk ke browser untuk mengaktifkan ekstensi Chrome yang telah Anda instal.

Aktifkan asisten pengecualian: Untuk kode terkelola, aktifkan asisten pengecualian. Mulai di Visual Studio 2017, Pembantu Pengecualian menggantikan asisten pengecualian.

Lepaskan tumpukan panggilan pada pengecualian yang tidak tertangani: Menyebabkan jendela Tumpukan Panggilan mengembalikan tumpukan panggilan ke titik sebelum pengecualian yang tidak tertangani terjadi.

Gunakan cara eksperimental untuk meluncurkan debug JavaScript Chrome saat menjalankan Visual Studio sebagai Administrator: Memberi tahu Visual Studio untuk mencoba cara baru meluncurkan Chrome selama proses debug JavaScript.

Peringatkan jika tidak ada simbol saat diluncurkan (hanya asli): Menampilkan kotak dialog peringatan saat Anda men-debug program yang informasi simbolnya tidak ada pada debugger.

Peringatkan jika penelusuran kesalahan skrip dinonaktifkan saat peluncuran: Menampilkan kotak dialog peringatan saat debugger diluncurkan dengan penelusuran kesalahan skrip dinonaktifkan.

Gunakan Mode Kompatibilitas Terkelola: Saat opsi ini dipilih, debugger menggunakan debugger terkelola Visual Studio 2010, yang diperlukan saat Anda men-debug kode C++/CLI.

Gunakan Mode Kompatibilitas Asli: Saat opsi ini dipilih, debugger menggunakan debugger asli Visual Studio 2010 alih-alih debugger asli baru.

  • Gunakan opsi ini saat Anda men-debug kode .NET C++, karena mesin penelusuran kesalahan baru tidak mendukung evaluasi ekspresi .NET C++. Namun, mengaktifkan Mode Kompatibilitas Asli akan menonaktifkan banyak fitur yang bergantung pada implementasi debugger saat ini untuk beroperasi. Misalnya, mesin warisan kekurangan banyak visualizer untuk tipe bawaan seperti std::string dalam proyek Visual Studio 2015. Gunakan proyek Visual Studio 2013 untuk pengalaman debug yang optimal dalam kasus ini.

Baca juga