How To Debug .NET Application Remotely Using Visual Studio 2010 Remote Debugger

.NET Framework , Posted at : Jan/02/2013  
2908 Views   0 Comments

Proses debugging merupakan salah satu aktivitas programmer yang cukup penting untuk mencari penyebab error yang terjadi pada aplikasi yang digunakan. Debugging secara lokal pada saat fase pembuatan aplikasi mungkin tidak asing lagi dilakukan. Namun bagaimana hal nya apabila aplikasi yang akan di debug berada di komputer yang berbeda dan sudah digunakan oleh beberapa user? Visual Studio sudah menyediakan tools yang digunakan untuk melakukan debug secara remote.

Pada artikel ini saya akan membuat aplikasi sederhana untuk di deploy ke komputer yang berbeda dan dilakukan proses debugging secara remote. Operating system yang digunakan kedua komputer tersebut yaitu Windows 7 x64 Ultimate dan toolsnya yaitu Visual Studio 2010 Ultimate. Berikut ini langkah-langkahnya :

1. Buat aplikasi VB windows forms application dan berikan nama RemoteDebugSample.

2. Design form seperti berikut ini :

3. Ketikkan kode berikut di form tersebut dan tempatkan breakpoint sesuai dengan kebutuhan :

4. Double klik My Project di Solution Explorer. Buka tab Compile dan klik tombol Advanced Compiled Options.

5. Ubah item di Dropdownlist Generate Debug Info ke pdb-only. Pdb (Program Database) merupakan file yang dibutuhkan oleh debugger untuk melakukan debugging, tanpa file ini proses debugging tidak dapat dilakukan karena di dalam file tersebut berisi informasi-informasi yang dibutuhkan oleh debugger untuk debugging.

6. Build project dan pastikan project berada pada mode Debug (bukan Release).

7. Copy file exe hasil kompilasi dari folder Debug beserta file .pdb ke komputer yang berbeda. File hasil kompilasi yang di copy ke komputer remote harus memiliki build number yang sama dengan file exe yang berada di source code nya. Proses debugging tidak dapat dilakukan apabila kedua assembly tersebut memiliki build number yang berbeda.

8. Copy file-file dari lokasi berikut dibawah ini pada komputer lokal yang berfungsi sebagai tools untuk monitoring proses remote dan pengaturan autentikasi ke komputer remote :

Perlu diperhatikan bahwa di komputer remote tidak membutuhkan Visual Studio terinstal, hanya cukup file-file tersebut diatas. Selain itu Remote Debugger tools yang di copy yaitu yang memiliki versi 32 bit (x86), hal tersebut dilakukan karena target hasil kompilasi dari project yang digunakan berupa 32 bit (x86) meskipun pembuatan aplikasi dilakukan di atas OS dan Komputer 64 bit.

9. Jalankan aplikasi yang berada di komputer remote.

10. Langkah berikut ini sangat penting untuk proses autentikasi agar proses debugging secara remote dapat dilakukan. Buat user dan password yang sama yang digunakan di masing-masing komputer. Misalnya, apabila di komputer lokal menggunakan user Admin1 untuk login ke windows dan melakukan debugging maka di komputer remote juga harus dibuatkan user dan password yang sama. Kemudian apabila di komputer remote menggunakan user Admin2 untuk login ke windows dan menjalankan aplikasinya maka di komputer lokal juga harus dibuatkan user dan password yang sama yaitu Admin2.

11. Jalankan tools msvsmon.exe di komputer remote yang sudah di copy kan sebelumnya dari komputer lokal. Klik tombol Yes apabila muncul kotak dialog ini sebelumnya :

Tools sudah mulai bekerja dan menunggu koneksi dari komputer lainnya.

Perhatikan nama server nya (Native@Native-4752). Nama server tersebut nantinya akan digunakan sebagai input untuk field Qualifier dari komputer lokal sebagai perujuk nama server yang akan di remote.

12. Klik menu Tools –> Options dan klik tombol Permissions di kotak dialog Options :

13. Tambahkan user yang sudah dibuat di langkah ke 10. User yang ditambahkan merupakan user yang digunakan oleh komputer lokal untuk login ke windows lokal dan melakukan debugging :

14. Klik tombol Yes apabila muncul kotak dialog berikut ini :

15. Buka source code project di komputer lokal dengan Visual Studio. Klik menu Tools –> Attach to Process atau menu Debug –> Attach to Process. Pilih item Default di field Transport dan isi field Qualifier dengan nama server seperti yang sudah dijelaskan pada langkah-11, kemudian tekan Enter. Semua process yang berjalan di komputer remote akan muncul di list Available Processes. Pilih process RemoteDebugSample.exe dan klik tombol Attach :

16. Kotak dialog berikut ini akan muncul pada saat melakukan Attach dimana Remote Debugger tools yang dijalankan di komputer remote merupakan versi 64 bit seperti yang sudah dijelaskan pada langkah-8 :

17. Setelah prosess Attach berhasil, lakukan pengisian input data di form remote tersebut dan klik tombol Get Average :

18. Program akan berhenti pada breakpoint yang sudah dilakukan pada langkah-3 :

19. Perhatikan Visual Studio Remote Debugging Monitor yang terdapat di komputer remote :

Selamat! Remote debugging sudah dilakukan dengan berhasil…Happy Debugging :-) !


[Comments]

[Write your comment]
Name (required)
Email (required-will not published)
 
Comment

HL90
Input code above below (Case Sensitive) :
About Me 
Rully Yulian MF
Rully Yulian Muhammad Firmansyah | Microsoft Certified Trainer | IT Trainer at Native Enterprise | IT Consultant | Software Developer | MCAD | MCPD | MOS | Bandung, West Java, Indonesia.
[Read More...]
Top Download 
Mapping Hak Akses User Pada MenuStrip Sampai Control Button : Downloaded 6083 times  
Bagaimana caranya menginstal database ketika deploying sebuah aplikasi? : Downloaded 4689 times  
Simple Voice Engine Application With Sound Player Class... : Downloaded 3554 times  
Change Group,Sort Order, Filtering By Date in Crystal Reports : Downloaded 3324 times  
WinForms DataGrid Paging With SqlDataAdapter : Downloaded 2706 times  
Links 
Certifications 
MOS 2007
MCT
MCPD
MCTS
MCAD.NET
ASP.NET Brainbench
Native Enterprise 
Follow Me 
Facebook   LinkedIn   Twitter
Syndication 
Hosted By 
Native Enterprise News 
© Copyright 2006-2016   Rully Yulian MF   All rights reserved.