Можно ли создать .NET DLL с видимыми типами COM без VS, требующего повышения прав? - PullRequest
8 голосов
/ 24 марта 2011

Сборка в проекте имеет тип, помеченный ComVisible (true).

При сборке (без повышенных прав) VS пытается зарегистрировать эту DLL и завершается ошибкой:

Невозможно зарегистрировать сборку "\ path \ to \ foo.dll" - доступ запрещен. Пожалуйста, убедитесь, что вы запускаете приложение от имени администратора. Доступ к разделу реестра «HKEY_CLASSES_ROOT \ CLSID {FFC174A1-CC90-4E25-A3F6-C30B03368250}» запрещен.

Мы не хотим, чтобы DLL регистрировалась на сборочных машинах. Мы хотим зарегистрировать его только при установке его для конечного пользователя.

Так возможно ли построить без регистрации DLL?

1 Ответ

6 голосов
/ 24 марта 2011

Так возможно ли построить без регистрации DLL?

Да.В настройках проекта (щелкните правой кнопкой мыши «Свойства») в разделе «Сборка» есть флажок «зарегистрироваться для взаимодействия COM».

...