_MailItem->GetSendOn(&date) throws an exception

Status
Not open for further replies.
N

nikolayds

Hi All,

I am migrating my plugin from 2003 to 2007 Outlook.

A following code is throwing me exception:

<code
COleVariant covIndex;

covIndex.vt = VT_I4;

covIndex.lVal = 1;

olSelectedItem = olSel->Item(covIndex);

CComQIPtr<Outlook::_MailItem> pMailItem(olSelectedItem);

CComPtr<Outlook::_MailItem> pItemT = pMailItem;

Outlook::OlObjectClass oc = pItemT->GetClass(); //works

DATE dt = 0;

dt = pItemT->SendOn; //Fails with exception

CLSID clsid;

hr = ::CLSIDFromProgID(L"Redemption.SafeMailItem", &clsid);

CComPtr<Redemption::ISafeMailItem> spSafeMailItem;

hr = ::CoCreateInstance(clsid, NULL, CLSCTX_INPROC_SERVER,__uuidof

(ISafeMailItem),(void**)&spSafeMailItem );

hr = spSafeMailItem->put_Item(pItemT);

BSTR name = SysAllocStringLen(L"", 1000);

hr = spSafeMailItem->get_SenderName(&name); //works

return;

</code
Exception is address violation.

I strongly suspect the issue is with how the params are passed, because all

functions with parameters on Outlook::_MailItem are failing where all others

are OK.

Here is what I have in StdAfx

<code
#import "C:\Program Files\Common Files\Microsoft Shared\OFFICE12\mso.dll"

rename("RGB", "RGB_") \

rename("DocumentProperties", "DocProps") rename("FindText", "WordFindText") \

rename("PlaySound", "OfficePlaySound")\

rename_namespace("Office")

using namespace Office;

#import "C:\Program Files\Microsoft Office\Office12\MSOUTL.OLB" rename

("CopyFile", "CopyFile_") \

rename("PlaySound", "OutlookPlaySound")\

rename_namespace("Outlook")

using namespace Outlook;

</code
The code is working just fine in OL 2003
 
Here is the fix: (must use a raw method and queryInterface)

<code
HRESULT hr = olSel-
> raw_Item(covIndex,&olSelectedItem);


if(FAILED(hr)) continue;

Outlook::_MailItem * pMailItem = NULL;

hr = olSelectedItem->QueryInterface(__uuidof(Outlook::_MailItem),

(void**)&pMailItem);

if(FAILED(hr)) continue;

//CComQIPtr<Outlook::_MailItem> pMailItem(olSelectedItem);

CComPtr<Outlook::_MailItem> pItem = pMailItem;

</code
After that the methods are working fine in OL 2007.
 
Status
Not open for further replies.
Similar threads
Thread starter Title Forum Replies Date
Rob Can't save MailItem because the message changed in .pst file Outlook VBA and Custom Forms 0
P MailItem.To Property with VBA not work Outlook VBA and Custom Forms 2
G Event when creating task from mailitem Outlook VBA and Custom Forms 2
A Run-time error '430' on certain emails when trying to set "Outlook.mailitem" as "ActiveExplorer.Selection.Item" Outlook VBA and Custom Forms 2
U Outbox Message Stuck after reading some MailItem Properties with VBA Outlook VBA and Custom Forms 1
oliv- Best practice for catching mailitem.events Outlook VBA and Custom Forms 0
oliv- How to select an mailitem in explorer with "show as conversation" Outlook VBA and Custom Forms 8
JorgeDario How to capture and save the text, when responding a MailItem? Outlook VBA and Custom Forms 3
JorgeDario how to check a MailItem has a digital signature (SMIME) with vba? Outlook VBA and Custom Forms 1
JorgeDario ¿What property of mailitem can be used like primary key? Outlook VBA and Custom Forms 6
S Outlook VBA rule script to process both MailItem and MeetingItem Using Outlook 0
B right click outlook objects in OL2010 acts on current inbox mailitem Using Outlook 6
C MailItem Find method doesn't work Using Outlook 0
C MailItem.SaveAs not working Outlook VBA and Custom Forms 10
G RE:The signature is also inserted if you touch the MailItem. Outlook VBA and Custom Forms 1
B Add signature to MailItem Outlook VBA and Custom Forms 3
C How can I create a new MailItem inside a user folder? Outlook VBA and Custom Forms 4
S Create a new Outlook MailItem in an Outlook folder(not a draft) Outlook VBA and Custom Forms 2
A How to get OOM MailItem Raw data Outlook VBA and Custom Forms 2
S Saved Property of MailItem is copied Outlook VBA and Custom Forms 1
S MailItem Find Method question Outlook VBA and Custom Forms 6
N Getting the attachments in MailItem Outlook VBA and Custom Forms 1
T How to get MailItem.Body without security warning in Outlook 2010 Outlook VBA and Custom Forms 2
S ->[O2007] Parsing each line of a MailItem HTMLBody? Outlook VBA and Custom Forms 2
T How to get Inspector or MailItem from wordEditor Outlook VBA and Custom Forms 6
A Select the position of an attached file in a HTML mailitem Outlook VBA and Custom Forms 1
M MailItem object has no property for when a reply was sent Outlook VBA and Custom Forms 3
B Insert information to MailItem Outlook VBA and Custom Forms 1
E Properties added to MailItem in ItemSend event visible to recipien Outlook VBA and Custom Forms 1
V Setting HTMLBody of new mailItem Outlook VBA and Custom Forms 1
V How to find mailitem in the inspector is a brand new one Outlook VBA and Custom Forms 2
M Activate "Add digital signature to this massage" on a MailItem? Outlook VBA and Custom Forms 1
K importing EML in MailItem Outlook VBA and Custom Forms 1
A mailitem Send issue Outlook VBA and Custom Forms 5
M Get email address from MailItem.To? Outlook VBA and Custom Forms 6
S UserProperties of MailItem object. Outlook VBA and Custom Forms 3
R How to capture a Mailitem Event Outlook VBA and Custom Forms 3
S get current position in message body of mailitem Outlook VBA and Custom Forms 8
S How to get RFC822 format message from the MailItem object. Outlook VBA and Custom Forms 4
J Toolbar button to process current mailitem Outlook VBA and Custom Forms 1
D MailItem from an RSS feed Outlook VBA and Custom Forms 2
J Outlook 2007 crashed when pushing send on a displayed mailitem Outlook VBA and Custom Forms 1
N Memory with MailItem.Send Outlook VBA and Custom Forms 1
P Adding a button in a mailitem Outlook VBA and Custom Forms 1
S Reading mailitem after mail is send give runtime error. Outlook VBA and Custom Forms 1
D Max. length of MSO MailItem.EntryID Outlook VBA and Custom Forms 6
R MailItem.Display() error Outlook VBA and Custom Forms 1
R Clone mailitem Outlook VBA and Custom Forms 5
R MailItem Outlook VBA and Custom Forms 2
D Length of the MailItem.EntryID Outlook VBA and Custom Forms 2

Similar threads

Back
Top