interop相关内容

C# Excel 自动化导致 Excel 内存泄漏

我正在尝试使用 C# 和 COM Interop 库来打开一组非常繁重的 excel 工作簿.我必须使用 C#,因为我还需要启动宏,移动一些单元格,并启动我公司使用的自定义 excel 插件. 然后我的程序退出,工作簿保持打开状态,每个工作簿都在一个单独的 excel 实例中.我不希望在程序退出时关闭工作簿. 问题是,当我的 C# 程序退出时,随着时间的推移,excel 工作簿会逐渐消 ..
发布时间:2021-12-29 12:57:23 C#/.NET

使用 Python 与其他程序交互

我正在考虑使用 Python 编写一个程序,该程序将找到我提供的歌曲名称的歌词.我认为整个过程应该归结为以下几件事.这些是我在运行程序时希望程序执行的操作: 提示我输入歌曲名称 复制那个名字 打开网络浏览器(例如谷歌浏览器) 将该名称粘贴到地址栏中并查找有关该歌曲的信息 打开一个包含歌词的页面 复制歌词 运行文本编辑器(例如 Microsoft Word) 粘贴歌词 使用歌曲 ..
发布时间:2021-12-29 12:46:56 Python

如何在 UWP 应用程序中创建 COM 对象?(C#)

问题:如何在通用 Windows 平台 (UWP) 应用程序中创建 COM 对象? 动机:我想从 WPF 切换到 UWP.由于我的工作量需要调用只能通过 COM 访问的第三方库(据我所知),我需要从 UWP 进行 COM 调用. 上下文: C# .NET Visual Studio 2015 Windows 10 理想情况下针对所有 UWP 设备,但如果仅限于台式机/笔记 ..
发布时间:2021-12-28 18:16:24 C#/.NET

使用 Word Interop 和打印对话框进行打印

我正在尝试从我的 C# 代码中打印一个 word 文档.我使用了 12.0.0.0 Word Interop,我想要做的是在文档打印之前弹出打印对话.我不是 100% 确定所有这些的语法,因为我无法让我的代码工作:(有什么想法吗? 提前致谢! 解决方案 它应该是这样的: object nullobj = Missing.Value;doc = wordApp.Documents.O ..
发布时间:2021-12-28 08:31:53 C#/.NET

使用 Interop 打印 Excel

有人知道如何使用 C# 和 Excel Interop 以编程方式打印 excel 文件吗?如果是这样,你能提供代码吗? 解决方案 为了打印,您可以使用 Worksheet.PrintOut() 方法.您可以通过传入 Type 来省略任何或所有可选参数.不见了.如果您省略所有这些,它将默认从您的活动打印机打印一份副本.但是您可以使用参数来设置要打印的份数、整理等.请参阅 Worksheet ..
发布时间:2021-12-28 08:02:20 C#/.NET

从 DLL 调用函数?

我是 C# 新手,我正在尝试学习 DLL 的使用.我正在尝试将我的对象包装在一个 DLL 中,然后在我的程序中使用它. public class Foo//它在 DLL 中{公共无效酒吧(){SomeMethodInMyProgram();}} 所以我尝试将它打包到一个 DLL 中,但我不能,因为编译器不知道 SomeMethodInMyProgram() 是什么. 我想像这样使用它: ..
发布时间:2021-12-25 16:19:49 C#/.NET

从 C++/CLI 调用 C# dll 函数

我有一个 C# dll.代码如下: 公共类计算{公共静态 int GetResult(int arg1, int arg2){返回 arg1 + arg2;}公共静态字符串GetResult(字符串arg1,字符串arg2){返回 arg1 + " " + arg2;}公共静态浮点获取结果(浮点 arg1,浮点 arg2){返回 arg1 + arg2;}公共计算(){}} 现在,我打算以这种 ..
发布时间:2021-12-25 16:12:54 C#/.NET

从 .NET DLL 调用 VB6 方法

我有一个用 VB 6 编写的 DLL 和另一个用 Visual Studio 2005 (VB.NET) 编写的 DLL. 现在我想从我的 .NET DLL 调用 VB DLL 的方法.我应该怎么做?有什么想法吗? 解决方案 由于 VB6 创建 COM DLL,Visual Studio 为您生成互操作存根应该没有问题.通过在 Visual Studio 中选择添加引用并在 COM ..
发布时间:2021-12-25 16:04:45 其他开发

是否可以从 C#.Net 调用 C 函数

我有一个 C 库,想从 C# 应用程序调用这个库中的函数.我尝试通过将 C lib 文件添加为链接器输入并将源文件添加为附加依赖项,在 C lib 上创建 C++/CLI 包装器. 有没有更好的方法来实现这一点,因为我不确定如何将 C 输出添加到 C# 应用程序中. 我的 C 代码 - __declspec(dllexport) unsigned long ConnectSessio ..
发布时间:2021-12-24 23:55:40 其他开发

将 Windows 窗体 UserControl 托管到 Silverlight 应用程序中

我有一个用 Windows 窗体编写的 DLL.我需要将此 DLL 中的一个 UserControl 托管到我的 Silverlight 项目中.这可能吗? 在 WPF 中,这可以使用 WindowsFormsHost : 我想在 Silverlight 中执行此操作. 解决方案 没有类似的支持,似乎也不可能添加任何支持,因为 Silverlight 试图跨平台.如果你想要这个 ..
发布时间:2021-12-23 23:53:13 其他开发

编组包含字符串的结构

我基本上想在 c# 中从用户那里获取 int 名称和字符串年龄,并将其发送到用 c 编写的 dll 方法,其中使用 int 和 char[50] 参数并返回字符串.我创建了以下场景,但我失败了,任何机构都有代码 我有一个用 c 开发的 dll,它有一个结构 struct 参数{年龄;字符名称[50];}; 和方法 extern "C"{__declspec(dllexport) 参数 ..
发布时间:2021-12-23 17:26:07 C#/.NET

从 C# 调用 FORTRAN dll 并将值分配给结构数组

我可以将 C# 结构传递到 FORTRAN 就好了.我什至可以在 FORTRAN 中将 C# 结构的数组作为 TYPE() 的数组传递.我遇到麻烦的地方是当我试图将值返回到 C# 时.下面是一个例子: fortran dll 是: 模块测试类型 VALUEREF整数*4 :: AENDTYPE VALUEREF包含子程序 TEST_REF(T,N)!DEC$ 属性 DLLEXPORT :: ..
发布时间:2021-12-23 17:21:25 C#/.NET

将 C++ struct 数组元组化为 C#

我在 C++ 中有以下结构: #define MAXCHARS 15类型定义结构{字符数据[MAXCHARS];int prob[MAXCHARS];} LPRData; 还有一个我正在调用的函数,用于获取包含 3 个这些结构的数组: void GetData(LPRData *data); 在 C++ 中,我会做这样的事情: LPRData *Results;结果 = (LPRData ..
发布时间:2021-12-23 16:54:22 C#/.NET

将向量/数组从非托管 C++ 传递到 C#

我想将大约 100 - 10,000 点从非托管 C++ 传递到 C#. C++ 端看起来像这样: __declspec(dllexport) void detect_targets( char * , int ,/* 更多参数 */){std::vectorid_x_y_z;//现在将此向量传递给 C# 的最佳方法是什么} 现在我的 C# 端看起来像这样: 使用系统;使用 Syste ..
发布时间:2021-12-21 13:26:42 C#/.NET

cookie 值应该进行 URL 编码吗?

在设置 cookie 时,PHP 对 cookie 值进行 url 编码(至少在不使用 setrawcookie 时)并且它在将 cookie 值提供给用户之前对 cookie 值进行 url 解码$_COOKIE 中的应用程序. 这是公认的标准吗?如果我设置 a%3Db 的原始 cookie 值,我会在大多数网络编程语言中返回 a=b(通过它们各自的 cookie 读取机制)吗?> 解决 ..
发布时间:2021-12-21 12:36:35 其他开发

如何处理来自控制台应用程序的 COM 事件?

我正在使用来自第三方库的 COM 对象,该对象生成周期性事件.当我使用 Winforms 应用程序中的库,将该对象作为类成员并在主窗体线程中创建它时,一切正常.但是,如果我从另一个线程创建对象,则不会收到任何事件. 我的猜测是我需要在用于创建对象的同一线程中有某种事件循环. 我需要从控制台应用程序使用这个对象.我想我可以使用 Application.DoEvents,但我宁愿不在控制台 ..
发布时间:2021-12-19 22:58:54 C#/.NET

IntPtr、SafeHandle 和 HandleRef - 解释

在不向我指出 MSDN 的情况下,有人可以简明、清晰地解释每一个的目的以及何时使用它们.(IntPtr、SafeHandle 和 HandleRef) 解决方案 IntPtr 只是一个简单的基于整数的结构,可以保存一个指针(即,32 位系统上的 32 位大小, 64 位系统上的 64 位大小). SafeHandle 是一个用于保存 Win32 对象句柄的类 - 它有一个终结器,可确 ..
发布时间:2021-12-17 23:53:06 C#/.NET

恢复另一个应用程序的最小化窗口

我正在向一个应用程序添加一些代码,如果该应用程序尚未运行,则该应用程序将启动另一个应用程序,或者如果已运行,则将其置于最前面.这需要少量的互操作/WinAPI 代码,我已经从其他站点获得了这些示例,但似乎无法在 Win7 中工作. 如果窗口处于某种可见状态,则 API 的 SetForegroundWindow 方法就像一种处理方式(这将是主要情况,根据公司政策,如果外部应用程序正在运行,则 ..
发布时间:2021-12-17 23:43:38 C#/.NET