Select Code For Compilation

Category: Application Features

Date: 03-28-2012

Return to Index


 
'Primary Code:
'Example#1
'Choose one set of code with PBMain for EXE compilation
'Choose another set of code with PBLibMain for DLL compilation
'%PB-EXE is a pre-defined equate - TRUE for EXE compilation, FALSE for DLL compilation
 
#If %PB_EXE         '%PB_EXE equate is TRUE for EXE compiliation
  Function PBMain
    ...statements
  End Function
#Else                  '%PB_EXE equate is FALSE for DLL compiliation
  Function PBLibMain
    ...statements
  End Function
#EndIf
 
'Example#2
'Uses a user-defined equate to determine which lines to include in compilation
%Debug = %True    'user-defined equate
#If %Debug
... compile these statements
#Else
... compile these statements
#EndIf
 
'Example#3
'Uses %DEF, which tests whether an equate has been defined
%MyEquateA = 0    'comment this out to skip compilation of ...statements
#If %Def{%MyEquateA}
   ...statements
#EndIf
 
 
'Compilable Example:
'This example sets an equate to a value, based on the value of
'another equate.
#Compiler PBWin 9, PBWin 10
#Compile EXE
#Dim All
#Include "Win32API.inc"
%Debug = %True    'user-defined equate
#If %Debug
$ID_Equate = "Debug=True"
#Else
$ID_Equate = "Debug=False"
#EndIf
Global hDlg As Dword
 
Function PBMain() As Long
   Dialog New Pixels, 0, "Test Code",300,300,200,200, %WS_OverlappedWindow To hDlg
   Control Add Button, hDlg, 100,"Push", 50,10,100,20
   Dialog Show Modal hDlg Call DlgProc
End Function
 
CallBack Function DlgProc() As Long
   If CB.Msg = %WM_Command AND CB.Ctl = 100 AND CB.Ctlmsg = %BN_Clicked Then
      MsgBox $ID_Equate
   End If
End Function
 
'gbs_00057
'Date: 03-10-2012


created by gbSnippets
http://www.garybeene.com/sw/gbsnippets.htm