Как сделать сервисное приложение С# win для ссылки на сборки с хост-компьютера

I am building an agent service in C# to communicate with SCVMM installed on host. To do that the agent refers the following assemblies: Microsoft.SystemCenter.VirtualMachineManager.dll and Erros.dll etc.

В среде разработки Visual Studio я добавил ссылки на приложение агента. Когда я создаю в режиме отладки/выпуска, в основном я не копирую вышеуказанные сборки в каталог отладки/выпуска, поскольку агент будет распространяться среди клиентов. В основном приложение агента взаимодействует с SCVMM, SCVMM должен быть установлен до установки приложения агента.

Одна вещь, которую я не понимаю, - это как заставить службу агента ссылаться на файлы Microsoft.SystemCenter.VirtualMachineManager.dll и т. д., которые уже существуют в папке <SCVMM root>/bin.


person Bala    schedule 07.10.2011    source источник
comment
Добавляются ли эти сборки в GAC при их установке на машину?   -  person CodingGorilla    schedule 07.10.2011
comment
Нет, установка SCVMM не регистрирует сборки в GAC.   -  person Bala    schedule 08.10.2011


Ответы (1)


Ссылка как обычно в Visual Studio и перед вызовом любого метода в вызове dll:

AppDomain.CurrentDomain.AppendPrivatePath(scvmmroot + "/bin");

Вы также можете сделать это в файле yourapp.exe.config (см. Установить пользовательский путь к ссылочной библиотеке DLL? ) Но поскольку ваш путь не относится к исполняемому файлу, это означает создание файла .config в вашей программе установки.

person Julien Roncaglia    schedule 07.10.2011