Database 版 (精华区)

发信人: PowerBuilder (孙武空), 信区: Database
标  题: 7
发信站: 哈工大紫丁香 (2001年09月26日18:00:36 星期三), 站内信件

发信人: icefire@argo (冰火), 信区: Datebase
标  题: PowerBuilder 每日心得 (7)              wdsq (转寄) (转载)
发信站: Yat-sen Channel BBS (Sat Nov  8 22:08:40 1997)
转信站: argo (local)

【 以下文字转载自 icefire 的信箱 】
【 原文由 <bbs@s1000e.whnet.edu.cn> 所发表 】
发信人: SQ (WonderDiscoveror), 信区: Database
标  题: PowerBuilder 每日心得 (7)
发信站: 华中地区网络中心 (Thu Oct 10 13:54:04 1996)

PowerBuilder 5.0中做OLE Automation Server(2)

上次谈到通过生成user object的注册信息,运行安装程序后,其它开发工具可以
使用PB5的User Object, 使用其属性和方法。其实还有一种更好的实现方法。那就
是使用PowerBuilder.Application对象。
在生成安装程序的时候,指定你的应用程序的GUID, 那么Setup程序在安装时会在
系统注册数据库中登录PowerBuilder.Application对象的有关数据。其它开发工具
如VB, VC, Delphi等就可以通过如下方式使用你PowerBuildr程序中所有的user object.

VB中:
        Dim PBObject as object


        Dim PBNVObject as object
        PBObject = CreateObject("PowerBuilder.Application")
        if PBObject is nothing then
          REM handle the error
        else
          PBObject.LibraryList = "c:\myappl\mylibrary.dll"
          PBNVObject = PBObject.CreateObject("nvo_myobject")
          if PBNVObject is nothing then
            REM handle the error
          else
            PBNVObject.DoSomething(12, 14, "Hello")
            PBNVObject = nothing
          end if
          PBObject = nothing
        end if

PB中:
        OLEObject PBObject, PBNVObject

        PBObject = CREATE OLEObject
        PBNVObject = CREATE OLEObject


        // Set the attribute of PBObject here
        PBObject = CreateObject("PowerBuilder.Application")
        PBObject.LibraryList = "C:\MyApp\Mylibrary.dll" // or PBD, PBL library
        PBObject.MachineCode = True     // Determine using Machincode or P-Code
        PBNVObject = PBObject.CreateObject("nvo_myobject")
        if IsNull(PBNVObject) then
           // Error handling
        end if
        PBNVObject.DoSomething( 12, 14, "Hello" )

        // Destroy object before exitting program
        DESTROY PBNVObject
        DESTROY PBObject


利用这种方式,就不必为每个user object生成相应的.REG和.TLB了.
所以,用PB做OLE Automation Server真是易如反掌。做OLE Automation Client也很容易.

PB5, 哎, 还是不错的吗! (虽然常有不稳定的情况....,无伤大雅吗)

--
※ 来源:.华中地区网络中心 s1000e.whnet.edu.cn.[FROM: 202.114.6.104]

--
※ 来源:·哈工大紫丁香 bbs.hit.edu.cn·[FROM: 202.118.229.154]
[百宝箱] [返回首页] [上级目录] [根目录] [返回顶部] [刷新] [返回]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:2.581毫秒