RegOpenKeyEx子程序示例
2015-12-15 22:24:24 来源: 评论:0 点击:
下列示例是来自FactoryGlobals全局子程序的实际PrintReport子程序。在此,我们执行最近的约定,以运行水晶报表。首先,确认用户计算机上是否使用 RegOpenKeyEx 安装了水晶报表。如果安装,则创建它的实例。然后,我们用 。PrintReport子程序会完成所有注册表输入工作。
Public Sub PrintReport(ByVal Report As String, Optional Prompt As Boolean, Optional ByVal Copies As Long, Optional ByVal Coll As Boolean, Optional ByVal StartNo As Long, Optional ByVal EndNo As Long)
Dim CrystalApplication As Object
Dim CrystalReport As Object
Dim lngResult As Long
Dim lngRes As Long
On Error GoTo ErrorHandler
'检查是否安装了水晶报表。
lngResult = RegOpenKeyEx(&H80000000, "CrystalReports", &O0, &H20000, lngRes)
'如果它是,则创建它的一个实例。
If lngResult = 0 Then
Set CrystalApplication = CreateObject("Crystal.CRPE.Application")
'如果不是,则向用户发送一条消息。
Else
MsgBox "You do not have Crystal Reports installed."
End
End If
'关闭注册表键。
lngResult = RegCloseKey(&H80000000)
Set CrystalReport = CrystalApplication.OpenReport(Report)
CrystalReport.PrintOut Prompt, Copies, Coll, StartNo, EndNo
Exit Sub
ErrorHandler:
HandleError
End Sub