如何为所述 DLL 中的功能引用特定的 DLL
How to reference a specific DLL for functionality in said DLL
美好的一天,
我开发了一个应用程序,可以在两台机器("site" 和 "server")之间传输文件。此应用程序设置为目标 dotNet 3.5。此外,我正在使用 Renci.SshNet 来处理机器之间的连接和上述文件的传输。
我目前面临的问题是,大约 70% 的 "site" 机器没有标准的 dotNet,而且也很旧;因此这些机器不支持所有必需的功能,因为外部 dll 调用 System.Threading.WaitHandle.WaitOne()
和 System.Threading.WaitHandle.WaitAny(WaitHandle[], Int32)
以及这些方法的其他重载。
我对此的解决方法是安装 netfx20SP2 或 netfx30SP1,但我无法在所有机器上执行此更新,因为它们分散在全国各地并且有数据限制(带宽和上限) .
我想做的可能是嵌入我下载的 System.Threading dll,然后应用程序应该使用那些 类,或者只是指向应用程序使用所述 dll .
这完全可能吗,还是必须将 dll 加载到 GAC 中?而且,当系统本身处于较低框架版本时,是否可以在应用程序中 "run" System.Threading 这个更高版本。有些事情告诉我,最好的办法是实际 运行 安装服务包以避免不必要的编码,但我不确定如何解决这个问题。
提前感谢您的任何帮助/建议,
京东
允许执行以 .Net 4 为目标的应用程序;虽然机器本身只安装了 .Net 3.5,但可以重定向 Windows 以检查本地(执行)目录中的 dll,这些 dll 应包含加载到内存中的所需符号,而不是加载的默认符号执行时(默认是机器上安装的 NetFx - 我相信在执行开始时加载时可以找到的最高版本的框架,或者是低于或等于目标框架的最高可用版本) .
忽略此文件的内容 (myApp.exe.local
)。它只是告诉 Windows
在该文件夹中查找适用的符号,如果未找到,系统将回滚以尝试从 NetFx 目录加载这些符号。
在 Microsoft 开发人员中心阅读更多信息 - 文档(link 附在以下段落中,该段落是本文档的一部分的复制粘贴)。
美好的一天,
我开发了一个应用程序,可以在两台机器("site" 和 "server")之间传输文件。此应用程序设置为目标 dotNet 3.5。此外,我正在使用 Renci.SshNet 来处理机器之间的连接和上述文件的传输。
我目前面临的问题是,大约 70% 的 "site" 机器没有标准的 dotNet,而且也很旧;因此这些机器不支持所有必需的功能,因为外部 dll 调用 System.Threading.WaitHandle.WaitOne()
和 System.Threading.WaitHandle.WaitAny(WaitHandle[], Int32)
以及这些方法的其他重载。
我对此的解决方法是安装 netfx20SP2 或 netfx30SP1,但我无法在所有机器上执行此更新,因为它们分散在全国各地并且有数据限制(带宽和上限) .
我想做的可能是嵌入我下载的 System.Threading dll,然后应用程序应该使用那些 类,或者只是指向应用程序使用所述 dll .
这完全可能吗,还是必须将 dll 加载到 GAC 中?而且,当系统本身处于较低框架版本时,是否可以在应用程序中 "run" System.Threading 这个更高版本。有些事情告诉我,最好的办法是实际 运行 安装服务包以避免不必要的编码,但我不确定如何解决这个问题。
提前感谢您的任何帮助/建议, 京东
允许执行以 .Net 4 为目标的应用程序;虽然机器本身只安装了 .Net 3.5,但可以重定向 Windows 以检查本地(执行)目录中的 dll,这些 dll 应包含加载到内存中的所需符号,而不是加载的默认符号执行时(默认是机器上安装的 NetFx - 我相信在执行开始时加载时可以找到的最高版本的框架,或者是低于或等于目标框架的最高可用版本) .
忽略此文件的内容 (myApp.exe.local
)。它只是告诉 Windows
在该文件夹中查找适用的符号,如果未找到,系统将回滚以尝试从 NetFx 目录加载这些符号。
在 Microsoft 开发人员中心阅读更多信息 - 文档(link 附在以下段落中,该段落是本文档的一部分的复制粘贴)。