pb9中COM的创建和调用

原创 2007年09月12日 16:15:00

  pb中不仅可以调用com(请参见http://blog.csdn.net/precipitant/archive/2007/09/05/1773126.aspx) ,也可以创建com。

  创建方法:

  1,  创建一个workspace

  2,  在workspace下创建一个application ( 假设名字为:myapp)

  3,  创建custom class,

      在custom class 中可以创建 function

  4,  创建 project

   要选择 COM/MTS/COM+ Component Wizard

   填写 Project 名

   选择一个 custom class

   设置 Interface Name

   设置 Program ID string 

   默认是 PB90.[custom class 的名字],我们可以修改(假设修改为PB90.cus_class7    ,这个名字就是在pb中调用时的类名)

   设置 Com Class Name 

   默认为COClass_[custom class的名字]  (假设为COClass_cus_class7   ,这个名字就是在vb中调用时的类名)

   将 Register Components Upon Successful build 选中

  5,  生成dll

   选中新创建的project,点击右键,然后点击Deploy

  这样就完成创建com的工作。

  调用方法:

1,vb中

  创建一个vb项目,添加引用 PB90 generated typelib for:myapp.dll

注意红字部分,为输出的dll文件名,一般和application名义相同。

  写代码:

  Dim a As new myapp.COClass_cus_class7
  
MsgBox a.dog

显然是通过   [application name].[Com ClassName]  来使用这个com。

2,pb中

int   intValue   
oleobject   objOle   
objOle
=create   OLEObject   
intValue
=objOle.connecttonewobject("PB90.cus_class7")
if intValue=0 then
    
string v
    v
=objOle.dog()
    Messagebox(
"ss",v)
end if

显然是通过 [Program ID String]  来使用这个com的。

通过测试发现在vb和在pb中的调用方法是不一样的。

PB中如何编写COM和COM+程序.

    COM/COM+作为取代OLE的一种新技术,问世已经很久了,PB7中也早已提供了对它的支持,不过从现实情况上看,似乎大家使用到的不是很多,其实对于新一代的互联网应用,它还是能够发挥很大作用.下...
  • daixf_csdn
  • daixf_csdn
  • 2004年11月06日 11:20
  • 4828

PB 调用.NET COM组件(1)

对于现在使用PB和.NET同时开发的项目,现在.NET已经有的功能,想在PB下调用,只能把.NET做成COM组件,再在PB中调用。 方法如下:    一.在.NET中新建类库    ...
  • tangkechu
  • tangkechu
  • 2014年07月07日 12:39
  • 1627

关于connecttonewobject返回-3的问题

 在人在处理COM时,出现了connecttonewobject返回-3的问题,源码如下: int intValue ioo_objOle=create OLEObject intValue=ioo_...
  • liuvshua
  • liuvshua
  • 2009年11月10日 14:41
  • 1342

PB 导入和导出Excel

integer li_rtn,ii,li_asc string ls_name,ls_pathname boolean lb_exist if datawin.RowCount()  MessageB...
  • u012323351
  • u012323351
  • 2016年03月13日 11:16
  • 4300

PB 调用.NET COM组件

对于现在使用PB和.NET同时开发的项目,现在.NET已经有的功能,想在PB下调用,只能把.NET做成COM组件,再在PB中调用。 方法如下:    一.在.NET中新建类库    二.注册类库...
  • lijianhe043
  • lijianhe043
  • 2011年09月21日 15:43
  • 3911

pb webform及pb写com组件的例子

  • 2009年12月22日 15:49
  • 519KB
  • 下载

PowerBuilder调用Delphi写的Dll时发生的奇怪问题。

  因项目需要,我用Delphi写了一个连接数据库把数据导出到Sql文件的dll,其中使用了TADOQuery组件。其中只有一个导出方法:function DataExport(path,ini_pa...
  • Dangyuhang
  • Dangyuhang
  • 2005年04月11日 13:16
  • 2813

PB 调用.NET COM组件

今天需要作一下pb引用.net的外接程序类。反复测试都没有成功。看到这篇文章解决了我的问题。在此感谢。综合我的碰壁经验。需要注意以下两点。 1..net项目需要勾选生成 com组件。 2....
  • pengdayong77
  • pengdayong77
  • 2015年06月30日 12:29
  • 698

【PB】pb9中COM的创建和调用

创建方法:   1, 创建一个workspace   2, 在workspace下创建一个application ( 假设名字为:myapp)   3, 创建custom class, 在cu...
  • lijianhe043
  • lijianhe043
  • 2012年07月18日 19:17
  • 1512

PB调用PB自己制作的COM组件

  • 2010年07月02日 14:41
  • 53KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:pb9中COM的创建和调用
举报原因:
原因补充:

(最多只允许输入30个字)