• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

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

    Запись на курс до 25 апреля. Получить промодоступ ...

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

  • Автор темы angryMF
  • Дата начала
Статус
Закрыто для дальнейших ответов.
A

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ами.
 
B

BVS

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


PS: не все версии поддерживают сохранения в XML файлы.
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!