gpt4 book ai didi

visual-studio-2008 - 在 C# 中将一个 DLL 嵌入到另一个 DLL 中

转载 作者:行者123 更新时间:2023-12-05 01:27:16 28 4
gpt4 key购买 nike

我正在构建一个类库应用程序,其中包含一些引用 dll,例如 Skype4COM,这显然不是 native 对象,所以我只想了解如何将此 dll 嵌入到我在构建解决方案后显示的 dll 中。

我只是不想看到人们在开发此应用程序时使用了哪个 dll,也不希望他们费力地使用 skype4com.dll 将其导入到他们的项目中。

P.s : 要使用 skype4com.dll,需要使用 cmd 窗口在 Windows 上注册它:regsvr32.exe dllpath

那么它会导致错误还是有任何解决方法。

提前致谢。

真诚的。

最佳答案

IMO,试图隐藏你的依赖关系是一个糟糕的理由。撇开其他不谈,除非您混淆代码,否则使用 Reflector 等工具反编译它的任何人仍然可以看到它。

不过,尝试简化部署是一个很好的理由。坏消息是,据我所知,对于 .NET 3.5 中的 COM 对象,没有简单的安装方法。

好消息是,在 C# 4.0 和 .NET 4.0 中,有一种替代方法可以更轻松地使用 COM 部署库。您可以链接 PIA 而不是引用它,这使得编译器在您的程序集中嵌入刚好的信息以获取真正的 COM 库和您使用的类型/成员。然后您就不需要运送或安装 PIA。

如果您可以等待 .NET 4.0,这就是我对 COM PIA 采取的方法,但对于其他任何东西,我只会单独提供库。撇开其他不谈,使用你的库的开发人员可能已经在使用你所依赖的相同类库:引入两个单独的副本会非常困惑。如果您等不及 .NET 4.0(或者不想强制您的用户部署它),那么恐怕您必须以正常方式安装 COM PIA。

关于visual-studio-2008 - 在 C# 中将一个 DLL 嵌入到另一个 DLL 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1198271/

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