甭问

在PB中怎么样调用外部对象,组件

    发布时间:2020-03-21

    建议使用腾讯电脑管家
    腾讯电脑管家电脑诊所针对commom.dll、MSVC**.dll、d3dx**.dll等常见的dll文件丢失问题,推出了一键修复功能。在网上下载安装腾讯电脑管家8.0版本后,打开程序,点击右上角“电脑诊所——软件问题——丢失dll文件”,进入dll一键修复区,找到相应要修复的dll选项,点击“立即修复”即可恢复正常。十分方便,建议试试。

    回复:

    在c# 2005中编写com组件,供PB11调用实例,分享给你
    c#中写的dll直接是不能被pb调用的,只有写成com组件才可以调用,所以用c#写dll时要注意。
    1、c#2005中新建项目,类型为类库,项目名为AddCom确定。
      配置:右键点击解决方案资源管理器中的AddCom,选择“属性”,选择“生成”,选择“为COM Interop注册(_P)”
    2、打开AssemblyInfo.cs文件,设置[assembly: ComVisible(true)],如果不改则不能被其他程序调用
    3、编写com组件会用到guid(全球唯一ID),编写com组件必须要用到。c#会默认生成一个放在AssemblyInfo.cs,如没有生成,网上下一个生成guid的软件,有很多呢。
    4、c#中源代码如下,按如下方法编写代码后生成工程,/bin/release中得到AddCom.dll。
    using System;
    using System.Collections.Generic;
    using System.Text;
    using System.Runtime.InteropServices;
    namespace AddCom
    {
    [Guid("298D881C-E2A3-4638-B872-73EADE25511C")]
    public interface AddComInterface
    {
    [DispId(1)]
    int iadd(int a, int b);
    }
    [Guid("2C5B7580-4038-4d90-BABD-8B83FCE5A467")]
    [ClassInterface(ClassInterfaceType.None)]
    public class AddComService : AddComInterface
    {
    public AddComService()
    {
    }
    public int iadd(int a, int b)
    {
    int c = 0;
    c = a + b;
    return c;
    }
    }
    }

    5、dos下利用 e:\regasm AddCom.dll 命令注册com组件,可以理解为非.net平台下的regsvr32注册dll组件。提示注册成功即可。
    6、pb11中利用ole调用来调用com组件,注意,此com组件无法用create ole control的browse查看到,只能利用如下的方法直接动态调用。

    integer li_a,li_b,li_total
    //----------注册c#生成的com组件------------
    OleObject ole_AddCom
    ole_AddCom = Create OLEObject
    li_rc = ole_AddCom.ConnectToNewObject("AddCom.AddComService") //AddCom为c#中namespace,AddComService为c#中namespace中的class
    if li_rc <> 0 then
    MessageBox("ConnectToNewObject", string(li_rc) )
    return
    end if
    //----------调用com组件中的函数--------------
    li_total = ole_AddCom.iadd(li_a, li_b) //iadd为c#中namespace(AddCom为c)中class(AddComService为c)中的函数(iadd())

    回复:

    PB9.0的编程界面,写代码的界面上方有两个下拉框,其中后面一个会显示 Instance Variables表示是局部变量,点击该下拉框可以看到 Global Variables选中,这个里面定义的就是全局变量了。

    回复:

    启动 pb7.0,创建一个不可视的用户对象"uo_customer",新建"object",选择"custom class" 类型,点击"ok"。 在新创建的用户对象中编写如下程序: 1.声明实例变量"instance variables",对于 com 中不支持的类型,请声明为 protected 类型。 protecte...

    回复:

    据说DELPHI做COM很简单,于是做了一个小妹的对于PB还知道点,然则关于COM组件的调用就不知道了然则在PB中若何调用它呢?

    回复:

    PB9.0的编程界面,写代码的界面上方有两个下拉框,其中后面一个会显示 Instance Variables表示是局部变量,点击该下拉框可以看到 Global Variables选中,这个里面定义的就是全局变量了。

    回复:

    PB9.0的编程界面,写代码的界面上方有两个下拉框,其中后面一个会显示 Instance Variables表示是局部变量,点击该下拉框可以看到 Global Variables选中,这个里面定义的就是全局变量了。

    回复:

    在c# 2005中编写com组件,供PB11调用实例,分享给你 c#中写的dll直接是不能被pb调用的,只有写成com组件才可以调用,所以用c#写dll时要注意。 1、c#2005中新建项目,类型为类库,项目名为AddCom确定。 配置:右键点击解决方案资源管理器中的AddCo...

    回复:

    你的控件没有引用好吧,要不控件没有注册吧

    回复:

    运行VB IDE,打开或创建一个EXE工程,打开窗体设计器,如下图所示: 为了能在窗体上添加控件,需要往窗体左边的工具箱上添加项目,需要点击菜单项目“Project-Components”,此时会弹出如下图所示的对话框: 点击“Browse”按钮,弹出文件选择对话框...

    回复:

    是不是你使用注册路径的时候,路径中带有空格了? 在路径前后加上双引号试试

    回复:

    建议使用腾讯电脑管家 腾讯电脑管家电脑诊所针对commom.dll、MSVC**.dll、d3dx**.dll等常见的dll文件丢失问题,推出了一键修复功能。在网上下载安装腾讯电脑管家8.0版本后,打开程序,点击右上角“电脑诊所——软件问题——丢失dll文件”,进入dll一键...

    回复:

    这个,实现方式有多种 1. 使用windows系统的消息队列 (Message Queue)来实现。 2. 使用 Web Servcie 方式来实现 3. 使用 Socket 的 C/S架构 ------------------------ 具体的实现,都不是3言2语能说清楚的, 你需要自己查资料

    上一篇:防静电服的别名还有哪些? 下一篇:怎么下载真知灼见app?

    返回主页:甭问

    本文网址:http://www.bengwen.cn/baidu/view-206910-1.html
    信息删除