com-interop相关内容

VB6对COM可调用包装的.NET - 问题,找到.NET库

premise: 在写C#编写的一个COM,调用包装(CCW)由VB6 code调用。 的C#code有.NET库(第三方),它必须使用。 的包裹C#类实例化精,妥善引发事件,采取的方法调用正常。 问题: 在VB6的code,运行C#code时,得到当C#code尝试访问额外的.NET库上面提到的错误。 流程进行测试: 在C#裹code完成。 在VB6 code写的,引用创建的COM D ..
发布时间:2015-11-27 11:34:51 C#/.NET

我如何可以通过从VB6对象的集合到.NET?

我需要传递键/值对字符串的集合从VB6到.NET。在VB6 code它们存在于本地集合。但我不知道我可以在我的.NET项目引用要能接受我的方法之一类型集合的参数。 我尝试添加引用Visual Basic应用程序,但回来“一提到'Visual Basic应用程序”不能添加。“ 我要对错误的方式? 解决方案 您可以使用这样的事情在C#: [的Guid(“fb5e929a-2f8b-481e ..
发布时间:2015-11-27 11:16:18 C#/.NET

微软互操作的Word自动化DCOM配置设置

我使用的Microsoft Office互操作字来生成使用C#文件。为了使文档生成工作,应为“Microsoft Office Word中97 - 2003文档”中的条目的 DCOM配置设置下,如下所示: 在本地路径在常规选项卡有一个正确的路径是先安装了Microsoft Office时。如果我再将计算机加入到域,然后重新启动系统,域用户,在​​本地路径变成空白,应用程序不会生成的文件,并给 ..
发布时间:2015-11-27 11:07:47 C#/.NET

我如何通过一个数组(通过引用VB6)为C \ C ++的* .dll子程序?

我需要通过变体的空数组以C语言编写的(和适用于所有Windows版本)一个DLL,而C code(这是我无法控制的,不能编辑)将填充空数组变体,其某些函数的返回值。 Bascially,当我尝试这 - 的ByRef的数组总是空的,当它应该包含函数/子调用的结果(如果我在.NET中完全一样的东西,它的工作原理) 我想我需要做一个自定义的声明,使VB知道如何调用C函数,或? 下面是如何在c子/函 ..
发布时间:2015-11-27 10:48:25 C#/.NET

反思COM互操作对象

试图创建一个映射器为微软Office对象到POCO的,发现这个 //不起作用 //返回一个空数组,其中0是RCW办公室对象 的foreach(VAR PI在o.GetType()。GetProperties中()) tgt.SetValue(RC,pi.GetValue(0,NULL)); 因此​​不得不求助于此 {的foreach(在tgt.GetFields()VAR场 ..
发布时间:2015-11-27 10:33:57 C#/.NET

确定在VBScript(COM-互操作)的.NET方法后缀编号

您可以使用通过COM-互操作在VBScript .NET方法。你必须追加一定的后缀数字的方法,因为重载不交叉的托管/非托管边界。后缀数字似乎不具有特定的顺序...如何确定后缀数字? 例如: 昏暗的编码,bytesthroughdotnet 集编码=的CreateObject(“System.Text.UTF8Encoding”) bytesthroughdotnet = encodin ..
发布时间:2015-11-27 10:33:52 C#/.NET

如何注册不RegAsm.exe类型库

