pinvoke 相关问题

P / Invoke是Microsoft由公共语言基础结构(CLI)创建的实现规范,用于从托管代码调用本机代码库。

Win10中的EnumWindows函数仅枚举桌面应用程序

EnumWindows 上的文档强调: 注意 对于 Windows 8 及更高版本,EnumWindows 仅枚举桌面应用程序的顶级窗口。 “桌面应用程序”和“非桌面应用程序”有什么区别

回答 2 投票 0

无法加载DLL“找不到模块HRESULT:0x8007007E”

我有 C# WPF 应用程序,其中使用了 C++ DLL 库。当我构建项目时,它会成功构建,并且所有 DLL 和 exe 都存储在 bin/(Platform) eg(bin/Debug) 文件夹中。 现在如果我...

回答 1 投票 0

从 C# 访问 C 全局变量 'errno'

P/Invoking 时是否可以访问 C# 中的“errno”变量?这类似于 Win32 GetLastError()。

回答 5 投票 0

LibraryImport:源生成的 P/Invoke 不支持类型“*”

我正在将此实现(以桌面用户身份启动进程)从 [DllImport] 移植到 [LibraryImport] (.NET 8)。 Visual Studio Roslyn 已将方法“AdjustTokenPrivileges”更改为 [图书馆我...

回答 1 投票 0

C# 获取包含 75,00 个文件的目录总大小的最快方法

我正在寻找一种更快的方法来使用 C# 获取包含超过 75,000 个文件的子文件夹中所有文件的总大小。以下内容在我的配备 SSD 驱动器的笔记本电脑上大约需要 8 秒。 FileInfo[] 文件;

回答 1 投票 0

Aeron:在 C# 控制台应用程序中查看 C 媒体驱动程序输出

I P/调用一个 C 函数 (fprintf),它将一些文本打印到标准输出,但我无法像 Console.Writeline("text") 那样在 C# 应用程序的输出中看到此文本。 我在

回答 1 投票 0

在 C# 控制台应用程序中查看 C 标准输出

I P/调用一个 C 函数 (fprintf),它将一些文本打印到标准输出,但我无法像 Console.Writeline("text") 那样在 C# 应用程序的输出中看到此文本。 我在

回答 1 投票 0

了解 SafeHandle 模式和用法

我一直在网上阅读一些材料,例如: https://www.meziantou.net/stop-using-intptr-for-dealing-with-system-handles.htm 因此,在 P/Invoke 中使用的模式如下: // 继承自

回答 1 投票 0

哪里调用base.WndProc()或base.DefWndProc()?

我有一些关于重写 Windows Form / NativeWindow 的 WndProc 方法的问题。 WndProc 和 DefWndProc 到底有什么区别?我只能重写WndProc,但是什么是

回答 2 投票 0

除了使用 P/Invoke 之外,如何在 hBitmap 上调用 DeleteObject()?

我正在处理类似这样的代码(来自这里) 使用 (var bmp = new System.Drawing.Bitmap(1000, 1000)) { IntPtr hBitmap = bmp.GetHbitmap(); var 源 = System.Windows.I...

回答 2 投票 0

我可以强制 MSTest 在每次测试运行时使用新进程吗?

我们使用 VS 2010 测试运行程序 (MSTest) 进行自动化功能测试。当我们从 Visual Studio 运行测试时,VS 创建一个名为 QTAgent32.exe 的进程,并在该进程中运行测试...

回答 4 投票 0

获取 C# P/Invoke 调用 C++ dll 的正确参数时出现问题

尝试从 Oracle 的 Outside In API 互操作功能。 具有以下功能: SCCERR EXOpenExport {VTHDOC hDoc,VTDWORD dwOutputId,VTDWORD dwSpecType, VTLPVOID pSpec、VTD...

回答 2 投票 0

为什么 GCHandle.Alloc 不能 pin 包含引用的对象?

我怀疑这个功能不存在的原因是实现起来很复杂,而且很少有人需要它。为了安全起见,您希望固定能够传递地工作,即您希望整个

回答 1 投票 0

将代码迁移到C#/Win32会导致异常

在我们(基于WinUI3)的项目中,我们一直在使用P/Invoke 包来调用修改窗口的低级方法。但最近所有这些软件包都已被弃用,取而代之的是源代码-

回答 1 投票 0

将字节数组传递给 PInvoke 调用会将其更改为 null

从 Visual Studio 2012 迁移到 2013 后,某些 PInvoke 调用无法像以前一样工作。 例如,我正在努力处理这段代码: 签名: [Dll导入(LzoDll64位)] 私人静态...

回答 1 投票 0

使用LibraryImport在多个dll中导入相同的函数

我正在创建一个 .net WebAPI,以促进从 Delphi 代码逐步迁移到 C#,但我们的代码库非常大,有 150 万多行代码。因此,我们正在尝试将我们的应用程序分解为小型库......

回答 1 投票 0

为什么 'IntPtr.size' 在 Windows 64 位上是 4?

我想当我使用IntPtr.Size时我应该得到8。不过,我在运行 Windows 7 x64 的 64 位计算机上仍然得到 4。为什么?

回答 4 投票 0

与 Visual Studio 2022 中的 .NET Framework 相比,如何在 .NET Core 6 中获取错误输出的窗口句柄

上下文: 我负责将服务从 .NET Framework 4.7.2 升级到 .NET Core 6。该服务由启动其他一些服务的主服务调用。这个主服务是...

回答 1 投票 0

如何将 DllGetClassObject 编写为 C# 委托?

有一个delphi写的导出的dll方法: DllGetClassObject: 函数(const CLSID, IID: TGUID; var Obj): HResult;标准调用; 我需要在 C# 中编写等效方法作为委托。应该如何...

回答 1 投票 0

如何在双重嵌套结构中编组数据

以下代码已经过简化,但体现了一般功能。目前它仅适用于 Struct1 和 Struct2,但我需要添加第三个结构。问题是尺寸...

回答 1 投票 0

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