Marshal.AllocHGlobal VS Marshal.AllocCoTaskMem、Marshal.SizeOf VS sizeof()
我有以下结构: [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Auto)] public struct WAVEHDR { internal IntPtr lpData // pointer to lo…
C++内部代码重用:编译所有内容还是共享库/动态库?
一般问题: 对于非托管 C++,内部代码共享什么更好? 通过共享实际源代码来重用代码?或者 通过共享库/动态库(+所有头文件)来重用代码 无论是哪种:…
如何从 C++ 中删除字符串中的 \0当用 C# 读取时
我有点被困在这里了。我正在为 Commerce Server 2009 开发一个自定义 Pipeline 组件,但这与我的问题无关。 在管道的设置中,我为用户提供了一个窗口…
列表控件内的组合框? (非托管 C++)
我正在使用非托管 C++,我想知道是否可以在列表视图的列中嵌入组合框。我尝试过在谷歌上搜索信息,但我一直在寻找有关该主题的 C# 文章。 LVCOLUMN 的…
开始使用非托管 Windows 应用程序?
Closed. This question is opinion-based. It is not currently accepting answers. 想要改进这个问题?更新问题,以便可以通过编辑这篇文章用事实和…
从 C# 动态调用非托管 VB COM dll 时遇到问题?
我在从 C# 调用非托管 VB COM dll 时遇到问题。这是使用 loadLibrary 和 GetProcAddress 的动态调用。 我可以使用 loadLibrary 成功加载 dll,但 GetP…
如何正确地将 char * 从非托管 DLL 返回到 C#?
函数签名: char * errMessage(int err) 我的代码: [DllImport("api.dll")] internal static extern char[] errMessage(int err) ... char[] message…
C# 委托,带有对 c++ 的字符串引用打回来
我编写了一个 C# 应用程序,它通过托管 c++ dll 使用非托管 c++ dll。 在非托管 dll 中,有一个回调,其参数之一是 std::string&。 我似乎找不到用…
ITaskbarList3 未声明?
我正在尝试编写一些 C++ 代码来使用 ITaskbarList3,但出现该错误。我已确认我包含 shobjidl.h(但我检查过,该文件仅定义了 ITaskbarList2)。我安装…
调用非托管 dll 时发生 AccessViolation
从 ac# 应用程序调用非托管 Dll 时,我收到 AccessViolationException。奇怪的是,导出的函数没有参数,因此问题不在于数据的编组。该函数没有参数,…
在 C++ 之间发送 Byte[][]非托管 dll 和 C# 托管 dll
我有一个非托管 C++ dll,它导出以下方法: ERASURE_API void encode(unsigned char ** inp, unsigned char ** outp, unsigned int *block_nums, size…
委托实例和方法指针有什么区别?
我认为委托实例可以与函数实例互换。 采取以下代码: delegate int AddDelegate(int a, int b) AddDelegate DelegateInstance public void DoStuff() …
从 C# 调用非托管函数:我应该传递 StringBuilder 还是使用不安全代码?
我有一个 C# 程序,需要将字符缓冲区传递给非托管函数。我发现了两种似乎可靠的方法,但我不确定应该选择哪一种。 这是非托管函数的签名。 extern "C"…