FileNotFoundException при использовании Microsoft.VisualStudio.Coverage.Monitor.dll - PullRequest
0 голосов
/ 12 сентября 2010

Консольное приложение C # со ссылкой на c:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PrivateAssemblies\DataCollectors\x86\Microsoft.VisualStudio.Coverage.Monitor.dll:

using Microsoft.VisualStudio.CodeCoverage;

namespace ConsoleApplication2
{
    class Program
    {
        static void Main(string[] args)
        {
            Monitor m = new Monitor();
        }
    }
}

Строка создания объекта выдает FileNotFoundException с сообщением Could not load file or assembly 'Microsoft.VisualStudio.Coverage.Monitor.dll' or one of its dependencies. The specified module could not be found.

Любая идея, почему это происходита как можно исправить?

Ответы [ 2 ]

3 голосов
/ 12 сентября 2010

или одна из его зависимостей

Что является соответствующей частью сообщения об ошибке. Он зависит от vspmsg.dll из того же каталога, вам придется скопировать его вручную в папку bin \ Debug. Использование частных сборок, исключительных для Visual Studio, довольно смело.

1 голос
/ 12 сентября 2010

В этой DLL есть 4 ссылки (вот что вы найдете в ILDASM.exe):

.module extern **KERNEL32.dll**
.module extern **MSVCR100.dll**
.assembly extern **mscorlib**
{
  .publickeytoken = (B7 7A 5C 56 19 34 E0 89 )                         // .z\V.4..
  .hash = (AF 35 A4 2A B0 0E 9D FC 8A 27 B8 29 E5 56 7D 12   // .5.*.....'.).V}.
           18 84 3C 6B )                                     // ..<k
  .ver 4:0:0:0
}
.assembly extern **Microsoft.VisualC**
{
  .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A )                         // .?_....:
  .hash = (1B D7 52 11 F8 FD 90 65 01 8A 53 AA 7F 87 91 6D   // ..R....e..S....m
           F8 E3 72 91 )                                     // ..r.
  .ver 10:0:0:0
}

Первые две используются как C DLL, а две другие - как .NET.Убедитесь, что у вас есть Microsoft.Visual (в GAC) и MSVCR100.dll (где-то на вашем компьютере, который также является путем).

...