Дополнительные сборки Media Center Plugin

Я пытаюсь написать плагин Windows Media Center в первый раз.

Плагин собирается использовать внешнюю сборку http://code.google.com/p/zeroconfignetservices/. Я построил проект, все компилируется правильно. Однако при запуске приложения в медиацентре в окне просмотра событий появляется следующая ошибка.

Exception System.IO.FileNotFoundException: Could not load file or assembly 'ZeroconfService, Version=0.6.0.0, Culture=neutral, PublicKeyToken=1df4e21661f2383d' or one of its dependencies. The system cannot find the file specified.

Но сборка загружается в GAC. Выход из gacutil /l zeroconfservice:

Microsoft (R) .NET Global Assembly Cache Utility.  Version 4.0.30319.17929
Copyright (c) Microsoft Corporation.  All rights reserved.

The Global Assembly Cache contains the following assemblies:
zeroconfservice, Version=0.6.0.0, Culture=neutral, PublicKeyToken=1df4e21661f2
383d, processorArchitecture=x86

Number of items = 1

Я также попытался поместить копию ZeroconfService.dll в тот же каталог, что и плагин медиацентра.

Что еще нужно сделать, чтобы плагин медиацентра увидел сборку?

Чтобы быть тщательным, было одно предупреждение при компиляции кода. Я обычно не являюсь разработчиком.Net и не понимаю нюансов предупреждения. Возможно, это связано?

warning MSB3270: There was a mismatch between the processor architecture of the project being built "MSIL" and the processor architecture of the reference "ZeroconfService", "x86". This mismatch may cause runtime failures. Please consider changing the targeted processor architecture of your project through the Configuration Manager so as to align the processor architectures between your project and references, or take a dependency on references with a processor architecture that matches the targeted processor architecture of your project.

2 ответа

Убедитесь, что ваш проект плагина нацелен на x86. Ваш управляемый проект, вероятно, использует JIT для 64-битного кода, что заставит фреймворк искать 64-битную сборку. В Visual Studio 2012 это в Свойствах проекта-> Сборка-> Цель платформы

-Скриншот свойств проекта>

У меня была та же самая ошибка, и я собирался сдаться. Решение, которое я нашел, состояло в том, что во всех инструкциях, предоставляемых Windows Media Center SDK, явно сказано, что он должен быть построен для x86. Решением было изменить это на x64. Как примечание, я использую 64-битный процессор Windows 7.

Другие вопросы по тегам