问题标签 [ccw]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
13441 浏览

visual-studio-2008 - 如何从 Visual Studio 2008 安装项目中使用 regasm 注册 .NET CCW

我有一个 .NET 服务应用程序的安装项目,它使用一个 .NET 组件,该组件公开一个 COM 接口(COM 可调用包装器/CCW)。为了让组件在目标机器上工作,它必须注册到

regasm.exe /tlb /codebase component.dll

在这种情况下,生成类型库的 /tlb 开关是必需的,否则我无法从该程序集创建对象。

问题是,如何配置我的 Visual Studio 2008 Setup-Project 以通过调用 regasm /tlb 来注册此程序集?

0 投票
1 回答
8600 浏览

c# - 如何将 .tlb 作为资源文件嵌入到 .NET 程序集 DLL 中?

我们通过 COM (CCW) 在本机 C++ 中使用我们的 .NET 程序集 DLL。每当我制作我的 DLL 的新版本时,我必须将两个文件(.dll 和相应的 .tlb)发送给在他们的代码中使用它的工作人员。

是否可以将 .tlb 文件作为资源嵌入 .NET DLL 文件中?

0 投票
1 回答
2382 浏览

c# - 从 c++ com 加载项调用 C#

我有一个用 C++(不是 C++/CLI)编写的 COM 插件。我想从此 C++ com 库中调用 C# 库对象/方法。

我想CCW在这里出现,我目前正在阅读。

根据您的经验,有没有关于这些东西的快速指示?

此外,我的 Com 加载项中有一个方法,我希望我的 C# 库代码可以调用它 - 即方法指针调用。

你能帮我告诉我该怎么做吗?即我如何将方法指针传递给 C# 代码,以便稍后调用它。

谢谢。

0 投票
2 回答
1679 浏览

.net - 互操作和 RCW(运行时可调用包装器)有什么区别?

互操作和 RCW(运行时可调用包装器)有什么区别?

只是术语吗?

0 投票
2 回答
328 浏览

excel - 从 COM 可调用包装器返回的错误对象

我刚刚更新了从 Powerpoint 中的 VBA 调用的 dll。所有开发都很顺利,但是当我尝试在另一台用户机器上进行部署时,我遇到了一个我不知道如何调试的问题。

发生的情况是,当在 VBA 中创建 .Net 对象时,返回的引用指向错误的对象,因此下一行因找不到方法而失败。

最后一行因运行时错误“438”而失败,对象不支持此属性或方法,这是由于 myObj 的类型为“Wrong.Type”而不是“Foo.Bar”。

“Wrong.Type”也在程序集中,所以我认为类型库出了点问题,但我尝试过重新生成(使用 regasm /codebase /tlb MyLib.dll),但这并没有帮助。

我不知道如何进一步诊断。希望有人可以列出一些有关如何诊断此类问题的步骤?

0 投票
2 回答
636 浏览

.net - 在不使用 GAC 的情况下向 COM 注册托管程序集

我想知道是否可以向 COM 注册程序集而不必向 GAC 注册它。我们需要使用 CCW 部署一些暴露给经典 asp 的 .net 库。但是部署是一场噩梦。

0 投票
3 回答
881 浏览

clojure - CounterClockWise 中的代码完成?

我是 Clojure 的 Eclipse 插件 CounterClockWise 的第一次用户,而且代码完成似乎无法正常工作。我一直想知道问题是否出在我的键盘和椅子之间,但找不到解决方案。我刚刚在 Galileo build 20090920-1017 和 MacOSX 上安装了 CCW。然后我尝试编写几行 clojure 代码,但没有出现代码完成小部件。我正在使用 Java 透视图。我错过了什么吗?我以某种方式希望它能够开箱即用,因为我刚刚开始使用 Clojure。

提前谢谢了!

科斯塔斯

0 投票
1 回答
234 浏览

excel - 为 CCW 使用 Sub New() 上的构造函数

我正在尝试为我的 VBA 项目创建一个 COM 类库,而我似乎偶然发现的一个限制是在 New() 子例程上使用构造函数。创建新的 COM 类后,将使用以下注释创建 Public Sub New()

显然,尽管我想使用 new 关键字创建更多允许不同参数的子例程。但是,当我尝试执行此操作并在 VBA 中实现对象时,在尝试输入“预期语句结束”的参数时出现错误。如果有人有任何信息将不胜感激。

谢谢你。

0 投票
1 回答
2110 浏览

.net - COM 互操作 - COM 可调用包装器中的多线程

是否可以在 .NET COM 可调用包装 DLL 程序集中使用多线程?

例如,我有一个 .NET 程序集 dll,它向 COM 公开了一个 .NET FTP 库。上传功能目前被编程为“尽力而为”功能。我没有使用事件或返回值来显示上传或下载是否成功完成,如果需要,我可能会考虑稍后实施。.NET 程序集(在我真正有限的理解中)是否可以简单地将这些上传和下载过程外包给另一个线程?假设这是可能的,如果托管应用程序在上传或下载全部完成之前关闭,结果会是什么?

0 投票
1 回答
469 浏览

.net - .NET COM 可调用包装器如何生成 IID?

通过 OLE/COM 对象查看器查看由 CCW 创建的生成的 TLB 文件显示 IID 保持不变,除非我更改接口的设计(这是正确的行为),我担心的是,如果我在另一台机器上编译相同的代码尽管接口没有改变并因此破坏现有的 COM 客户端,但仍将生成完全不同的 IID。

  1. COM 可调用包装器如何生成 COM 接口 ID?
  2. CCW如何知道接口是否发生了变化,是否需要生成新的IID?
  3. 只生成我自己的并在源文件中声明会更安全吗?