Моя машина разработки - VirtualBox с Window Server 2008 R2. Мы используем CRM2011 с рулонной 12. Для моего развития я использую рамку 4Чтение реестра
От CRM я называю ASPX-страницу, эта страница содержит сетку с записями я могу выбрать. После того, как я сделал выбор, я нажимаю кнопку и передает выбор на сборку. Эта сборка имеет функцию, которая проверяет наличие определенного ключа в реестре. Если так, то он продолжается, если не возвращается.
Проблема, с которой я столкнулся, заключается в том, что я получаю сообщение об ошибке, пытаясь прочитать реестр, используя OpenSubKey(), сообщающий мне, что я не уполномочен делать это. Для извлечения ключа я использую код ниже. Сборка не подписана. Подписание сборки не приводит к изменению результата.
RegistryKey localKey = null;
if (Environment.Is64BitOperatingSystem)
{
localKey = RegistryKey.OpenBaseKey(Microsoft.Win32.RegistryHive.CurrentUser, RegistryView.Registry64);
}
else
{
localKey = RegistryKey.OpenBaseKey(Microsoft.Win32.RegistryHive.CurrentUser, RegistryView.Registry32);
}
Выполнение этой же задачи из консольного приложения с использованием той же сборки не создает проблем.
С уважением, Martin
Проблема решена. Это связано с правами пользователя. Тестпрограмма запускалась под руководством администратора, в то время как другая программа выполнялась под управлением crm-user rigths. – Bokkie