In openchangeclient.c, we have code that looks like:
        SPropTagArray = set_SPropTagArray(mem_ctx, 0x5,
                                          PR_FID,
                                          PR_MID,
                                          PR_INST_ID,
                                          PR_INSTANCE_NUM,
                                          PR_SUBJECT);
        retval = SetColumns(&obj_table, SPropTagArray);
        MAPIFreeBuffer(SPropTagArray);
        MAPI_RETVAL_IF(retval, retval, mem_ctx);

        retval = GetRowCount(&obj_table, &count);
        MAPI_RETVAL_IF(retval, retval, mem_ctx);

        printf("MAILBOX (%d messages)\n", count);

        while ((retval = QueryRows(&obj_table, 0xa, TBL_ADVANCE, &rowset)) != 
MAPI_E_NOT_FOUND && rowset.cRows) {
                for (i = 0; i < rowset.cRows; i++) {
                        mapi_object_init(&obj_message);
                        retval = OpenMessage(obj_store,
                                             rowset.aRow[i].lpProps[0].value.d,
                                             rowset.aRow[i].lpProps[1].value.d,
                                             &obj_message);

For the Akonadi provider, I'd like to get the PR_FID and PR_MID
values, and save them away, and hold off doing the OpenMessage
until I actually need this message.

The concern is about how long PR_FID and PR_MID will remain
valid (i.e. pointing at the original message). Any ideas / suggestions?

Brad

Attachment: pgpictNL4ZgEl.pgp
Description: PGP signature

_______________________________________________
devel mailing list
[email protected]
http://mailman.openchange.org/listinfo/devel

Reply via email to