interop 相关问题

互操作性是一种计算机系统或编程语言与另一种计算机系统或编程语言协同工作

如何解决LibraryImport问题?

我一直在尝试在使用.NET 7开发的WPF应用程序中使用这段代码。 [DllImport("user32.dll")] 内部静态外部布尔InsertMenu(IntPtr菜单,Int32位置...

回答 1 投票 0

将 BMap<BString, Object> 转换为 Ballerina 中的 Java 类

我正在 Ballerina 中开发一个项目,我需要将 BMap 转换为 Java 类。 此外,我有一个 Java 函数,它返回 BMap 类型的 Ballerina 记录对象<

回答 1 投票 0

用于 Powerpoint 幻灯片放映的 C# 库?

我正在尝试开发某种简单的广告亭程序,它运行预定义的Powerpoint .ppt 或.pptx 文件以进行自动幻灯片放映。 我相信我可以通过 Microsoft 来存档此内容

回答 1 投票 0

从 Delphi dll 返回字符串到 C#

我有一个delphi dll,我想将字符串返回到C# API。 我正在使用 Delphi 11 和 .NET 7 我之前问过类似的问题,我开始工作,向delphi发送一个缓冲区,得到了fil...

回答 2 投票 0

无法加载 JPG 图像 Pdfium

我尝试用 PDF 为项目做一些事情。我正在尝试与 Pdfium 进行一些互操作:https://pdfium.googlesource.com/pdfium/。 我想将 JPG 图像转换为 PDF(仅作为开始)。所以我...

回答 2 投票 0

如何双端独立存储

尽管大端计算机的使用不是很广泛,但我想以独立的格式存储双精度数据类型。 对于 int (或任何整数类型),这非常简单,因为 bit s...

回答 6 投票 0

C# Excel 互操作数据透视表刷新 COMException:“引用无效。”

这行代码 xlSheet.PivotTables("PivotTable1").PivotCache.Refresh(); 返回此异常 System.Runtime.InteropServices.COMException:“引用无效。”

回答 1 投票 0

使用C++类成员函数作为C回调函数

我有一个C库,需要注册一个回调函数来自定义一些处理。回调函数的类型为int a(int *, int *)。 我正在编写类似于以下的 C++ 代码...

回答 8 投票 0

Objective-C 类属性在 Swift Playground 上不可见

关于 Objective-C 和 Swift 互操作性的问题。 我有一些 Objective-C 头文件和实现文件,我在 Swift Playground 中使用它们来进行桥接项目。然而游乐场...

回答 1 投票 0

使用 Excel interop 的应用程序仅收集和写入一次数据

我编写了一个小应用程序,它从 PLC 收集数据,然后将该数据写入 Excel。当我第一次打开应用程序时,我收集数据,它工作得很好,但是,如果我尝试

回答 1 投票 0

C# 错误:无法使用不固定表达式中包含的固定大小缓冲区

我正在努力使用 C# 程序从数据库读取二进制记录。这些记录是用 Borland Delphi 创建的。这是一个例子: // Delphi记录定义 tBowler_Rec = 记录 酒吧...

回答 4 投票 0

在哪里可以找到 Microsoft.Office.Interop.Word.dll (2010)?

我获得了我正在尝试编译的.NET 项目的源代码。尽管如此,该项目使用了 Office 2010 中的引用(命名空间)Microsoft.Office.Interop.Word,但我在任何地方都找不到。 我是

回答 6 投票 0

从 python 调用 C# 库

任何人都可以分享一个关于如何从Python代码调用简单的C#库(实际上是它的WPF)的工作示例吗? (我尝试过使用 IronPython,但在不受支持的 CPython 库方面遇到了太多麻烦

回答 5 投票 0

前层包含子AndroidView的BackdropScaffold

我在 compose 中使用 BackdropScaffold,其中我的前层是我正在集成的 xml 布局。 主要问题是当前层处于活动状态而后层隐藏时,滚动

回答 1 投票 0

Excel Interop C# - 如何读取单个单元格字符

我想仅使用Microsoft.Office.Interop.Excel(Microsoft 365 64位/.NET 7.0)将Excel单元格内容转换为html(包括字体颜色、大小等),而不使用外部库。 我是...

回答 1 投票 0

我们如何捕获 xml 中的嵌套元素?

我正在尝试使用标签子容器从以下 XML 中捕获子容器信息,但我不希望捕获嵌套的子容器。我怎样才能做到这一点? 我正在尝试使用标签子容器从以下 XML 中捕获子容器信息,但我不希望捕获嵌套的子容器。我该怎么做? <sub-container> <name>subcont1</name> <name>subcont2</name> <name>subcont3</name> <sub-container> <name>subcont31</name> <name>subcont32</name> </sub-container> <name>subcont4</name> </sub-container> 我尝试通过标签名称获取元素并检查它们的父节点是否是子容器。嵌套的子容器也被捕获。我实际上希望将它们捕获在 Excel 的不同列中 以下是如何使用 LINQ to XML 在 C# 中执行此操作: using System.Xml.Linq; string xml = @" <root> <sub-container> <name>subcont1</name> <name>subcont2</name> <name>subcont3</name> <sub-container> <name>subcont31</name> <name>subcont32</name> </sub-container> <name>subcont4</name> </sub-container> </root>"; XDocument doc = XDocument.Parse(xml); var topLevelSubcontainers = doc.Descendants("sub-container") .Where(x => x.Parent == doc.Root); foreach (var subcont in topLevelSubcontainers) { foreach (var name in subcont.Elements("name")) { Console.WriteLine(name.Value); } } Console.ReadKey();

回答 1 投票 0

从返回值的 C 调用 C# 方法时“在 <unknown> <0xffffffff>”崩溃

我正在用 Go 和 C(瘦包装器)编写一个本机库,并用 C# 编写互操作代码。 我可以成功地将 C# 方法注册为库的回调,然后在它们不返回时从 C 调用它们

回答 1 投票 0

Swift init 能否仅适用于 ObjectiveC?

假设我有一个 Swift 课程 @objcMembers 类 C: NSObject { 让范围:ClosedRange 初始化(范围:ClosedRange){ self.range = 范围 超级.init() } 方便...

回答 2 投票 0

通过 Interop 添加简单的 DOM 操作 JS 脚本

我正在尝试将此 Javascript 函数导入到我的 Blazor 应用程序中。脚本的功能很简单,将类 c-show 添加到现有列表 元素中,该列表已经有两个 c... 我正在尝试将此 Javascript 函数导入到我的 Blazor 应用程序中。脚本的功能很简单,将类 c-show 添加到已有两个类的现有列表 <li> 元素中。完成后的原始 javascript 是: Javascript document.addEventListener('DOMContentLoaded', (event) => { document.querySelectorAll('.c-sidebar-nav-item.c-sidebar-nav-dropdown').forEach(dropMenu => { dropMenu.addEventListener('click', () => dropMenu.classList.toggle('c-show')); }); }) 此脚本影响此元素: <li class="c-sidebar-nav-item c-sidebar-nav-dropdown"> 添加 c-show 使其: <li class="c-sidebar-nav-item c-sidebar-nav-dropdown"> 我正在尝试通过 Interop 使用 Blazor/C# 实现同样的目标。 所以我在我的元素中添加了以下内容: <li class="c-sidebar-nav-item c-sidebar-nav-dropdown" @onclick="dropMenu"> 我的代码部分是: @code { public async void dropMenu() { classList.toggle('c-show') } } 但是我并不完全确定如何获得我正在工作的结果,因为我所知道的是我需要以某种方式调整 javascript,但不确定如何调整。 您可以使用 OnAfterRenderAsync 方法中的 JSInterop 调用来初始化您的 JavaScript 对象,这只能完成一次,然后您可以在每次渲染组件时调用您的 JavaScript 方法。 注意:您需要注入 JSRuntime 对象才能执行 JSInterop 调用。 @page "/" @inject IJSRuntime jsRuntime <li id="myid" @ref=MyElementReference class="c-sidebar-nav-item c-sidebar- nav-dropdown" @onclick="dropMenu"> @code{ // This add an element reference to the li element, which you can pass to // your JavaScript functions ElementReference MyElementReference; // You have to call your JavaScript code after your components have been // rendered. The OnAfterRenderAsync method is called after the component // has been rendered, and thus you can put code here to initialize your // component. This should be when firstRender is true, and multiple calls // to your JavaScript objects, when firstRender is false. protected override async Task OnAfterRenderAsync(bool firstRender) { // Note: Here you initialize your elements, only once. When the user // clicks on the li element, you'll call your required method from // the click event handler dropMenu if (firstRender) { await JSRuntime.InvokeAsync<object>("MyJSMethods.myMethod", MyElementReference); } } } public async void dropMenu() { await JSRuntime.InvokeAsync<object>("MyJSMethods.myMethod", MyElementReference); } 将脚本放在 _Host.cshtml 文件的底部,就在下面 相应地调整你的元素。请注意,此处的代码仅显示带有 li 标记的 id 的警报。相反,您必须添加代码来根据需要更改对象。 <script src="_framework/blazor.server.js"></script> <script> window.MyJSMethods = { myMethod: function (element) { window.alert(element.id); } }; </script> 请注意,该函数采用的名为 element 的参数是一个元素对象,因为我们在 Blazor 中将该参数定义为 ElementReference。当然,您可以传递元素 id 或类名等。 更好的方法是创建一个包含以下内容的模块(例如sidebar-dropdown.js): export function addCShowTogglers() { document.querySelectorAll('.c-sidebar-nav-item.c-sidebar-nav-dropdown').forEach(dropMenu => { dropMenu.addEventListener('click', () => dropMenu.classList.toggle('c-show')); }); } 下一步涉及创建一个组件,如下所示: @implements IAsyncDisposable @inject IJSRuntime jsRuntime <ul> <li class="c-sidebar-nav-item c-sidebar-nav-dropdown"> Content here </li> <li class="c-sidebar-nav-item c-sidebar-nav-dropdown"> Content here </li> <li class="c-sidebar-nav-item c-sidebar-nav-dropdown"> Content here </li> </ul> @code { private IJSObjectReference? _module; protected override async Task OnAfterRenderAsync(bool firstRender) { if (firstRender) { // this statement assumes the module is in the wwwroot/js folder _module = await jsRuntime.InvokeAsync<IJSObjectReference>("import", "/js/sidebar-dropdown.js"); await _module.InvokeVoidAsync("addCShowTogglers"); } } async ValueTask IAsyncDisposable.DisposeAsync() { if (_module != null) { // release unmanaged resources, eventually await _module.DisposeAsync(); _module = null; } } }

回答 2 投票 0

是否可以在 X++ 代码中使用 C# .dll 文件而不将其添加到引用中?

我有以下问题:我们开发了一个 C# 类,我们计划在 X++ 类中使用它。因此,我们创建了一个.dll 文件并通过引用将其添加到X++ 项目中。 但是,如果我们上传...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.