`
冷寒冰
  • 浏览: 249047 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

C#调用COM组件的几个步骤

 
阅读更多
C#调用COM组件首先要将信息进行转化,并进行测试。希望本文能对大家了解C#调用COM组件有所帮助。

AD:


这里我们将介绍C#调用COM组件的几个步骤,先将Com类型信息转换为.NET元数据,然后查看元数据,最后测试程序。

首先将Com类型信息转换为.NET元数据

tlbimp sample.dll /out: sample_clw.dll 工具:Tlbimp.exe(类型库导入程序 )
示例:tlbimp  d:\before\TKSnsOCom.dll   /out:d:\convertered\TKWSns
OCom.dll
(以管理员身份运行visual studio命令行工具)

参考:.Net framework SDK 文档

ms-help://MS.NETFrameworkSDK.CHS/cptools/html/cpgrftypelibraryimportertlbimpexe.htm 查看元数据

工具:ILDasm

参考:ms-help://MS.NETFrameworkSDK.CHS/cptutorials/html/il_dasm_tutorial.htm

测试程序:

生成一个console programme

在project->add reference里,选择com,browser你的com,select

ok,现在在你的bin目录下应该有一个sample_clw.dll了

下面我们来用sample_clw的方法

using System; 
using sample_clw; 
namespace CompConsole 

/// <summary> 
/// Class1 的摘要说明。
/// </summary> 
class Class1 

/// <summary>
/// 应用程序的主入口点。 
/// Date:2003/6/20 
/// </summary> 
[STAThread] 
static void Main(string[] args) 
{  //  // TODO: 在此处添加代码以启动应用程序 
Console.Write ("=======Demo for Call com functions in c#=============\n");  
sampleClass sam = new sampleClass();
//now we call functions 
  sam.SayHello();
  }
}

错误:无法实例化类
解决方法:右键dll熟悉,将嵌入互操作类型改为false.
分享到:
评论

相关推荐

    c#中调用com组件

    通过以上步骤,我们可以在C#中成功地调用COM组件。这种方式不仅可以提高代码复用率,还能充分利用现有的组件库来扩展应用程序的功能。在实际开发中,还可能遇到各种具体问题,如版本兼容性、安全性等,都需要开发者...

    C#调用手动编写的COM组件

    在C#中调用COM组件的过程主要包括以下几个步骤: 1. **注册COM组件**:手动编写的COM组件通常需要在系统注册表中注册,以便C#可以找到它们。这通常通过运行包含组件的DLL的`regsvr32.exe`命令来完成。注册后,COM...

    VC6_0和VS2005:C++和C#编写调用COM组件

    在本文中,我们将探讨如何使用两个不同的IDE——Visual C++ 6.0(简称VC6.0)和Visual Studio 2005(VS2005),以及两种编程语言——C++和C#,来创建和调用COM组件。 首先,让我们从C++的角度来看。在VC6.0中,你...

    关于pb调用C#的com出错问题的dll,请大家帮助一下

    在C#中创建一个COM组件通常涉及以下步骤: 1. **设置项目属性**:在C#项目的属性设置中启用Com互操作性,将类库设为 ComVisible(true) 并为类型库提供一个唯一ID。 2. **接口设计**:定义一个接口,这个接口将被...

    C#调用photoshop工具源码

    以下是几个关键步骤: 1. 引用Photoshop的COM组件:在C#项目中,需要添加对Photoshop COM组件的引用。这通常在解决方案资源管理器中右键点击“引用”-&gt;“添加引用”-&gt;“COM”选项卡,然后找到并选择“Adobe Photo...

    C#创建和调用COM+

    创建COM+组件通常包含以下几个步骤: 1. **创建项目**:在Visual Studio中,新建一个C#类库项目,命名为"MyCOM"。这个项目将作为我们的COM+组件。 2. **定义接口**:在项目中定义一个接口,该接口将被其他组件或...

    C#调用金蝶登录窗口(专业版12.2以后也可以)

    在标签中,我们可以看到以下几个关键点: 1. **C#调用金蝶**:这是整个话题的核心,意味着我们要用C#语言来实现与金蝶系统的交互。 2. **KIS专业版**:指金蝶KIS的专业版,我们需要关注其特有的API和接口规范。 3. *...

    C#调用SAP接口

    首先,理解"C#调用SAP接口"这个主题,我们需要知道的是,SAP提供了NetWeaver Gateway(NW Gateway)服务,它允许外部应用,包括C#应用程序,通过标准的RESTful或OData协议访问SAP系统的数据和功能。DEV控件可能是SAP...

    C#调用IDL报错.docx

    具体来说,这可能是由于以下几个方面的问题: 1. **DLL文件缺失**:确保项目中包含了所有必要的DLL文件,特别是那些由IDL编译器生成的文件。 2. **注册问题**:即使DLL文件存在,如果它们没有被正确注册到系统中,...

    C#调用C#的DLL文件

    C#调用C#编译的DLL文件是一个常见的实践,它使得代码组织更加有序,同时也便于实现组件的复用。下面将详细阐述如何进行这一操作。 首先,我们需要了解DLL的工作原理。DLL文件包含了可执行代码和数据,这些代码和...

    免注册调用任何com组件.rar

    在VS2013中编写代码实现免注册调用COM组件,通常会利用.NET Framework的InterOp服务,这是一个用于.NET和COM交互的桥梁。通过引用未注册的COM组件的类型库,.NET代码可以创建并操作COM对象,而无需实际注册组件。 ...

    C# 调用外部DLL中的方法

    3. 使用DLL方法:在你的代码中,你可以像调用普通C#方法一样调用这个DLL中的方法。例如: ```csharp int result = AddCalculate(3, 5); Console.WriteLine("结果是:" + result); ``` 4. 注意事项: - 针对非.NET...

    delphi调用C# DLL

    在深入探讨如何让Delphi调用C#编写的DLL之前,我们需要了解几个基本概念,以及如何配置相应的开发环境。 1. **环境配置**: - 确保安装了Delphi开发环境(例如Delphi 7或更高版本)。 - 安装.NET Framework及相关...

    c# Winform中调用Photoshop打开文件

    首先,要实现这个功能,你需要了解几个关键概念: 1. **COM组件**:Adobe Photoshop提供了COM接口,允许其他应用程序通过COM(Component Object Model)调用其功能。在C#中,我们可以利用.NET Framework的`System....

    c#调用openxml组件对html与word进行互相转换

    这通常涉及到以下几个步骤: 1. 解析HTML:使用HTMLAgilityPack或其他HTML解析库解析HTML文档,获取其内容、样式和结构。 2. 创建Word文档:初始化一个新的WordprocessingDocument对象,这是Open XML SDK中的一个类...

    c#调用ocx控件的方法

    ### C#调用OCX控件的方法 在C#中调用OCX控件是一种常见的技术,尤其是在需要利用已有组件功能的时候。本文将详细介绍如何在C#中注册、导入并使用OCX控件。 #### 一、注册OCX控件 在使用OCX控件之前,首先需要将其...

    VC++和C#相互使用对方的COM组件

    在C++中创建COM组件通常涉及到以下几个步骤: 1. 定义接口:使用`interface`关键字定义COM接口,其中包含要暴露的方法。 2. 实现接口:创建一个类实现该接口,并实现接口中的方法。 3. 注册组件:使用`regsvr32.exe`...

    C#进程内Com组件Demo

    首先,创建COM组件通常涉及以下几个步骤: 1. **定义接口**:COM组件的核心是接口,它定义了组件对外暴露的方法和属性。在C#中,我们可以使用`[InterfaceType]`和`[Guid]`特性来标记接口为COM接口,并指定接口类型...

    ASP.net 中用C#调用Java web service 图解教程

    在 ASP.NET 中使用 C# 调用 Java Web Service 需要了解以下几个方面: 1. Web Service 的基本概念和特点。 2. 如何使用 C# 语言来调用 Java Web Service。 3. 如何在 ASP.NET 中实现 Web Service 的客户端和服务器...

    C#调用Tesseract3.0.2识别验证码所需要的组件

    这些组件主要包括以下几个部分: 1. **Tesseract .NET包装器**:这是C#与Tesseract OCR引擎交互的桥梁,它提供了.NET接口,使得C#开发者可以方便地调用OCR功能。通常,这个包装器会包含一组DLL文件,例如`Tesseract...

Global site tag (gtag.js) - Google Analytics