Debug Mode In VB 6?

Nahum picture Nahum · Jan 29, 2012 · Viewed 14.4k times · Source

How can I do something similar to the following C code in VB 6?

#ifdef _DEBUG_
    // do things
#else
    // do other things
#end if

Answer

Cody Gray picture Cody Gray · Jan 29, 2012

It's pretty much the same as the other languages that you're used to. The syntax looks like this:

#If DEBUG = 1 Then
    ' Do something
#Else
    ' Do something else
#End If

It's easy to remember if you just remember that the syntax is exactly the same as the other flow-control statements in VB 6, except that the compile-time conditionals start with a pound sign (#).

The trick is actually defining the DEBUG (or whatever) constant because I'm pretty sure that there isn't one defined by default. There are two standard ways of doing it:

  1. Use the #Const keyword to define the constant at the top of each source file. The definition that you establish in this way is valid throughout the entire source module. It would look something like:

     #Const DEBUG = 1
    
  2. Set the constant in the project's properties. This would define a constant that is valid throughout the entire project (and is probably what you want for a "Debug" mode indicator).

    To do this, enter something like the following in the "Conditional Compilation Constants" textbox on the "Make" tab of the "Project Properties" dialog box:

     DEBUG = 1
    

    You can define multiple constants in this dialog by separating each of them with a colon (:):

     DEBUG = 1 : VERSION2 = 1
    

Remember that any constant which is not defined is assumed to be 0.