mixed-mode相关内容

C++/CLI混合模式不允许文件结构?

我有一个旧的Visual Studio C++6.0 DLL,我正试图在托管C++/CLI代码中调用它。 以下是我使用的项目设置: 为非托管代码添加其他头目录 为非托管代码添加其他库目录 指定非托管代码的lib文件名 将clr选项设置为/clr 已删除预编译头 我使用的是VS2012,所以我尝试将工具降低到VS2008 我刚刚在托管C++/CLI代码中添加了非托管代码的主头。 ..
发布时间:2022-07-01 14:20:14 C#/.NET

混合模式库和 CRT 依赖项 - 帮助

好的,在进行了大量研究并尝试了几乎所有我能找到的托管 CPP Redist 以及尝试将我的 DLL 本地复制到应用程序的执行目录之后,我无法弄清楚我缺少哪些依赖项.模式库. 基本上我有一个大型 C# 应用程序,我正在尝试使用我制作的混合模式库.在开发机器上它可以完美运行(当然),但在需要加载库以供使用时部署它会因为缺少 CRT 依赖项而出现异常(我假设). 我已经使用依赖项遍历器检查所 ..
发布时间:2022-01-15 22:53:58 C#/.NET

新的 SQLite 混合程序集

以前可从 http://sqlite.phxsoftware.com 获得 .NET SQLite 库,但它们最近被主要的 SQLite 团队接管并转移了System.Data.SQLite 下载页面.新包似乎不再包含混合程序集(包含 sqlite3.dll 和 .NET 包装器的单个程序集). 新包带有 .NET DLL 和 SQLite.Interop.dll,基于文档的桌面不需要,但我 ..
发布时间:2021-12-19 16:19:44 C#/.NET

C++/CLI 混合模式 DLL 创建

我有一个本机 C++ DLL,我想要一个 C++/CLI 包装层.据我了解,如果您简单地向项目添加 C++/CLI 类,VS 将编译为混合模式,但我显然错了,因为 VS 似乎甚至没有触及托管代码. 那么,给定一个预先存在的本机代码库,确切地,您是否需要逐步创建混合模式 DLL,以便我可以链接到该代码库来自任何 .NET 语言的代码? *我需要这样做,因为我的本机代码使用我无法 P/In ..
发布时间:2021-12-02 14:01:41 C#/.NET

针对 AD 的混合模式身份验证,如果使用成员资格提供程序失败,则回退到数据库

我的用户将针对 Active Directory 或数据库使用表单身份验证.那里没有 Windows 集成身份验证! 我想要的是当用户提交身份验证表单时,它会尝试根据 Active Directory 验证用户,如果失败,请尝试使用数据库. 我该怎么做?我的想法是构建一个自定义成员资格提供程序来封装逻辑,但我不知道如何开始. 有什么更好的主意吗? 解决方案 实现这一点的唯 ..

运行使用/clr 构建的 DLL 的本机 C++ 应用程序时的访问冲突

