AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 01.02.2008, 17:11   #1  
belugin is offline
belugin
Участник
Аватар для belugin
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,622 / 2925 (107) +++++++++
Регистрация: 16.01.2004
Записей в блоге: 5
Ax3 KR2 COM: Получение человеческих сообщений об ошибках
Я работаю с ADSI при помощи COM.

В некоторых случаях возникает ошибка:

Метод 'SetInfo' в COM-объекте класса '<неизвестно>' возвратил код ошибки 0x8007200A (<неизвестно>), который означает: <неизвестно>.

Если обработать ошибку вот таким образом:

X++:
void setInfo()
{
    COMError errorCom;
;
        try
        {
             object.SetInfo();
        }
        catch (Exception::Error)
        {
            errorCom = object.error();
            if (errorCom)
                throw error(strFmt("Ошибка %1 ('%2')",
                    errorCom.number(), WinApi::formatMessage(errorCom.number())));
            else
                throw Exception::Error;

        }
}

Ошибка становится человеческой:

Ошибка -2147016694 ('Указанное значение или атрибут службы каталогов не существует.')


Но при этом мы обязаны знать, какой объект зашибся.

Я пробовал обработать эту штуку глобально, но вместо errorCom.number() использовать WinApi::GetLastError, но оказалось, что она возвращает 0 всегда в таки случаях.

Как сделать так, чтобы
  • ошибки выглядели по человечески
  • не надо было бы писать обработку для всех объектов
За это сообщение автора поблагодарили: axaLearner (1).
Теги
ax3.0

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
msdynamicsax: VB script that test the com connector for Dynamics Ax 4.0 Blog bot DAX Blogs 0 25.08.2008 18:05
Ax3 KR2: Создание пользователя в ActiveDirectory belugin DAX: Программирование 14 06.06.2007 13:44
Куда пропадают лицензии в Ax3.0 SP3 KR2? falcon65 DAX: Администрирование 2 10.05.2007 09:55
Проблема с получение коллекции (массива) из COM-объекта. VES DAX: Программирование 6 24.03.2006 18:59

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 02:09.