gpt4 book ai didi

c# - C++/CLI clr :safe for C# COM Interop 中的包装器 C++

转载 作者:太空宇宙 更新时间:2023-11-04 14:22:01 25 4
gpt4 key购买 nike

有什么方法可以为 C++ 非托管项目制作包装器 clr:safe 吗?

我的小故事就这样开始了,
“男孩,你必须做一个项目‘C# COM Interop’,但这个项目必须使用‘C++ 库’,并且必须只产生‘一个’(dll COM)。”
好的,经过几天的搜索,我意识到可以通过两种方式使用 C++ 库:添加资源并使用 PInvoke 调用或创建包装器 C++/CLI。使用 PInvoke,我不能只有一个 dll(对吗?)。所以我选择了第二个选项“wrapper C++/CLI”。一开始看起来很容易,我重新编译库 Visual Studio 2005 到 2010,创建一个 CLR 项目(使用 keypair.snk 并重新签名)添加库。作品!\0/现在我将使用 ILMerge,ohhhoo 这是什么?只有 clr:safe?为什么?好的,我尝试将 C++/CLI 重新编译为 clr:safe 但出现错误...

我该如何解决这个问题?

提前致谢

最佳答案

ILMerge 不是执行此操作的合适工具。

相反,您将 C# 编译为 .net 模块,并将其与所有 C++/CLI 目标文件一起传递给 C++/CLI 链接器。

关于c# - C++/CLI clr :safe for C# COM Interop 中的包装器 C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6769240/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com