【问题标题】:Where to put my dll files using F#使用 F# 将我的 dll 文件放在哪里
【发布时间】:2011-07-14 09:42:48
【问题描述】:

我有一个包含托管和非托管 C#、C++ dll 文件的库。我想从 F# 中引用它。我在哪里可以放置 C#、C++ dll 文件?我不能将它们放在应用程序文件夹中(我必须有copy local = false),只有我会使用该程序。我试过 windows/system32,GAC 使用 setup 并添加 PATH 变量指向一个包含所有 dll 文件的文件夹,但似乎都不起作用。

感谢任何提示

【问题讨论】:

  • 老实说,你为什么不能把它们放在最有意义的地方(应用程序文件夹)?这是一个真正的约束吗?
  • 我会将一个应用程序复制到 60 个位置并运行它 -> 用于参数研究并作为未来应用程序的备份。我正在谈论的 dll 是 50 MB (VTK),因此会浪费空间,因为我将运行越来越多的参数研究
  • 如果您将搜索路径添加到可以找到 dll 的系统中,则应该可以毫无问题地加载它。如果这没有发生,您可以尝试使用免费的、优秀的进程监视器来查看系统尝试从哪里加载您的 dll,然后将它们放在那里。

标签: c# c++ visual-studio dll f#


【解决方案1】:

在 Visual Studio 中构建应用程序时,它会在所有默认文件夹(取决于您的操作系统、.NET Framework 版本和其他内容)以及您在项目配置中指定的位置查找引用。右键单击解决方案资源管理器中的项目,单击属性并转到参考路径选项卡。添加 C:\MyDllFolder 或任何东西。

如果您在所有使用该 dll 的应用程序中执行此操作,则只需将其放在那里一次。

【讨论】:

  • 我已经尝试过了,但即使我为所有 dll 设置了copy local = false,它们也会被复制到 bin/release 文件夹中。
【解决方案2】:

您可以指定 dll 位置 MSDN : Specifying an Assembly's Location 或使用类似的东西

Assembly.LoadFrom

如果你想要动态。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-12-10
    • 2015-02-28
    • 1970-01-01
    • 1970-01-01
    • 2020-12-27
    • 1970-01-01
    • 2013-08-29
    相关资源
    最近更新 更多