Processing digitally signed attachments

  • Thread starter Thread starter Rustem
  • Start date Start date
R

Rustem

Hi guys,

I have problem with processing (retrieving basic properties like "TO",
"SUBJECT", "BODY") digitally signed attachments. I have tried it for
few weeks but all unsuccessfully. Here are the details:

I am working on program that retrieves useful data from pst files. I
am getting pop-ups when processing email attachments with digital
signatures, in other words emails with digital signatures attached to
other emails. I am getting the following pop-ups:
"Microsoft Office Outlook could not sign or encrypt this message
because you have no certificates which can be used to send from the
email address ..."
First of all, I am not trying to send anything – all I do is:

Outlook::_MailItem* pMailItem = NULL;
CComPtr<Outlook::MAPIFolder> pmfDrafts;
CComBSTR ccbstrFilePath("c:\TestOutlook\test.msg");

hr = pAttachment->SaveAsFile(ccbstrFilePath);
hr = pOutlook->CreateItemFromTemplate(ccbstrFilePath, (_variant_t)
pmfDrafts, &pDispatch);
hr = pDispatch->QueryInterface(__uuidof(Outlook::_MailItem),
(void**)&pMailItem);

hr = pMailItem->Save();
ProcessMailItemAttachment(pMailItem);
hr = pMailItem->Delete();

pMailItem->Save() is the call that causes the pop-up. I don't have the
right certificate for these email attachments, but I can manually
click "OK" and program successfully processes that item and jumps to
the next one. The automation becomes then manual!

I have tried to reset PR_MESSAGE_CLASS, but it didn't work (my guess
due to the permissions). I have also tried redemption and also
unsuccessful – all comes down to pMailItem->Save() call. I can't
retrieve any properties of pMailItem before I call Save().

I have run out of ideas, so any suggestions or ideas will be more than
welcome.

Best regards,
Rustem
 
I suggest you using CDO to traverse Messages collections and retrieve
attachments not OOM. Of course you have to start Outlook first and retrieve
EntryID of the folder you want to look through.

Best regards, Paul.
 
Back
Top