Ошибка Recordset->save метода

Тема в разделе "Остальные БД", создана пользователем angryMF, 16 авг 2007.

Статус темы:
Закрыта.
  1. angryMF

    angryMF Гость

    Помогите разобраться с проблемой... Пишу на C++ прогу, которая просматривает содержимое почтового ящика - пользую ADO.
    Все вроде работает: просматриваю атрибуты писем, до момента, когда надо скопировать письмо.
    В упррощенной модели это выглядит так:

    _ConnectionPtr conn(__uuidof(Connection));
    _RecordsetPtr MyFolders(__uuidof(Recordset));


    conn->Provider = "Exoledb.DataSource";

    hRes = conn->Open(szConnString,"","",0);

    _bstr_t strQ = "select * from scope ('shallow traversal of \"" + szConnString + "\"')";

    hRes = MyFolders->Open(strQ,conn->ConnectionString,adOpenForwardOnly,adLockUnspecified,0);
    .....................
    MyFolders->Save("c:\\message.xml",adPersistXML);

    ...........................

    Вобщем выскакивает ошибка:

    Save failed because [DAV:supportedlock] has an unsupported data type...

    Интуиция подсказывает, что косяк с провайдером, но я так и не смог ничего придумать!
    Особенно огорчает то, что большинство примеров на VBasic

    Кстати, где бы посмотреть полный список атрибутов IPM.Note класса (это которые обычные сообщения)?
    В частности очень интересует работа с Attachmentами.
     
  2. BVS

    BVS Гость

    А версия ADO какая?
    Проверь Recordset не пустой ли.


    PS: не все версии поддерживают сохранения в XML файлы.
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей