Debug.Print Release ?

  • Thread starter Thread starter swartzbill2000
  • Start date Start date
S

swartzbill2000

Hello,
I have a VB 2005 Express project with a TraceListener-derived class to
route Debug.Print output to a log file. It works fine for Debug builds.
What is the correct combination of changes to make it work in Release
build?
Bill
 
Bill,
Rather then attempt to expose the Debug object for Release builds, I would
recommend you use Trace.Print instead. As the Trace object is normally
enabled in Release builds, while Debug is only enabled in Debug builds.

If you really want the Debug object in Release Builds you can use "Project -
Properties - Compile - Advanced Compile Options - Define DEBUG constant" to
define the DEBUG compile time constant.

NOTE: "Define DEBUG constant" will enable all conditional code that uses the
Debug constant. Whether this code is using #if Debug or
<Conditional("Debug")>

FWIW: The System.Diagnostics.Debug (Debug.Print) has a
<Conditional("Debug")> attribute on it, you can apply the same attribute to
your code to achieve the same effect...

--
Hope this helps
Jay [MVP - Outlook]
..NET Application Architect, Enthusiast, & Evangelist
T.S. Bradley - http://www.tsbradley.net


| Hello,
| I have a VB 2005 Express project with a TraceListener-derived class to
| route Debug.Print output to a log file. It works fine for Debug builds.
| What is the correct combination of changes to make it work in Release
| build?
| Bill
|
 
2 things:

1 In "Project - Properties - Compile", I see no "Advanced Compile
Options"

2 The IDE informs me that Print is not a member of Trace

Bill
 
| 1 In "Project - Properties - Compile", I see no "Advanced Compile
| Options"
VS 2005 correct? "Advance Compile Options" is a huge button just below the
build output path, just above the All configurations text on the Compile
tab. The third "line" from the top.

(I'm expecting VS 2005 as Debug.Print is new in 2005).

| 2 The IDE informs me that Print is not a member of Trace
My mistake: Try Trace.WriteLine instead... Or possibly Trace.TraceWarning,
TraceError, or TraceInformation.

--
Hope this helps
Jay [MVP - Outlook]
..NET Application Architect, Enthusiast, & Evangelist
T.S. Bradley - http://www.tsbradley.net


|2 things:
|
| 1 In "Project - Properties - Compile", I see no "Advanced Compile
| Options"
|
| 2 The IDE informs me that Print is not a member of Trace
|
| Bill
|
| Jay B. Harlow [MVP - Outlook] wrote:
| > Bill,
| > Rather then attempt to expose the Debug object for Release builds, I
would
| > recommend you use Trace.Print instead. As the Trace object is normally
| > enabled in Release builds, while Debug is only enabled in Debug builds.
| >
| > If you really want the Debug object in Release Builds you can use
"Project -
| > Properties - Compile - Advanced Compile Options - Define DEBUG constant"
to
| > define the DEBUG compile time constant.
| >
| > NOTE: "Define DEBUG constant" will enable all conditional code that uses
the
| > Debug constant. Whether this code is using #if Debug or
| > <Conditional("Debug")>
| >
| > FWIW: The System.Diagnostics.Debug (Debug.Print) has a
| > <Conditional("Debug")> attribute on it, you can apply the same attribute
to
| > your code to achieve the same effect...
| >
| > --
| > Hope this helps
| > Jay [MVP - Outlook]
| > .NET Application Architect, Enthusiast, & Evangelist
| > T.S. Bradley - http://www.tsbradley.net
| >
| >
| > | > | Hello,
| > | I have a VB 2005 Express project with a TraceListener-derived class to
| > | route Debug.Print output to a log file. It works fine for Debug
builds.
| > | What is the correct combination of changes to make it work in Release
| > | build?
| > | Bill
| > |
|
 
Hello,
For some reason, my copy of VB 2005 Express has no "Advance Compile
Options" button. Is it an IDE configuration issue?
Bill
 
For some reason, my copy of VB 2005 Express has no "Advance Compile
Options" button. Is it an IDE configuration issue?

The Express editions come with a "streamlined" UI, so maybe that's why the
option is missing :-(.
 
Ah! There's the Rub.

I'm using VS.NET 2005 Professional!

I don't have 2005 Express loaded to see what the UI looks like there. As
Herfried suggests, the option may not be available.

--
Hope this helps
Jay [MVP - Outlook]
..NET Application Architect, Enthusiast, & Evangelist
T.S. Bradley - http://www.tsbradley.net


| Hello,
| For some reason, my copy of VB 2005 Express has no "Advance Compile
| Options" button. Is it an IDE configuration issue?
| Bill
|
 
Back
Top