![]() |
Load MSG into PST
Hello,
I want to load a stand alone MSG file (on disk) into Outlook. To do this, I tried using the CreateItemFromTemplate() function. This always return "invalid argument" when trying to pass a folder as the second argument. To go over this, I tried ignoring the second parameter. Now, the MSG loaded into the DRAFTS folder. Another time, I went over this by moving the mail to the Inbox. Also, the Message Dates changed (creation / Delivery). These dates can be updated. The problem now that the MSG appaers as "not sent". I tried setting the (0xF402) property using OutlookSPY, but that didn't change anything. Also Redemption.RDOMail.put_Sent() returned "0x8004011a"!!!!! Any help? |
Load MSG into PST
How exactly did you call CreateItemFromTemplate?
RDOMail.Sent can be set only before the message is saved for the very first time, otherwise you will get the MAPI_E_COMPUTED error. If oyu are using Redemption, why do you even need Namespace.CreateItemFromTemplate? Something like the following will do the trick: set Session = CreateObject("Redemption.RDOSession") Session.MAPIOBJECT = Application.Session.MAPIOBJECT set Folder = Session.GetDefaultFolder(...) set Msg = Folder.Items.Add Msg.Sent = true Msg.Import(..., olMsg) Msg.Save -- Dmitry Streblechenko (MVP) http://www.dimastr.com/ OutlookSpy - Outlook, CDO and MAPI Developer Tool - "MON205" wrote in message ... Hello, I want to load a stand alone MSG file (on disk) into Outlook. To do this, I tried using the CreateItemFromTemplate() function. This always return "invalid argument" when trying to pass a folder as the second argument. To go over this, I tried ignoring the second parameter. Now, the MSG loaded into the DRAFTS folder. Another time, I went over this by moving the mail to the Inbox. Also, the Message Dates changed (creation / Delivery). These dates can be updated. The problem now that the MSG appaers as "not sent". I tried setting the (0xF402) property using OutlookSPY, but that didn't change anything. Also Redemption.RDOMail.put_Sent() returned "0x8004011a"!!!!! Any help? |
Load MSG into PST
1. How exactly did you call CreateItemFromTemplate?
pInboxFolder = m_spApp-GetNamespace( "MAPI" ).GetDefaultFolder( Outlook::olFolderInbox ); MSG = m_spApp-CreateItemFromTemplate( TEXT( "f:\\test.msg" ), _variant_t( pInboxFolder ) ); // Here a E_INVALIDARG exception raise 2. Importing using Redemption succeeded. I noticed that the dates are the same as the original message, is there any property that I should set manually as the "Sent"? 3. I think that the Redemption is a great library, but I think that it needs more work on the documentation. Thanks Dmitry ------------------------------------------------- "Dmitry Streblechenko" wrote: How exactly did you call CreateItemFromTemplate? RDOMail.Sent can be set only before the message is saved for the very first time, otherwise you will get the MAPI_E_COMPUTED error. If oyu are using Redemption, why do you even need Namespace.CreateItemFromTemplate? Something like the following will do the trick: set Session = CreateObject("Redemption.RDOSession") Session.MAPIOBJECT = Application.Session.MAPIOBJECT set Folder = Session.GetDefaultFolder(...) set Msg = Folder.Items.Add Msg.Sent = true Msg.Import(..., olMsg) Msg.Save -- Dmitry Streblechenko (MVP) http://www.dimastr.com/ OutlookSpy - Outlook, CDO and MAPI Developer Tool - "MON205" wrote in message ... Hello, I want to load a stand alone MSG file (on disk) into Outlook. To do this, I tried using the CreateItemFromTemplate() function. This always return "invalid argument" when trying to pass a folder as the second argument. To go over this, I tried ignoring the second parameter. Now, the MSG loaded into the DRAFTS folder. Another time, I went over this by moving the mail to the Inbox. Also, the Message Dates changed (creation / Delivery). These dates can be updated. The problem now that the MSG appaers as "not sent". I tried setting the (0xF402) property using OutlookSPY, but that didn't change anything. Also Redemption.RDOMail.put_Sent() returned "0x8004011a"!!!!! Any help? |
Load MSG into PST
1. How did you declare pInboxFolder?
2. No, unless you want to overwrite whatever teh MSG file has or if you want to add a property not in teh MSG file. 3. That's what the newsgroups are for :-) -- Dmitry Streblechenko (MVP) http://www.dimastr.com/ OutlookSpy - Outlook, CDO and MAPI Developer Tool - "MON205" wrote in message ... 1. How exactly did you call CreateItemFromTemplate? pInboxFolder = m_spApp-GetNamespace( "MAPI" ).GetDefaultFolder( Outlook::olFolderInbox ); MSG = m_spApp-CreateItemFromTemplate( TEXT( "f:\\test.msg" ), _variant_t( pInboxFolder ) ); // Here a E_INVALIDARG exception raise 2. Importing using Redemption succeeded. I noticed that the dates are the same as the original message, is there any property that I should set manually as the "Sent"? 3. I think that the Redemption is a great library, but I think that it needs more work on the documentation. Thanks Dmitry ------------------------------------------------- "Dmitry Streblechenko" wrote: How exactly did you call CreateItemFromTemplate? RDOMail.Sent can be set only before the message is saved for the very first time, otherwise you will get the MAPI_E_COMPUTED error. If oyu are using Redemption, why do you even need Namespace.CreateItemFromTemplate? Something like the following will do the trick: set Session = CreateObject("Redemption.RDOSession") Session.MAPIOBJECT = Application.Session.MAPIOBJECT set Folder = Session.GetDefaultFolder(...) set Msg = Folder.Items.Add Msg.Sent = true Msg.Import(..., olMsg) Msg.Save -- Dmitry Streblechenko (MVP) http://www.dimastr.com/ OutlookSpy - Outlook, CDO and MAPI Developer Tool - "MON205" wrote in message ... Hello, I want to load a stand alone MSG file (on disk) into Outlook. To do this, I tried using the CreateItemFromTemplate() function. This always return "invalid argument" when trying to pass a folder as the second argument. To go over this, I tried ignoring the second parameter. Now, the MSG loaded into the DRAFTS folder. Another time, I went over this by moving the mail to the Inbox. Also, the Message Dates changed (creation / Delivery). These dates can be updated. The problem now that the MSG appaers as "not sent". I tried setting the (0xF402) property using OutlookSPY, but that didn't change anything. Also Redemption.RDOMail.put_Sent() returned "0x8004011a"!!!!! Any help? |
Load MSG into PST
Now it is 1-0 for you :)
About the "pInboxFolder", GetDefaultFolder() returns a smart pointer "MAPIFolderPtr" when passin this smart pointer, the exception raised. Also I tried passing "pInbox.GetInterfacePtr( )" to pass the interface, the function succeeded but the message added to the Drafts folder. "Dmitry Streblechenko" wrote: 1. How did you declare pInboxFolder? 2. No, unless you want to overwrite whatever teh MSG file has or if you want to add a property not in teh MSG file. 3. That's what the newsgroups are for :-) -- Dmitry Streblechenko (MVP) http://www.dimastr.com/ OutlookSpy - Outlook, CDO and MAPI Developer Tool - "MON205" wrote in message ... 1. How exactly did you call CreateItemFromTemplate? pInboxFolder = m_spApp-GetNamespace( "MAPI" ).GetDefaultFolder( Outlook::olFolderInbox ); MSG = m_spApp-CreateItemFromTemplate( TEXT( "f:\\test.msg" ), _variant_t( pInboxFolder ) ); // Here a E_INVALIDARG exception raise 2. Importing using Redemption succeeded. I noticed that the dates are the same as the original message, is there any property that I should set manually as the "Sent"? 3. I think that the Redemption is a great library, but I think that it needs more work on the documentation. Thanks Dmitry ------------------------------------------------- "Dmitry Streblechenko" wrote: How exactly did you call CreateItemFromTemplate? RDOMail.Sent can be set only before the message is saved for the very first time, otherwise you will get the MAPI_E_COMPUTED error. If oyu are using Redemption, why do you even need Namespace.CreateItemFromTemplate? Something like the following will do the trick: set Session = CreateObject("Redemption.RDOSession") Session.MAPIOBJECT = Application.Session.MAPIOBJECT set Folder = Session.GetDefaultFolder(...) set Msg = Folder.Items.Add Msg.Sent = true Msg.Import(..., olMsg) Msg.Save -- Dmitry Streblechenko (MVP) http://www.dimastr.com/ OutlookSpy - Outlook, CDO and MAPI Developer Tool - "MON205" wrote in message ... Hello, I want to load a stand alone MSG file (on disk) into Outlook. To do this, I tried using the CreateItemFromTemplate() function. This always return "invalid argument" when trying to pass a folder as the second argument. To go over this, I tried ignoring the second parameter. Now, the MSG loaded into the DRAFTS folder. Another time, I went over this by moving the mail to the Inbox. Also, the Message Dates changed (creation / Delivery). These dates can be updated. The problem now that the MSG appaers as "not sent". I tried setting the (0xF402) property using OutlookSPY, but that didn't change anything. Also Redemption.RDOMail.put_Sent() returned "0x8004011a"!!!!! Any help? |
All times are GMT +1. The time now is 12:25 PM. |
Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 2.4.0
Copyright ©2004-2006 OutlookBanter.com