interop相关内容

如何通过引用将数组从C#传递到非托管COM(VT_BYREF)

我有一个用C++编写的COM组件,我不能更改其源代码,它的一个方法的参数之一是VARIANT *pParamArray。使用tlbimp,我可以为其创建托管存根,并将C#中的数组传递给它。 遗憾的是,COM组件期望通过引用传递其数组-有对pParamArray->vt != (VT_BYREF | VT_ARRAY | VT_VARIANT)的显式检查,如果未通过该检查,则返回错误。 ..
发布时间:2022-08-13 22:14:21 C#/.NET

防止将操作添加到撤消重做一词中或从撤消重做命令栏组合框中删除操作

我们正在以编程方式在Word文档中插入内容控件,我们不想将操作添加到Word的撤消堆栈中。我们找到的唯一方法是访问Undo命令栏组合框并删除与插入内容控件操作相关的项,我们使用以下代码: var commandBars = _wordDocument.CommandBars.Cast(); var standardCommandBar = commandBars.Fi ..
发布时间:2022-04-18 23:10:36 C#/.NET

从 Julia 调用 Fortran 函数,返回一个数组:未知函数,段错误?

我想从 Julia 调用我的 Fortran 库中的函数.在这种情况下,我有一个函数 eye,它接受一个整数,并返回一个二维整数数组. Fortran 模块被编译成一个共享库使用 $ gfortran -shared -fPIC -o matrix_routines.so matrix_routines.f90 然后我试图从交互式 Julia 解释器中调用它(名称从 nm 获得): 朱 ..
发布时间:2022-01-23 19:17:33 其他开发

调试嵌入式单声道运行时启动的 C# 程序集?

我说的是使用 C# 进行游戏编程的小型游戏引擎.所以,我有一个嵌入单声道运行时的 C++ 应用程序(我称之为“启动器").我有一个用 C# 编写的程序集,这是我的游戏引擎类库.启动器按照 Embedding Mono 中的建议启动程序集. 现在是有趣的部分!启动器在 C++ 中实现了作为我的游戏引擎类的内部方法公开给单声道运行时的杂项函数.这就是为什么如果没有使用 C++ 实现大部分引擎的启 ..
发布时间:2022-01-23 15:22:29 其他开发

将大端字节集合编组到结构中以提取值

有一个关于 阅读 C 的有见地的问题来自字节数组的 C# 中的/C++ 数据结构,但我无法让代码适用于我的大端(网络字节顺序)字节集合.(编辑:请注意,我真正的结构不止一个字段.)有没有办法将字节编组为结构的大端版本,然后提取框架字节序中的值(主机的字节序),通常是小端)? (请注意,反转字节数组将不起作用 - 每个值的字节必须反转,这不会为您提供与反转所有字节相同的集合.) 这应该总 ..
发布时间:2022-01-23 14:31:29 C#/.NET

使用 UPnP InvokeAction 获取 IP 地址不返回任何内容,帮助?

基本上,当我使用 vb.net 或 c#.net 来执行此操作时,它可以完美运行,但是当我使用 vb6 时,它不起作用,在我的 for 循环中,相关设备中的相关服务被捕获,这是不返回结果的代码... ' serv 由 for 循环正确声明和实例化.点心(0)调暗 xouts(0)MsgBox ("Starting..." & serv.ServiceTypeIdentifier & vbCrL ..
发布时间:2022-01-20 19:38:24 C#/.NET

help: 从 VB6 项目调用 C# winforms dll?

我有一个 VB6 项目(Windows 应用程序),我必须在 C#.net 中的现有 VB6 项目中重新开发一个模块. 我用 C#.net 开发的模块应该是一个 dll 并且应该包含一些 windows 窗体.我能够从我的 vb6 项目中成功调用 c# 控制台应用程序 dll,但是当我尝试从我的 VB6 项目中调用带有 winforms 的 C# 类库时遇到问题. 这是我为我的概念证明 ..
发布时间:2022-01-20 19:33:33 C#/.NET

从 C# 引用 VBA 程序集的运行时错误

