从我的系统中引用System.ComponentModel.Composition.dll的位置?

时间:2017-03-17 08:31:41

标签: c# .net c#-4.0 reference system.componentmodel

我有一个生成some.dll的C#项目,它引用了一堆DLL,其中一个是System.ComponentModel.Composition.dll,位于C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0下。

我构建了some.dll并部署在Windows XP系统上。使用此some.dll的应用程序正常运行。但是当我尝试在Windows XP系统上查找System.ComponentModel.Composition.dll下的C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0时,我找不到它。

我只是想了解应用程序是如何正常运行的。

我想了解它的原因是,我在另一个系统中构建了some.dll并部署在另一个Windows XP系统上。当我尝试启动应用程序时,应用程序崩溃并出现错误:

Exception ::Could not load file or assembly 'System.ComponentModel.Composition.resources, Version=4.0.0.0, Culture=en-NZ, PublicKeyToken=b77a5c561934e089' or one of its dependencies. The system cannot find the file specified.

1 个答案:

答案 0 :(得分:2)

参考程序集在编译时使用。通常,就像这里一样,引用作为.NET Framework的 part 安装的程序集。将这些程序集置于C:\Windows\Assembly(对于GAC)或C:\Windows\Microsoft.Net下的某处。

在这种情况下,建议缺少组件的计算机没有安装正确版本的.NET。