我想知道是否有可能以注册类型库,而无需使用的 RegAsm工具。这里是我的情况,希望这将解释为什么我想这样做: 我正在开发的.NET程序集,将提供一些现代的功能,为旧的VB6应用程序。我已经成功注册了组装和使用RegAsm像这样在我的开发机器的类型库: regasm.exe MyAssembly.dll程序/ TLB / codeBase的 上面的命令生成的类型库(MyAssembl ..
发布时间:2015-11-26 21:26:54 C#/.NET

我如何可以调用在COM互操作.NET对象的静态方法?

是否有可能在.NET对象调用静态方法,通过COM互操作? 我知道我可以写一个包装类。如果我不想做呢? 解决方案 没有你不能做到这一点。 COM互操作,通过对象,而不是类型的通信。 工作变通我知道... 最好的解决方法是创建一个包装方法上的一个实例做的类型呼叫。是的,这仍然需要一个实例,因此它违背了目的,但它就是你最好的选择。 反向PInvoke的:仍然需要你下来传递一个函数指针C ++层 ..
发布时间:2015-11-26 20:33:59 C#/.NET

使用从.net一个COM EXE内部类

我有一个exe文件我已经给它有COM类里面 - 这是从C ++,没有.NET 标记有ComVisible特性类型 我想使用这些类我的.NET项目里面,但我不能添加引用exe文件;当我尝试,我得到 对话框: --------------------------- 微软的Visual Studio --------------------------- 一提到“C:\ Program Files ..
发布时间:2015-11-26 20:28:43 C#/.NET

加载从COM进程id .NET程序集,而无需创建一个COM对象

一个奇怪的问题了一下,大概落后的大多数人想做的事,但我试图解决一个传统的COM问题。 我有两个组成部分,这两者都是实际上.NET组件,但由于历史的原因之一加载其他作为COM对象(该组件注册为COM互操作)。这是一个插件架构,其中插件是由它的COM进程id识别,所以这是唯一的一条信息,我得到加载插件组装。 一种方法我试过是: VAR OBJTYPE = Type.GetTypeFromPro ..
发布时间:2015-11-26 20:07:08 C#/.NET

嵌入一​​个免注册COM清单为C#DLL与本地/管理环境

我目前工作的一个混合的本机/托管应用程序链,它采用免注册的COM。下图说明了这一点: C#的包装DLL已经使用tlbimp.exe是实用程序创建的。这允许每个C#的可执行文件来访问本地类型和方法在COM的DLL。在COM DLL本身采用基于服务器的RegFree COM清单。 一切工作正常,当基于客户端RegFree COM体现嵌入在C#中的可执行文件。不过,我想移动和统一这些清单文件到C ..
发布时间:2015-11-26 19:43:06 C#/.NET

如何判断Excel的应用是在细胞编辑模式?

我使用COM互操作从.NET编写一个Excel加载项。我有一个弹出一个对话框的命令,然后从对话框我喜欢从多张的使用范围收集数据的一些工作。现在的问题是,如果一个单元是在编辑模式下,一些我需要做会抛出异常的话费。我想前手的Excel在编辑模式决定的方式,让我可以提醒用户完成第一个编辑单元格。 任何想法? 解决方案 有一个Application.Ready属性,应该给你这个信息,但在实践中并不可 ..
发布时间:2015-11-26 19:41:10 C#/.NET

如何获得一个.NET CCW组件从dll.config加载配置

我公开为 CCW (COM可调用包装),并加载到一个非托管的IIS应用程序(ATL服务器).NET组件。该组件安装并使用COM注册 regasm / codeBase的。 组件需要配置,如通常放入Web.config文件中的IIS应用程序。但我不想砸配置成要么w3pw.exe.config或machine.config中 - 在理想情况下,我想将配置现场的旁边安装暴露于COM大会 我还没有找到 ..
发布时间:2015-11-26 19:40:42 C#/.NET

.NET互操作:找到一个正在运行的COM对象与C#的所有实例

背景 我通过自动化命令行工具,一些Office应用程序(Word和PowerPoint)。 我想我的工具需要做的就是找​​到Word的所有正在运行的实例。 我知道如何让一个参考实例之一... 对象running_obj = NULL; { running_obj = System.Runtime.InteropServices.Marshal.GetActiveObject(进程i ..
发布时间:2015-11-26 19:40:22 C#/.NET

在VS.Net的调试器正确检查一个COM /互操作类的实例?

有谁知道它如何可能看到COM /互操作适当的对象(在他们正确的类型)在VisualStudio中的调试器?我得到的是“恶的系统.__ ComObject 值(即使它正确地识别型)? 例如: 解决方案 所以,这不是一个答案,但检查出这两个屏幕截图。这是从同一个应用程序,只是在两个不同的中断点。在两种情况下,COM对象是从相同的COM / AX库。我不知道为什么在一个情况下,我看到“系统._ ..
发布时间:2015-11-26 19:36:22 C#/.NET

试图建立在C#中的COM组件,可以被引用,并从VB5 / 6中使用

我想看看我是否能够建立在C#(.NET 4),我可以使用从VB5程序(线索嘲笑的话)来访问Web服务的COM组件。随着所有的指示,我已经能够找到MSDN和$ C $的CProject如下: 大厦COM在C#对象 示例COM类(C#编程指南) 我写了下面的: [的Guid(“7A715F02-D349-45DC-B0AE-9925FD3B943C”)] 公共接口ARCOM_Interface ..
发布时间:2015-11-26 18:54:47 C#/.NET