|
|
|
|
#2 |
|
Участник
|
Спасибо за ссылку!
Вставил пермишны: X++: //проверяем возможность доступа к сборке perm = new InteropPermission(InteropKind::ClrInterop); if (perm == null) { return; } perm.assert(); Однако обнаружил следующее некорректное поведение компонента ClrInterOp Метод ClrInterop::isNull в режиме "Server" выдаёт стабильно true! Хотя, как видно из кода ниже, строка strOuterXml ВСЕГДА имеет осмысленные данные (ID="{BB80822A-7849-416B-9BF4-ECD83999F867}). В режиме "Client" метод ClrInterop::isNull работает нормально, и выдаёт true или false в зависимости от реального сотояния объекта. X++: System.Xml.XmlAttributeCollection xacAttributes;
System.Xml.XmlAttribute xaAttribute;
str strOuterXml;
anytype ant;
;
xacAttributes = ndListDefinition.get_Attributes();
xaAttribute = xacAttributes.get_ItemOf("ID");
strOuterXml = ClrInterOp::getAnyTypeForObject(xaAttribute.get_OuterXml());
ant = ClrInterop::isNull(xaAttribute);
if(!ClrInterop::isNull(xaAttribute))
{
_listID = xaAttribute.get_Value();
}
else
{
_listID = "-1";
}Последний раз редактировалось GromRom; 30.09.2008 в 12:28. |
|
|
|
|
#3 |
|
Читатель
|
кстати, а никто не победил это поведение на четверке?
|
|
|
| Теги |
| .net, cas, code access security, fileiopermission, interoppermission, security, безопасность |
|
|
| Опции темы | Поиск в этой теме |
| Опции просмотра | |
|