我有一个 C# .NET 3.5 项目,不幸的是它依赖于几个 VB6 ActiveX 控件. 到目前为止,我已经能够愉快地访问 ActiveX 控件中定义的数据容器和方法,只需在我的项目中添加对控件的引用并正常引用它们. 但是,当我不得不调用返回 VBA.Collection 的方法时,我今天遇到了问题. 我的代码可以正常编译,但在运行时出现以下错误: 无法加载文件或程序集 ..
发布时间:2022-01-20 19:33:28 C#/.NET

如何使用 Interop 将小数从 c# 传递到 vb6

我有一个带有属性的互操作 c# 类: 十进制 ImportoDocumento { get;放;} 如果我尝试从 vb6 访问此属性,则会收到错误: 编译器错误:函数或接口标记为受限或函数使用了 Visual Basic 不支持的自动化类型. 所以我找到了这个部分解决方案: 十进制 ImportoDocumento { [return: MarshalAs(UnmanagedTy ..
发布时间:2022-01-20 19:30:31 C#/.NET

从 c# 调用 vb6 dll

我一直在尝试从 C sharp 应用程序调用 vb6 dll,而不使用注册表.我想在使用时使用 dll 的路径.我无法创建 vb dll 类的对象.请帮忙!目前我写的代码如下: Assembly assem = Assembly.LoadFile("dll path");类型 classType = assem.GetType("classname");MethodInfo 方法 = class ..
发布时间:2022-01-20 19:27:21 C#/.NET

将 app.config 与互操作控件一起使用

我有一个使用 app.config 的 .net 项目 (MySolution.Common).我在名为 MySolution.InteropCtrl 的 InteropUserControl 项目中使用项目 MySolution.Common.MySolution.InteropCtrl 嵌入到 VB6 项目中.当 MySolution.InteropCtrl 在 VB6 项目中时,它找不到 a ..
发布时间:2022-01-20 19:18:10 C#/.NET

您可以/如何在 C# WPF 应用程序中托管完整的 VB6 表单?

我目前正在探索使用 C# 将一些较旧的 VB6 应用程序移植到 WPF 的选项.第一阶段的计划是移植几个关键表格,而不是所有应用程序.理论上的目标是通过 ActiveX dll 在 WPF 中的某种容器中打开 VB6 表单. 这甚至可能吗?我试过查看 Interop,似乎找不到一个可靠的例子来说明如何让它与除 Win32 控件之外的任何东西一起工作,而不是完整的形式.我可以完全访问旧的 VB ..
发布时间:2022-01-20 19:13:50 C#/.NET

在 Windows 7 上使用 VB6 注册 Free Com

我有一些从 VB6 代码中使用的 .NET 代码.我一直在 XP 机器上通过创建列出相关 .NET 程序集的 VB6.exe.manifest 文件来开发它. 例如,假设我的 2 个 .NET 程序集是 Some.Assembly.A.dll 和 Some.Assembly.B.dll,这就是 VB6.EXE.manifest 的样子(我在下面使用 version=1.1.0.0,因为是我在 ..
发布时间:2022-01-20 19:12:43 C#/.NET

从 vb6 加载 dll 时找不到文件

我在 VB6 中使用以下语法声明和调用 dll 函数: '声明函数Private Declare Sub MYFUNC Lib "mylib.dll" ()'调用函数MYFUNC 调用函数导致错误File not found: mylib.dll.当应用程序从 vb6 IDE 或已编译的可执行文件运行时,就会发生这种情况. 该 dll 位于工作目录中,并且我检查过它是使用 sysinte ..
发布时间:2022-01-20 19:06:58 其他开发

带有 32 位 VB6 COM 对象的 64 位 C#

我有一个 32 位进程内 STA VB6 dll.很遗憾,我对此无能为力.我的 C# 组件极大地受益于 64 位.无论如何从我的 64 位进程调用/接口这个 32 位 dll 吗?任何形式的包装或任何东西? 解决方案 没有直接的方法可以做到这一点. 由于您无法移植 VB6 inproc dll,我建议您编写一个 32 位进程外服务器,该服务器实现相同的接口并将其委托给 VB6 代码. ..
发布时间:2022-01-20 18:43:41 C#/.NET