我应该在使用 VS2008 的 .NET 项目中将非托管 .dll 放置在哪里?

发布于 2024-08-19 20:20:34 字数 185 浏览 8 评论 0原文

到目前为止,我一直将 dll 放入 /bin 文件夹中,因为它似乎是调用 DllImport'd 函数时加载它的唯一位置,但感觉不太对劲,因为它是输出文件夹,而且它在“项目清理”或“重建全部”操作后可能会被擦除。

我该怎么做?提前致谢。

注意:我无法将 .dll 嵌入到 .exe 中,因为作者明确希望 dll 从外部可见。

So far I've been placing the dll into the /bin folder because it seems to be the only place it will get loaded when a DllImport'd function is called, but it just doesn't feel right since it's the output folder and it'll probably be wiped after a 'project clean' or 'rebuild all' operation.

How should I do this? Thanks in advance.

Note: I cannot embed the .dll into the .exe because the author explicitly wants the dll to be visible from the outside.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

亢潮 2024-08-26 20:20:34

试试这个:

  • 在项目中创建一个文件夹,
  • 将非托管程序集放入其中,在“
  • 属性”选项卡上将“复制到输出目录”更改为“复制较新的”

Try this:

  • Create a folder into your project
  • Place your unmanaged assemblies in there
  • Change "Copy to Output Directory" to "Copy If Newer" at Properties tab.
心作怪 2024-08-26 20:20:34

使用 VS 在项目中创建一个名为 Lib 的新文件夹。将您的 DLL 复制到那里并从那里引用它们。

Use VS to create a new folder in your project called Lib. Copy your DLLs there and reference them from there.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文