Мой коллега пытается зарегистрировать некоторые COM-компоненты (которые я написал) через RegAsm.exe, и он говорит, что ему нужны привилегии администратора. У его учетной записи есть привилегии администратора, но он не зарегистрирован как Администратор. Есть ли способ использовать его обычную учетную запись пользователя и преуспеть в этой задаче?Могу ли я запустить RegAsm без администратора?
ответ
Права администратора необходимы, чтобы Regasm.exe обновил реестр. Если это ограничение UAC, создайте ярлык на рабочем столе для cmd.exe и установите флажок «Запустить эту программу как администратор». Или измените этот параметр в ярлыке командной строки Visual Studio, это проще.
Я думаю, что этот вопрос принадлежит в другом месте, но Windows использует наименьшие привилегии, поэтому, если он является пользователем, который является обычным пользователем и администратором, чем он получает обычные привилегии пользователя. Используйте runas для выполнения этой работы или щелкните правой кнопкой мыши элемент и «запустите как администратор»
Почему бы вам не использовать registration free com? Он поддерживается только с 2003 года и устраняет необходимость в UAC/административном доступе для установки COM-компонентов.
С RegFree COM вы можете просто связать DLL-файлы COM с приложением, которое использует их как частную сборку, но это не значит, что они не могут быть установлены правильно - либо в реестре, либо в WinSxS путем окончательного развертывания install.exe/MSI
Subtext WRT фактический запрос: нет - COM регистрации в ключе HKEY_LOCAL_MACHINE, который всегда требует доступа администратора.
Я солгал: на самом деле вы можете. Если вы создаете приложение без манифеста вообще, Windows выводит, что это приложение эпохи XP, ожидающее административного доступа для запуска, и активирует режим совместимости, который среди других функций перенаправляет доступ на запись к HKLM в доступное для записи место в HKCU. Таким образом, регистрация COM-компонента «успешно» - но зарегистрирована только для текущего пользователя.
Я не уверен, почему возможность регистрироваться только для текущей учетной записи не поддерживается вообще вне рамки совместимости.
Я работаю в среде/юрисдикции, где предоставление доступа локальным администраторам для всех пользователей просто невозможно (юридические/соблюдение/правила не позволят).
Оказывается нет эквивалента этой функции в мире .NET: AtlSetPerUserRegistration
Попробуйте это: Использование regasm, генерировать записи реестра с/RegFile аргументом. По умолчанию записи реестра должны использовать HKEY_CLASSES_ROOT (HKCR) в качестве корня. Измените записи (вручную или по сценарию), чтобы использовать HKEY_CURRENT_USER (HKCU).
Наконец, распространяйте свою .NET DLL с помощью скрипта реестра. Вы можете запустить regedit без прав администратора для регистрации вашей DLL-библиотеки .NET. В ручном режиме из командной строки, используя пакетный файл, или (небольшая) отдельная программа установки может обрабатывать регистрацию.
Я зарегистрирован в учетной записи с правами администратора. Но RegAsm.exe все еще говорит, что ему нужны привилегии администратора.
[Из некоторых заметок у меня есть дляWindows 2008 R2. Подтвердите действие в других операционных системах Windows, поддерживающих UAC. Далее предполагается, что вам разрешено вносить изменения в Локальную политику безопасности.]
В конфигурации по умолчанию, Контроль учетных записей параметров (UAC) дают локальный администратор полные привилегии, но ограничить привилегии других членов группы администраторов. Для того, чтобы снять ограничения контроля учетных записей на других членов группы администраторов, выполните следующие действия:
- Выберите Start ->Все программы ->Администрирование ->Локальная политика безопасности.
- Местные политики ->Опции безопасности.
- На правой панели дважды щелкните третью запись снизу, которая читает Контроль учетных записей пользователей: запустите всех администраторов в режиме одобрения администратора.
- Нажмите Отключено.
- Нажмите OK, чтобы закрыть диалоговое окно и закрыть инструмент настройки локальной политики безопасности.
- Перезагрузите компьютер, чтобы выполнить это изменение в настройках UAC.
- 1. COM Interop без Regasm
- 2. Regasm стенает учетной записи администратора
- 3. Могу ли я запустить Dymola без GUI?
- 4. Могу ли я запустить Typo3 без символических ссылок?
- 5. Могу ли я использовать файл * .tlb без использования Regasm для регистрации на компьютере
- 6. Могу ли я создать RegAsm .Net2 dll с .Net4 RegAsm.exe?
- 7. Могу ли я установить Visual Studio без прав администратора?
- 8. Могу ли я запустить Erlang без локальных прав администратора в Windows?
- 9. Возможно ли запустить Oracle в Windows XP без прав администратора?
- 10. Regasm
- 11. Могу ли я запустить Koajs без тега --harmony
- 12. Могу ли я запустить программу C, содержащую setuid() без sudo?
- 13. Могу ли я запустить TFS 2013 должным образом без SharePoint?
- 14. Могу ли я запустить гибридное приложение Angular2 без SystemJS?
- 15. Могу ли я запустить NSOperation внутри другого NSOperation без очереди?
- 16. Могу ли я запустить приложение Android на ПК без эмулятора?
- 17. Могу ли я запустить эмулятор без HAXM в Android Studio?
- 18. Могу ли я запустить веб-сайт Jekyll без веб-сервера?
- 19. Могу ли я запустить сервис без активности или приемника?
- 20. Могу ли я запустить тестовый проект, используя NAnt без NUnit
- 21. Могу ли я запустить приложение внутри Facebook iFrame без входа?
- 22. Могу ли я запустить задачу async без запуска приложения?
- 23. Как в Delphi я могу запустить команду с правами администратора?
- 24. Как я могу запустить код питона с правами администратора
- 25. Как я могу запустить приложение «Запуск от имени администратора»?
- 26. Как я могу запустить модуль администратора в zend 2.3?
- 27. Как я могу запустить SASS без установки?
- 28. C# DLL из VBScript, не Regasm
- 29. Где я могу оставить freeglut.dll без прав администратора?
- 30. Могу ли я запустить Solaris EC2?