Покажите, что Ошибка Visualizers “не могла загрузить это пользовательское средство просмотра”

Когда я пытаюсь осмотреть DataSet стандартным DataSet visualizer, я вижу, что эта ошибка "не могла загрузить это пользовательское средство просмотра". Я записал простой набор данных visualizer, но ошибочные броски так или иначе также.

На других компьютерах с той же конфигурацией visualizer показывают без любых ошибок.

ОС: Windows 7 x86 (Release)

VS: RC Visual Studio 2010

у кого-то есть какие-либо идеи?

Я переустанавливаю VS без эффекта.

16
задан JaredPar 24 March 2010 в 22:16
поделиться

3 ответа

Я нашел обходной путь! Я изменил исходный код модуля DevExpress и перекомпилировал его. После этого я отменяю параметр NetFx40_LegacySecurityPolicy enabled = "false" и наслаждаюсь. :)

Файл: "% DeveloperExpress.NET% \ Sources \ DevExpress.Data \ Utils \ Security.cs"

using System;
using System.Security;
using System.Security.Permissions;
namespace DevExpress.Data.Helpers {
    public static class SecurityHelper {
        public static bool IsPartialTrust {
            get {
                return !IsPermissionGranted(new ReflectionPermission(ReflectionPermissionFlag.MemberAccess));
            }
        }
        public static bool IsPermissionGranted(IPermission permission) {
            bool result = true;
/* (changed by Lion)
            try {
                PermissionSet ps = SecurityManager.ResolvePolicy((System.Security.Policy.Evidence)null);
                ps = ps.Copy();
                ps.AddPermission(permission);
                ps.Demand();
            }
            catch (SecurityException) {
                result = false;
            }
*/
            return result;
        }
    }
}
2
ответ дан 30 November 2019 в 16:04
поделиться

Лучший способ диагностировать это - отладить саму Visual Studio. Попробуйте следующее

  • Переведите Visual Studio в состояние, в котором вы хотите использовать визуализатор.
  • Присоедините другую версию Visual Studio к исходной (только управляемой)
  • Отключите только мой код (Инструменты -> Параметры -> Отладчик -> снимите флажок «Только мой код»)
  • Перейдите в раздел «Отладка» -> Исключения
  • Установите флажок «Выбросить исключения»
  • Вернитесь к первому VS и попытайтесь показать визуализатор

Это должен вызвать исключение, которое затем появится во втором экземпляре Visual Studio. Отправьте ответ с этой информацией, если ее недостаточно для решения вашей проблемы.

4
ответ дан 30 November 2019 в 16:04
поделиться

Я нашел причину этой ошибки. Согласно этому совету http://go.microsoft.com/fwlink/?LinkID=155570 Я добавляю в devenv.exe.config этот параметр NetFx40_LegacySecurityPolicy enabled = "true" , и с этим параметром в файле .config возникает ошибка при попытке открыть визуализатор DataSet.

Когда я удалил этот параметр, все стало нормально. Выполнение «Состояние безопасности AppDomain было изменено AppDomainManager, настроенным с флагом NoSecurityChanges», также исправлено.

Но мне НУЖЕН параметр NetFx40_LegacySecurityPolicy enabled = "true" для работы со старыми проектами.

1
ответ дан 30 November 2019 в 16:04
поделиться
Другие вопросы по тегам:

Похожие вопросы: