条件编译#If 测试编译常量表达式 Then 语句 1 #Else 语句 2 #End If例子#Const DebugFlag = 1 '设置编译常量 Private Sub Command1_Click() #If DebugFlag = 1 Then MsgBox "共享版本" #Else MsgBox "正式版本" #End If End Sub
如何使用编写的VB程序可同时适用于16位和32位环境随着WIN95等32位操作系统的广泛使用,我们编写的VB程序可能有时需要运行在32位环境中,也可能需要适应于原来的WIN3.X环境,为了使程序能适用于两种环境,我产不必反复改写程序,可以利用条件编译语句,在不同的环境中笪新编译一遍就可以了。VB提供了条件编译语句,可根据条件常量的值决定哪些语句不编译,这样可根据条件来决定不同版本下编译相应版本的程序语句。语法是: #If...Then...Else #End if条件常量定义语句为:#const常量=值,此常量的声明必须位于窗体或模块的顶部,以便下面的所有程序都可以使用它,在不同的环境下改变一下常量值就可以了。另外,在Project选项中或者在VB4.0的高级设置中也直接在命令行参数选项中给定常量值。VB不同版本如,VB 3.0和VB 4.0一般在API函数的调用上区别较大,其余的区别不是太大,所以当程序中需要用到API函数时常用条件编译语句。比如,我们如果在程序中需要用到API函数SystemParametersInfo时,可以编写这样的条件编译语句: #if win=32 then Declare Function SystemParametersInfo Lib "user32" Alias- "SystemParametersInfoA"(ByVal uAction As Long,ByVal uParam As Long,-ByVal lpvParam As Any,ByVal fuWinIni As Long)As Long else Declare Function SystemParametersInfo% Lib"user"(ByVal Action As Iteger,-ByVal Param As Integer,Retured As Any,ByVal Changeln As Integer) #end if
语句 1
#Else
语句 2
#End If例子#Const DebugFlag = 1 '设置编译常量
Private Sub Command1_Click()
#If DebugFlag = 1 Then
MsgBox "共享版本"
#Else
MsgBox "正式版本"
#End If
End Sub
#If...Then...Else
#End if条件常量定义语句为:#const常量=值,此常量的声明必须位于窗体或模块的顶部,以便下面的所有程序都可以使用它,在不同的环境下改变一下常量值就可以了。另外,在Project选项中或者在VB4.0的高级设置中也直接在命令行参数选项中给定常量值。VB不同版本如,VB 3.0和VB 4.0一般在API函数的调用上区别较大,其余的区别不是太大,所以当程序中需要用到API函数时常用条件编译语句。比如,我们如果在程序中需要用到API函数SystemParametersInfo时,可以编写这样的条件编译语句:
#if win=32 then
Declare Function SystemParametersInfo Lib "user32" Alias-
"SystemParametersInfoA"(ByVal uAction As Long,ByVal uParam As Long,-ByVal lpvParam As Any,ByVal fuWinIni As Long)As Long
else
Declare Function SystemParametersInfo% Lib"user"(ByVal Action As Iteger,-ByVal Param As Integer,Retured As Any,ByVal Changeln As Integer)
#end if