Solved

Diffrence between debug & release versions

Posted on 2009-07-04
5
244 Views
Last Modified: 2013-12-17
Hello,

I am new to C#.
I wrote a C# application, compiled it as Debug version (I have a dll inside inside bin folder) and gave it to my customer.
Should I compile it as Release version?
What is a diffrence between Debug & Release version? When should I use each of these compilations?

THANKS
Margarit

Debug-Release.JPG
0
Comment
Question by:margarit
  • 2
  • 2
5 Comments
 
LVL 44

Accepted Solution

by:
AndyAinscow earned 250 total points
ID: 24777644
You should always distribute the release versions.
Typically a debug build contains extra information/code to assist in debugging - usually means bigger and slower.
0
 
LVL 2

Assisted Solution

by:Erbureth
Erbureth earned 250 total points
ID: 24777649
When you compile a program in Debug mode, usually no optimizations are made, and, what is more important, symbolic names of functions and variables are exported too, so you can debug your program easily. On the other hand, Release mode compilation makes some speed optimizations and no debug symbols are included, so the resulting binary is smaller and faster. So always remember to switch to Release mode before compiling your program for distribution :)
0
 

Author Comment

by:margarit
ID: 24778829
Thanks for the useful comments. One more question:
When I give the debug version to customer I give him EXE + dll.
Does executable from release version contains dll inside of it, or I should use EXE+dll too?
THANKS
0
 
LVL 44

Expert Comment

by:AndyAinscow
ID: 24778975
You still need both.
You build a release version of the exe AND a release version of the dll
0
 

Author Closing Comment

by:margarit
ID: 31599803
THANKS
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Update (December 2011): Since this article was published, the things have changed for good for Android native developers. The Sequoyah Project (http://www.eclipse.org/sequoyah/) automates most of the tasks discussed in this article. You can even fin…
This article shows how to deploy dynamic backgrounds to computers depending on the aspect ratio of display
The viewer will learn how to use NetBeans IDE 8.0 for Windows to connect to a MySQL database. Open Services Panel: Create a new connection using New Connection Wizard: Create a test database called eetutorial: Create a new test tabel called ee…
THe viewer will learn how to use NetBeans IDE 8.0 for Windows to perform CRUD operations on a MySql database.

910 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

17 Experts available now in Live!

Get 1:1 Help Now