我有各种版本的.NET Framework安装在运行XP Professional的远程计算机上(版本1.1直通4.0)。我已经安装了无功扩展得的好办法。
I've various versions of the .NET Framework (versions 1.1 thru 4.0) installed on a remote machine running XP Professional. I've installed Reactive Extension too for good measure.
我也有它的作品在我的机器,因为它引用的System.Threading发现这里上的应用程序: C:\ Program Files文件\微软无扩展\ REDIST \ desktopV2 \ System.Threading.dll
I also have an application which works on my machine because it references System.Threading found here: C:\Program Files\Microsoft Reactive Extensions\redist\desktopV2\System.Threading.dll
我有两个版本在GAC也。
I have two versions of the DLL in the GAC also.
两个问题:
我)为什么Visual Studio的决定,这是版本(实例)来引用,当我从列表中选择,而不是浏览到该文件?
i) Why did Visual Studio decide that this is the version (instance) to reference when I chose from the list rather than browsing to to the file?
二)为什么不的System.Threading在远程计算机上存在吗? (我以为是框架的核心组成部分)
ii) Why does System.Threading not exist on the remote machine? (I thought it was a core part of the Framework)
感谢
System.Threading.dll中添加了.NET 4.0(虽然命名空间的的System.Threading
自V1已经出现)。接收包括版本System.Threading.dll的被反向移植到.NET 3.5 SP1。
System.Threading.dll was added in .NET 4.0 (though the namespace System.Threading
has been around since v1). Rx includes a version of System.Threading.dll that was backported to .NET 3.5 SP1.
这听起来像你的目标.NET 3.5。在这种情况下,运行时不会加载了一块4.0只System.Threading.dll(显然)。你装会失败,除非你包括接收版本System.Threading.dll连同你的程序。
It sounds like you're targeting .NET 3.5. In this case, the runtime won't load a 4.0-only System.Threading.dll (obviously). Your loading would fail unless you included the Rx version of System.Threading.dll along with your program.
要直接回答的问题:
在接收注册自己的私有目录为框架的扩展。这是它如何通过VS发现。 System.Threading.dll只包含在.NET 4.0,所以如果你是针对较早的框架,它不会被发现。要解决你的问题,要么你的程序的目标。NET 4.0或包括接收的System.Threading.dll随着你的程序。
To solve your problem, either have your program target .NET 4.0 or include Rx's System.Threading.dll along with your program.
P.S。我建议您升级到RX的最新版本。该 desktopV2
文件夹没有被用于最后的几个版本。升级时,先卸载旧版本 - 它的工作原理更好的办法
P.S. I recommend upgrading to the latest version of Rx. The desktopV2
folder hasn't been used for the last few releases. When upgrading, uninstall the old version first - it works better that way.