-1

我有一个生成的 C# 项目,some.dll它引用了一堆 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.dllC:\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.
4

1 回答 1

2

参考程序集在编译时使用。通常,在这里,指的是作为.NET Framework 的一部分安装的程序集。这会将这些程序集放置在C:\Windows\Assembly(对于 GAC)或C:\Windows\Microsoft.Net.

在这种情况下,它往往会暗示缺少组件的机器没有安装正确版本的 .NET。

于 2017-03-17T08:40:40.293 回答