Share via


Pengaturan proyek untuk konfigurasi debug C++

Anda dapat mengubah pengaturan proyek untuk konfigurasi debug C atau C++ di kotak dialog Halaman Properti, seperti yang dibahas dalam Cara: Mengatur konfigurasi debug dan rilis. Tabel berikut menunjukkan tempat untuk menemukan pengaturan terkait debugger di kotak dialog Halaman Properti.

Catatan

Pengaturan proyek debug dalam kategori Properti Konfigurasi/Penelusuran Kesalahan berbeda untuk aplikasi UWP dan untuk komponen yang ditulis dalam C++. Lihat Memulai sesi debug (VB, C#, C++ dan XAML).

Setiap pengaturan properti debug secara otomatis ditulis dan disimpan ke file "per pengguna" (.vcxproj.user) untuk solusi Anda saat Anda menyimpan solusi Anda.

Tentukan debugger mana yang akan digunakan dalam kotak daftar Debugger yang akan diluncurkan, seperti yang dijelaskan dalam tabel berikut ini. Pilihan Anda akan memengaruhi properti mana yang terlihat.

Folder Properti Konfigurasi (Kategori penelusuran kesalahan)

Pengaturan Keterangan
Debugger yang akan diluncurkan Menentukan debugger yang akan dijalankan, dengan pilihan berikut:

- Debugger Windows Lokal
- Debugger Windows Jarak Jauh
- Debugger Browser Web
- Debugger Layanan Web
Perintah (Debugger Windows Lokal) Menentukan perintah untuk memulai program yang sedang Anda debug di komputer lokal.
Perintah Jarak Jauh (Debugger Windows Jarak Jauh) Jalur untuk .exe di komputer jarak jauh. Masukkan jalur seperti yang Akan Anda masukkan pada komputer jarak jauh.
Argumen Perintah (Debugger Windows Lokal)

Argumen Perintah Jarak Jauh (Debugger Windows Jarak Jauh)
- Menentukan argumen untuk perintah yang ditentukan sebelumnya.

Anda dapat menggunakan operator pengalihan berikut dalam kotak ini:

< file
Membaca stdin dari file.

> file
Menulis stdout ke file.

>> file
Menambahkan stdout ke file.

2>file
Menulis stderr ke file.

2>>file
Menambahkan stderr ke file.

2> &1
Mengirim output stderr (2) ke lokasi yang sama dengan stdout (1).

1> &2
Mengirim output stdout (1) ke lokasi yang sama dengan stderr (2).

Dalam kebanyakan kasus, operator ini hanya berlaku untuk aplikasi konsol.

Jika Anda perlu meloloskan karakter dalam perintah, Anda bisa menggunakan nilai ASCII, seperti %25 untuk mengganti %. Jika Anda menggunakan perintah Mulai Penelusuran Kesalahan, tanda kutip ganda akan keluar dari perintah sebelumnya, seperti "<" untuk menggantikan <.
Direktori Kerja Menentukan direktori kerja program yang sedang di-debug, relatif terhadap direktori proyek tempat EXE Anda berada. Jika Anda membiarkan ini kosong, direktori kerja adalah direktori proyek. Untuk penelusuran kesalahan jarak jauh, direktori proyek berada di server jarak jauh.
Lampirkan (Debugger Windows Lokal dan Debugger Windows Jarak Jauh) Menentukan apakah akan memulai atau melampirkan ke aplikasi. Pengaturan default-nya adalah Tidak.
Nama Server Jarak Jauh (Debugger Windows Jarak Jauh) Menentukan nama komputer (selain komputer Anda) tempat Anda ingin men-debug aplikasi.

Makro Build RemoteMachine diatur ke nilai properti ini; untuk informasi selengkapnya, lihat Makro untuk perintah dan properti build.
Koneksi (Debugger Windows Jarak Jauh) Memungkinkan Anda beralih antara jenis koneksi standar dan tanpa autentikasi untuk penelusuran kesalahan jarak jauh. Tentukan nama komputer jarak jauh dalam kotak Nama Server Jarak Jauh. Jenis koneksi meliputi yang berikut ini:

- Jarak Jauh dengan Autentikasi Windows
- Jarak Jauh Tanpa Autentikasi

Catatan Penelusuran kesalahan jarak jauh tanpa Autentikasi dapat membuat komputer jarak jauh rentan terhadap pelanggaran keamanan. Mode autentikasi Windows lebih aman.

Untuk informasi selengkapnya, lihat Penelusuran kesalahan jarak jauh.
URL HTTP (Debugger Layanan Web dan Debugger Browser Web) Menentukan URL tempat proyek yang Anda debug berada.
Jenis Debugger Menentukan jenis debugger yang akan digunakan: Hanya Native, Hanya Terkelola, Hanya GPU, Campuran, Otomatis (default), atau Skrip.

- Hanya Native adalah untuk kode C++ yang tidak dikelola.
- Hanya Terkelola untuk kode yang berjalan di bawah runtime bahasa umum (kode terkelola).
- Campuran memanggil debugger untuk kode terkelola dan tidak terkelola.
- Otomatis menentukan jenis debugger berdasarkan informasi pengompilasi dan EXE.
- Skrip memanggil debugger untuk skrip.
- Hanya GPU untuk kode AMP C++ yang berjalan pada perangkat GPU atau pada rasterizer referensi DirectX. Lihat Men-debug kode GPU.
Lingkungan (Debugger Windows Lokal dan Debugger Windows Jarak Jauh) Menentukan variabel lingkungan untuk program yang Anda debug. Gunakan sintaks variabel lingkungan standar (misalnya, PATH="%SystemRoot%\..."). Variabel ini mengambil alih lingkungan sistem atau digabungkan dengan lingkungan sistem, tergantung pada pengaturan Gabungkan Lingkungan. Ketika Anda mengklik di kolom kanan, "Edit..." muncul. Pilih tautan tersebut untuk membuka Editor Properti dan mengedit variabel lingkungan. Untuk menambahkan beberapa variabel lingkungan, gunakan Editor Properti dan tambahkan satu variabel per baris.
Gabungkan Lingkungan (Debugger Windows Lokal) Menentukan apakah variabel yang ditentukan dalam kotak Lingkungan akan digabungkan dengan lingkungan yang ditentukan oleh sistem operasi. Pengaturan default-nya adalah Ya.
Penelusuran Kesalahan SQL (semua kecuali Debugger Kluster MPI) Memungkinkan penelusuran kesalahan prosedur SQL dari aplikasi Visual C++Anda. Pengaturan default-nya adalah Tidak.
Jenis Akselerator Penelusuran Kesalahan (hanya penelusuran kesalahan GPU) Menentukan perangkat GPU yang akan digunakan untuk penelusuran kesalahan. Menginstal driver perangkat untuk perangkat GPU yang kompatibel akan menambahkan opsi tambahan. Pengaturan default-nya adalah GPU - Software Emulator.
Perilaku Titik Henti Default GPU (hanya penelusuran kesalahan GPU) Menentukan apakah peristiwa titik henti harus dinaikkan untuk setiap alur dalam warp SIMD. Pengaturan default-nya adalah menaikkan peristiwa titik henti hanya sekali per warp.
Akselerator Default Amp Menentukan akselerator AMP default saat men-debug kode GPU. Pilih akselerator perangkat lunak WARP untuk menyelidiki apakah masalah disebabkan oleh perangkat keras atau driver, bukan kode Anda.
Direktori Penyebaran (Debugger Windows Jarak Jauh) Menentukan jalur pada komputer jarak jauh tempat output proyek akan disalin sebelum diluncurkan. Jalur ini bisa menjadi berbagi jaringan pada komputer jarak jauh, atau bisa menjadi jalur ke folder pada komputer jarak jauh. Pengaturan default kosong, yang berarti output proyek tidak disalin ke berbagi jaringan. Untuk mengaktifkan penyebaran file, Anda juga harus memilih kotak centang Sebarkan di kotak dialog Pengelola Konfigurasi. Untuk informasi selengkapnya, lihat Cara: Membuat dan mengedit konfigurasi.
File Tambahan yang akan Disebarkan (Debugger Windows Jarak Jauh) Jika properti Direktori Penyebaran diatur, ini adalah daftar folder atau file tambahan yang dibatasi titik koma untuk disalin ke direktori penyebaran. Pengaturan default kosong, yang berarti tidak ada folder atau file tambahan yang disalin ke direktori penyebaran. Untuk menyalin konten folder ke folder yang sama di Direktori Penyebaran, tentukan nama folder. Untuk mengaktifkan penyebaran file, Anda juga harus memilih kotak centang Sebarkan di kotak dialog Pengelola Konfigurasi. Untuk informasi selengkapnya, lihat Cara: Membuat dan mengedit konfigurasi.
Menyebarkan Pustaka Runtime Debug Visual C++ (Debugger Windows Jarak Jauh) Jika properti Direktori Penyebaran diatur, ini menentukan apakah pustaka runtime debug Visual C++ untuk platform saat ini harus disalin ke berbagi jaringan. Pengaturan default-nya adalah Ya.

Folder C/C++ (Kategori umum)

Pengaturan Deskripsi
Format Informasi Debug (/Z7, /Zd, Zi, /ZI) Menentukan jenis informasi debug yang akan dibuat untuk proyek.

Opsi default (/ZI) membuat database program (PDB) dalam format Edit dan Lanjutkan yang kompatibel. Untuk informasi selengkapnya, lihat /Z7, /Zd, /Zi, /ZI (Format informasi debug).

Folder C/C++ (Kategori pengoptimalan)

Pengaturan Deskripsi
Pengoptimalan Menentukan apakah pengompilasi harus mengoptimalkan kode yang dihasilkannya. Pengoptimalan mengubah kode yang dijalankan. Kode yang dioptimalkan tidak lagi cocok dengan kode sumber, yang membuat penelusuran kesalahan lebih sulit.

Opsi default (Dinonaktifkan (/0d)) menekan pengoptimalan. Anda dapat mengembangkan dengan pengoptimalan ditekan, lalu mengaktifkannya saat Anda membuat versi produksi kode Anda.

Folder linker (Kategori penelusuran kesalahan)

Pengaturan Deskripsi
Buat Info Debug (/DEBUG) Memberi tahu linker untuk menyertakan informasi debug, yang akan memiliki format yang ditentukan oleh /Z7, /Zd, Zi, atau /ZI.
Buat File Database Program (/PDB:name) Menentukan nama file database program (PDB) dalam kotak ini. Anda harus memilih ZI atau /Zi untuk Format Informasi Debug.
Potong Simbol Privat (/PDBSTRIPPED:filename) Menentukan nama file PDB dalam kotak ini jika Anda tidak ingin menyertakan simbol privat dalam file PDB. Opsi ini membuat file PDB kedua saat Anda membuat citra program dengan salah satu opsi pengompilasi atau linker yang menghasilkan file PDB, seperti /DEBUG, /Z7, /Zd. Atau /Zi. File PDB kedua ini menghilangkan simbol yang tidak ingin Anda kirimkan kepada pelanggan Anda. Untuk informasi lebih lanjut, lihat /PDBSTRIPPED (Simbol privat strip).
Buat File Peta (/MAP) Memberi tahu linker untuk membuat file peta selama penautan. Pengaturan default-nya adalah Tidak. Untuk informasi lebih lanjut, lihat /MAP (Menghasilkan mapfile).
Nama File Peta (/MAP:name) Jika Anda memilih Buat File Peta, Anda dapat menentukan file peta dalam kotak ini. Untuk informasi lebih lanjut, lihat /MAP (Menghasilkan mapfile).
Ekspor Peta (/MAPINFO:EXPORTS) Menyertakan fungsi yang diekspor di file peta. Pengaturan default-nya adalah Tidak. Untuk informasi selengkapnya, lihat /MAPINFO (Sertakan Informasi di Mapfile).
Assembly yang Dapat Di-debug (/ASSEMBLYDEBUG) Menentukan pengaturan untuk opsi Linker /ASSEMBLYDEBUG. Kemungkinan nilai adalah:

- Tidak ada atribut yang dapat di-debug yang dipancarkan.
- Pelacakan runtime dan nonaktifkan pengoptimalan (/ASSEMBLYDEBUG). Ini adalah pengaturan default,
- Tanpa pelacakan runtime dan nonaktifkan pengoptimalan (/ASSEMBLYDEBUG).
- <mewarisi dari default induk atau proyek>.
- Untuk informasi lebih lanjut, lihat /ASSEMBLYDEBUG (Menambahkan DebuggableAttribute).

Anda dapat mengubah pengaturan ini di folder Properti Konfigurasi (kategori Debug) secara terprogram dengan menggunakan antarmuka Microsoft.VisualStudio.VCProjectEngine.VCDebugSettings. Untuk informasi selengkapnya, lihat VCDebugSettings .

Pengaturan proyek lainnya

Untuk men-debug jenis proyek seperti pustaka statis dan DLL, proyek Visual Studio Anda harus dapat menemukan file yang benar. Saat kode sumber tersedia, Anda dapat menambahkan pustaka statis dan DLL sebagai proyek terpisah ke solusi yang sama, untuk mempermudah penelusuran kesalahan. Untuk informasi tentang membuat jenis proyek ini, lihat Membuat dan menggunakan Pustaka Tautan Dinamis (DLL) dan Membuat menggunakan pustaka statis. Dengan kode sumber yang tersedia, Anda juga dapat membuat proyek Visual Studio baru dengan memilih File>Baru>Proyek dari Kode yang Sudah Ada.

Untuk men-debug DLL yang berada di luar proyek Anda, lihat Men-debug proyek DLL. Jika Anda perlu men-debug proyek DLL Anda sendiri, tetapi tidak memiliki akses ke proyek untuk aplikasi panggilan, lihat Cara men-debug dari proyek DLL.

Baca juga