我正在重组一个传统的混合(托管和非托管 DLL)应用程序,以便主应用程序段是非托管 MFC,并且将调用使用/clr 标志编译的 C++ DLL,该标志将桥接托管(C# DLL)之间的通信和非托管代码.不幸的是,我的更改导致在调用应用程序 InitInstance() 之前发生访问冲突.这使得调试非常困难.我得到的唯一信息是以下堆栈跟踪. >64006108()ntdll.dll!_ZwCreat ..
发布时间:2021-11-26 20:15:51 其他开发

运行使用/clr 构建的 DLL 的本机 C++ 应用程序时的访问冲突

我正在重组一个传统的混合(托管和非托管 DLL)应用程序,以便主应用程序段是非托管 MFC,并且将调用使用/clr 标志编译的 C++ DLL,该标志将桥接托管(C# DLL)之间的通信和非托管代码.不幸的是,我的更改导致在调用应用程序 InitInstance() 之前发生访问冲突.这使得调试非常困难.我得到的唯一信息是以下堆栈跟踪. >64006108()ntdll.dll!_ZwCreat ..
发布时间:2021-11-26 20:15:29 其他开发

如果有选择,混合模式程序集与单独的互操作 DLL 的优缺点是什么?

当在“混合模式程序集"和“单独的互操作 dll"版本中都提供 3rd 方组件时,每个版本的优缺点是什么? 一个很好的例子是System.Data.SQLite. 上面的链接是这样说的: [混合模式程序集] 包仅应在程序集二进制文件出于某种原因必须部署到全局程序集缓存的情况下使用. 但是为什么?混合模式程序集在我的项目中似乎工作得很好,没有安装 GAC(只是 xcopy 到应 ..
发布时间:2021-11-26 12:21:09 C#/.NET

.NET 4 中的混合模式程序集

大约 2 年前,我在 .NET 2.0 中编写了一个用于数据库访问的类库,并且一直在 .NET 2.0、3.0 和 3.5 上使用它. 在我正在处理的当前项目(这是一个 .NET 4.0 应用程序)中,尝试使用旧的忠实类库,但出现以下异常: System.InvalidOperationException 未处理Message=创建表单时出错.有关详细信息,请参阅 Exception.In ..
发布时间:2021-11-26 10:33:46 C#/.NET

如果有选择,混合模式程序集与单独的互操作 DLL 的优缺点是什么?

当在“混合模式程序集"和“单独的互操作 dll"版本中都提供 3rd 方组件时,每个版本的优缺点是什么? 一个很好的例子是System.Data.SQLite. 上面的链接是这样说的: [混合模式程序集] 包仅应在程序集二进制文件出于某种原因必须部署到全局程序集缓存的情况下使用. 但是为什么?混合模式程序集在我的项目中似乎工作得很好,没有安装 GAC(只是 xcopy 到应 ..
发布时间:2021-11-24 11:41:52 C#/.NET

混合模式程序集是针对运行时的“2.0.50727"版本构建的,无法在 4.0 运行时中加载

我使用的是 Visual Studio 2012 和 .Net Framework 4.5我有 2 个解决方案:1)WPF 应用程序 2)类库(dll) 类库包含 3 个按钮和一个必须位于 WindosFormsHost 控件内的控件,因为它是为 WinForms 制作的. .NET Framework 之外唯一引用的程序集用于上述 winforms 控件和 iTextSharp. ..
发布时间:2021-11-24 09:29:11 C#/.NET

“当前不会命中断点"调试混合模式应用程序时出错(c# 和非托管 c++)

在 VS2010 中调试混合模式应用程序时,在非托管 c++ dll 源文件(从托管 c# 包装类调用)中包含的一行代码上设置的断点显示臭名昭著的“当前不会命中断点.否已为此文档加载符号"信息消息,将鼠标悬停在相关行的断点上.断点本身是一个带有黄色信息三角形的红色圆圈,而不是通常的纯红色球体.当然,执行调试器时不会命中断点.我为这个警告找到的大多数答案都表明断点设置不正确,或者没有加载预期的 dl ..
发布时间:2021-09-25 20:22:23 C#/.NET

C3859:超出了PCH的虚拟内存范围

我不时(并非每次)都收到此错误消息,我在混合模式项目中进行了编译(编辑:对不起,我在这里并没有明确指出:我的意思是“重建").而且Visual Studio告诉我“使用'-Zm114'或更高版本的命令行选项重新编译".原则上没问题,我就是按照VS告诉我的. 但是目前,这有两个问题: 为什么每次都不会发生,我要进行重建吗?如果我理解正确,则编译器在编译项目时会耗尽内存.因此,如果我进行重 ..

调试包装在C ++ / CLI DLL中的静态库时,调试器不会进入本机代码

在C#应用程序中,我引用的是本机C静态库,该库包装在C ++ / CLI DLL中。我选择静态库而不是DLL,因为我还有其他与应用程序向用户发布过程相关的约束。在该论坛上可用的众多主题中,我发现了以下实现。 Main: { MyCLRDLL test = new MyCLRDLL(); if(test.go())Console.WriteLine(“ Hello,wrld”); ..
发布时间:2020-09-28 03:43:33 其他开发

指针的std :: array或std :: vector

我在C ++ / CLI数组中有一个数据数组,可以使用 pin_ptr 传递给本机函数,到目前为止没有问题。但是,现在,我需要将该数组传递给C ++ / STL函数,该函数需要一个容器,例如 std :: array 或 std ::向量。 最简单的方法(我首先做过)是逐个元素地复制。 第二种最简单的方法是调用 std :: copy(),请参见以下问题的答案:将System ..
发布时间:2020-09-25 04:24:58 其他开发

如何在IronPython 2.7中引用针对运行时版本'v2.0.xxx'构建的程序集?

我正在尝试为针对运行时版本'v2.0.50727'构建的程序集(thirdPartyDLL)创建包装器.但是,每当我尝试在IronPython代码中引用它时,总是会导致以下错误 IOError:System.IO.FileLoadException:混合模式程序集是针对运行时的版本"v2.0.50727"构建的,如果没有其他配置信息,则无法在4.0运行时中加载. 我的包装器仅是一个类库 ..
发布时间:2020-06-30 22:42:28 C#/.NET

在混合模式DLL中链接到presentationcore.dll

我们有一个用C ++编写的混合模式DLL,它包装了本机C ++ DLL并公开了托管类.在公开的托管类中,我们使用Vector3D等类型的方法参数,它们是PresentationCore.DLL的一部分. 因此,混合模式C ++代码需要引用PresentationCore.DLL.我们通过 #using 这需要项目的搜索路径包含其中存在P ..
发布时间:2020-06-30 22:42:23 C/C++开发