Chapter 10. Debugging

In this chapter, we look at some techniques for debugging an AppForge application on the POSE and the Palm handheld. These techniques are important, since you cannot step through an AppForge application or set breakpoints after it is installed on POSE or the handheld. We show how to use AppForge’s Debug module in conjunction with the Palm Reporter and the Palm’s buttons in POSE to obtain trace output at various points in an AppForge program. We also show how to send debug output to a Palm database, which can be used on both POSE and the handheld.

These techniques are only a starting point, however. You will undoubtedly expand these or develop techniques of your own to suit your needs.

Conditional Compilation

Conditional compilation is a part of Visual Basic, and allows you to compile out certain parts of your code for release versus debug versions, for example. Consider the Form_Load subroutine shown in Example 10-1.

Example 10-1. Conditional compilation example

#Const AFDEBUG = 1

Private Sub Form_Load(  )
 
   'Form initialization ...
    txtFlow.Text = 150
        
#If AFDEBUG Then
    MsgBox "txtFlow.Text = " + txtFlow.Text
#End If

End Sub

After the form is initialized, the contents of the txtFlow component are displayed in a message box. The #If...#End If block is a conditional compilation block. If the AFDEBUG argument is 1, Visual Basic includes this code block, and displays the results. If AFDEBUG is 0, this block is excluded from the program, and the results are not displayed. ...

Get Programming Visual Basic for the Palm OS now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.