Bagikan melalui


Debug dari proyek DLL di Visual Studio (C#, C++, Visual Basic, F#)

Salah satu cara untuk mendebug proyek DLL adalah dengan menentukan aplikasi panggilan di properti proyek DLL. Kemudian, Anda dapat memulai penelusuran kesalahan dari proyek DLL itu sendiri. Agar metode ini berfungsi, aplikasi harus memanggil DLL yang sama di lokasi yang sama dengan yang dikonfigurasi. Jika aplikasi menemukan dan memuat versi DLL yang berbeda, versi tersebut tidak akan berisi titik henti Anda. Untuk metode penelusuran kesalahan DLL lainnya, lihat Mendebug proyek DLL.

Jika aplikasi terkelola Anda memanggil DLL asli, atau aplikasi asli Anda memanggil DLL terkelola, Anda dapat mendebug DLL dan aplikasi panggilan. Untuk mengetahui informasi selengkapnya, lihat Cara: Mendebug dalam mode campuran.

Proyek DLL asli dan terkelola memiliki pengaturan yang berbeda untuk menentukan aplikasi panggilan.

Menentukan aplikasi panggilan dalam proyek DLL asli

  1. Pilih proyek C++ DLL di Penjelajah Solusi. Pilih ikon Properti, tekan Alt+Enter, atau klik kanan dan pilih Properti.

  2. Dalam kotak dialog <Proyek> Halaman Properti, pastikan bidang Konfigurasi di bagian atas jendela diatur ke Debug.

  3. Pilih Properti Konfigurasi>Penelusuran Kesalahan.

  4. Di daftar Debugger untuk diluncurkan, pilih Debugger Windows Lokal atau Debugger Windows Jarak Jauh.

  5. Di kotak Perintah atau Perintah Jarak Jauh, tambahkan jalur yang sepenuhnya memenuhi syarat dan nama file aplikasi panggilan, seperti file .exe.

    Debug Properties window

  6. Tambahkan argumen program yang diperlukan ke kotak Argumen Perintah.

  7. Pilih OK.

Tentukan aplikasi panggilan dalam proyek C# DLL (.NET Core, .NET 5+)

  1. Pilih proyek C# atau Visual Basic DLL di Penjelajah Solusi. Pilih ikon Properti, tekan Alt+Enter, atau klik kanan dan pilih Properti.

  2. Di tab Debug, pilih Buka antarmuka pengguna profil peluncuran Debug.

  3. Di kotak dialog Luncurkan Profil, pilih ikon Buat profil baru, dan pilih Dapat Dieksekusi.

    Screenshot of the UI to create a new debug profile.

  4. Di profil baru, di bawah Dapat Dieksekusi, telusuri ke lokasi file yang dapat dieksekusi (.exe) dan pilih.

  5. Di kotak dialog Luncurkan Profil, perhatikan nama profil default, lalu pilih dan hapus.

  6. Ganti nama profil baru menjadi nama yang sama dengan profil default.

    Atau, Anda dapat mengedit launchSettings.json secara manual untuk mendapatkan hasil yang sama. Anda ingin profil pertama di launchSettings.json cocok dengan nama Pustaka Kelas, dan Anda ingin profil tersebut dicantumkan terlebih dahulu dalam file.

Menentukan aplikasi panggilan dalam proyek DLL terkelola

  1. Pilih proyek C# atau Visual Basic DLL di Penjelajah Solusi. Pilih ikon Properti, tekan Alt+Enter, atau klik kanan dan pilih Properti.

  2. Pastikan bahwa bidang Konfigurasi di bagian atas jendela diatur ke Debug.

  3. Di bawah Tindakan mulai:

    • Untuk DLL .NET Framework, pilih Mulai program eksternal, dan tambahkan jalur dan nama aplikasi panggilan yang sepenuhnya memenuhi syarat.

    • Atau, pilih Mulai browser dengan URL dan isi URL aplikasi ASP.NET lokal.

    • Untuk DLL .NET Core di Visual Basic, halaman Properti Debug berbeda. Pilih Executable dari menu drop-down Luncurkan, lalu tambahkan jalur dan nama aplikasi panggilan yang sepenuhnya memenuhi syarat di bidang Executable.
    • Untuk DLL .NET Core, halaman Properti Debug berbeda. Pilih Executable dari menu drop-down Luncurkan, lalu tambahkan jalur dan nama aplikasi panggilan yang sepenuhnya memenuhi syarat di bidang Executable.
  4. Tambahkan argumen baris perintah yang diperlukan di Argumen baris perintah atau bidang Argumen aplikasi.

    C# Debug Properties window

  5. Gunakan File>Simpan Item Terpilih atau Ctrl+S untuk menyimpan perubahan.

Mendebug dari proyek DLL

  1. Atur titik henti dalam proyek DLL.

  2. Klik kanan proyek dan pilih Atur sebagai Proyek Startup.

  3. Pastikan bidang Konfigurasi Solusi diatur ke Debug. Tekan F5, klik panah Mulai hijau, atau pilih Debug>Mulai Penelusuran Kesalahan.

Tips tambahan:

  • Jika penelusuran kesalahan tidak mencapai titik henti Anda, pastikan output DLL Anda (secara default, folder <project>\Debug ) adalah lokasi yang dipanggil aplikasi panggilan.

  • Jika Anda ingin memecah kode di aplikasi panggilan terkelola dari DLL asli, atau sebaliknya, aktifkan penelusuran kesalahan mode campuran.

  • Dalam beberapa skenario, Anda mungkin perlu memberi tahu debugger tempat menemukan kode sumber. Untuk mengetahui informasi selengkapnya, lihat Menggunakan halaman Tanpa Simbol Dimuat/Tidak Ada Sumber yang Dimuat.