![]() |
|
FormsDescription without RDO?
Hello,
is it possible to read the peronal forms library with RDO? I searched in the object browser and on the homepage from Dmitry, but I have no idea where this information could be find. Thanks, Peter -- Peter Marchert [EDP-Service Marchert] Homepage: http://www.marchert.de Programming for Excel and Outlook |
FormsDescription without RDO?
Do you want FormDescription or the actual Personal Forms Library?
For FormDescription you would use MailItem.FormDescription (or whatever item type, it could be AppointmentItem, etc.). The actual form definition for a custom form is stored in the folder where it's published as a custom hidden message with a MessageClass of "IPM.Microsoft.FolderDesign.FormsDescription". You would iterate the HiddenItems collection of the folder looking for that MessageClass. Then you would look at each returned item there for one with your custom form's MessageClass in the Field(&H6800001E), which in DASL syntax is "http://schemas.microsoft.com/mapi/proptag/0x6800001E". For the actual Personal Forms Library you would get the Root folder (not the IPMRootFolder) of the default Store object, look for "Common Views" and in that folder is the Personal Forms Library. That library consists of anything in that folder with a MessageClass of "IPM.Microsoft.FolderDesign.FormsDescription". In Redemption code that would be oSession.Stores.DefaultStore.RootFolder.Folders.It em("Common Views").HiddenItems. You would iterate that collection of items. Other things are stored there also, so you have to check each item in that folder for the correct MessageClass in Field(&H6800001E). -- Ken Slovak [MVP - Outlook] http://www.slovaktech.com Author: Absolute Beginner's Guide to Microsoft Office Outlook 2003 Reminder Manager, Extended Reminders, Attachment Options http://www.slovaktech.com/products.htm "Peter Marchert" wrote in message ps.com... Hello, is it possible to read the peronal forms library with RDO? I searched in the object browser and on the homepage from Dmitry, but I have no idea where this information could be find. Thanks, Peter -- Peter Marchert [EDP-Service Marchert] Homepage: http://www.marchert.de Programming for Excel and Outlook |
FormsDescription without RDO?
Not directly (see the reply from Ken). What exactly are you trying to do and
why? Dmitry Streblechenko (MVP) http://www.dimastr.com/ OutlookSpy - Outlook, CDO and MAPI Developer Tool "Peter Marchert" wrote in message ps.com... Hello, is it possible to read the peronal forms library with RDO? I searched in the object browser and on the homepage from Dmitry, but I have no idea where this information could be find. Thanks, Peter -- Peter Marchert [EDP-Service Marchert] Homepage: http://www.marchert.de Programming for Excel and Outlook |
FormsDescription without RDO?
Thank you, Ken and sorry for replying so late.
@Dmitry: I needed a list of all contact user forms in Outlook (IPM.Contact.XXX). To get them I read the Personal Forms Library and the message class of each contact. With the answer from Ken I could do it - thanks. Peter On 11 Jan., 16:31, "Ken Slovak - [MVP - Outlook]" wrote: Do you want FormDescription or the actual Personal Forms Library? For FormDescription you would use MailItem.FormDescription (or whatever item type, it could be AppointmentItem, etc.). The actual form definition for a custom form is stored in the folder where it's published as a custom hidden message with a MessageClass of "IPM.Microsoft.FolderDesign.FormsDescription". You would iterate the HiddenItems collection of the folder looking for that MessageClass. Then you would look at each returned item there for one with your custom form's MessageClass in the Field(&H6800001E), which in DASL syntax is "http://schemas.microsoft.com/mapi/proptag/0x6800001E". For the actual Personal Forms Library you would get the Root folder (not the IPMRootFolder) of the default Store object, look for "Common Views" and in that folder is the Personal Forms Library. That library consists of anything in that folder with a MessageClass of "IPM.Microsoft.FolderDesign.FormsDescription". In Redemption code that would be oSession.Stores.DefaultStore.RootFolder.Folders.It em("Common Views").HiddenItems. You would iterate that collection of items. Other things are stored there also, so you have to check each item in that folder for the correct MessageClass in Field(&H6800001E). -- Ken Slovak [MVP - Outlook]http://www.slovaktech.com Author: Absolute Beginner's Guide to Microsoft Office Outlook 2003 Reminder Manager, Extended Reminders, Attachment Optionshttp://www.slovaktech.com/products.htm "Peter Marchert" wrote in glegroups.com... Hello, is it possible to read the peronal forms library with RDO? I searched in the object browser and on the homepage from Dmitry, but I have no idea where this information could be find. Thanks, Peter -- Peter Marchert [EDP-Service Marchert] Homepage:http://www.marchert.de Programming for Excel and Outlook- Zitierten Text ausblenden -- Zitierten Text anzeigen - |
FormsDescription without RDO?
On 11 Jan., 16:31, "Ken Slovak - [MVP - Outlook]"
wrote: The actual form definition for a custom form is stored in the folder where it's published as a custom hidden message with aMessageClassof "IPM.Microsoft.FolderDesign.FormsDescription". You would iterate the HiddenItems collection of the folder looking for thatMessageClass. Then you would look at each returned item there for one with your custom form'sMessageClassin the Field(&H6800001E), which in DASL syntax is "http://schemas.microsoft.com/mapi/proptag/0x6800001E". Hello again, I`m looking for a way to read all published forms of a folder. The method above I think will only work with CDO, isn`t it? If so, can I read this informations with RDO too? I didn`t found anything, but it`s better to ask profis before giving up :-) Thanks for any help! Peter PS: CDO for programmers is not very helpful, I think, because I don`t know if it is installed on the users maschine and I cannot (or it is not permitted to) install it by my setup. Please correct me, if I`m wrong. |
FormsDescription without RDO?
Sure, RDOFolder.HiddenItem will get you the folder's hidden messages
collection. This is really not any different from CDO 1.21 Dmitry Streblechenko (MVP) http://www.dimastr.com/ OutlookSpy - Outlook, CDO and MAPI Developer Tool "Peter Marchert" wrote in message ups.com... On 11 Jan., 16:31, "Ken Slovak - [MVP - Outlook]" wrote: The actual form definition for a custom form is stored in the folder where it's published as a custom hidden message with aMessageClassof "IPM.Microsoft.FolderDesign.FormsDescription". You would iterate the HiddenItems collection of the folder looking for thatMessageClass. Then you would look at each returned item there for one with your custom form'sMessageClassin the Field(&H6800001E), which in DASL syntax is "http://schemas.microsoft.com/mapi/proptag/0x6800001E". Hello again, I`m looking for a way to read all published forms of a folder. The method above I think will only work with CDO, isn`t it? If so, can I read this informations with RDO too? I didn`t found anything, but it`s better to ask profis before giving up :-) Thanks for any help! Peter PS: CDO for programmers is not very helpful, I think, because I don`t know if it is installed on the users maschine and I cannot (or it is not permitted to) install it by my setup. Please correct me, if I`m wrong. |
FormsDescription without RDO?
"Peter Marchert" wrote in
ups.com: PS: CDO for programmers is not very helpful, I think, because I don`t know if it is installed on the users maschine Though you can find that out at runtime by trying to use one of the objects and trapping errors and I cannot (or it is not permitted to) install it by my setup. Please correct me, if I`m wrong. You can't just put the DLL on there yourself, no, but you can drive the Outlook setup engine to install it: http://www.microeye.com/resources/itemsCB.htm has sample code which has that in there. -- dan |
FormsDescription without RDO?
On 19 Feb., 21:50, "Dmitry Streblechenko" wrote:
Sure, RDOFolder.HiddenItem will get you the folder's hidden messages collection. This is really not any different from CDO 1.21 Thanks Dmitry, here is the CDO-Code I found: Sub GetMessageClasses() Dim objSession As New MAPI.Session Dim objFolders As MAPI.Folders Dim objFolder As MAPI.Folder Dim objHiddenMessages As MAPI.Messages Dim objFDMMessage As MAPI.Message objSession.Logon Set objFolders = objSession.GetInfoStore("").RootFolder.Folders Set objFolder = objFolders.Item("Kontakte") Set objHiddenMessages = objFolder.HiddenMessages Set objFDMMessage = objHiddenMessages.GetFirst("IPM.Microsoft.FolderDe sign.FormsDescription") While Not objFDMMessage Is Nothing Debug.Print objFDMMessage.Fields(&H6800001E) Set objFDMMessage = objHiddenMessages.GetNext Wend End Sub Now I tried it with RDO, but it do not work: Public Sub GetFolderClasses(ByVal objFolder As Object) Dim objRDOsession As Object Dim objRDOFolder As Object Dim objHiddenMessages As Object Dim objFDMMessage As Object Set objRDOsession = StartRDOSession() Set objRDOFolder = objRDOsession.GetFolderFromID(objFolder.EntryID) Set objHiddenMessages = objRDOFolder.HiddenItems For Each objFDMMessage In objHiddenMessages Debug.Print objFDMMessage.Fields(&H6800001E) Next End Sub Do you have a code example? Peter |
FormsDescription without RDO?
Hello Dan,
thank you for this link. It`s interesting to know that is possible to install the CDO with the windows installer by code. May be I need this sometime. Are there functions, methods or properties in CDO which are not possible with the redemption.dll? Peter On 20 Feb., 01:45, Dan Mitchell wrote: "Peter Marchert" wrote roups.com: PS: CDO for programmers is not very helpful, I think, because I don`t know if it is installed on the users maschine Though you can find that out at runtime by trying to use one of the objects and trapping errors and I cannot (or it is not permitted to) install it by my setup. Please correct me, if I`m wrong. You can't just put the DLL on there yourself, no, but you can drive the Outlook setup engine to install it: http://www.microeye.com/resources/itemsCB.htm has sample code which has that in there. -- dan |
FormsDescription without RDO?
Peter, what doesn't work, do you get an error? The folder probably has more hidden messages than just the one that you're looking for. And I assume that not every message has the property PR_MAILBEAT_BOUNCE_SERVER. -- Viele Gruesse / Best regards Michael Bauer - MVP Outlook Keep your Outlook categories organized! http://www.shareit.com/product.html?...4&languageid=1 (German: http://www.VBOffice.net/product.html?pub=6) Am 19 Feb 2007 22:18:16 -0800 schrieb Peter Marchert: On 19 Feb., 21:50, "Dmitry Streblechenko" wrote: Sure, RDOFolder.HiddenItem will get you the folder's hidden messages collection. This is really not any different from CDO 1.21 Thanks Dmitry, here is the CDO-Code I found: Sub GetMessageClasses() Dim objSession As New MAPI.Session Dim objFolders As MAPI.Folders Dim objFolder As MAPI.Folder Dim objHiddenMessages As MAPI.Messages Dim objFDMMessage As MAPI.Message objSession.Logon Set objFolders = objSession.GetInfoStore("").RootFolder.Folders Set objFolder = objFolders.Item("Kontakte") Set objHiddenMessages = objFolder.HiddenMessages Set objFDMMessage = objHiddenMessages.GetFirst("IPM.Microsoft.FolderDe sign.FormsDescription") While Not objFDMMessage Is Nothing Debug.Print objFDMMessage.Fields(&H6800001E) Set objFDMMessage = objHiddenMessages.GetNext Wend End Sub Now I tried it with RDO, but it do not work: Public Sub GetFolderClasses(ByVal objFolder As Object) Dim objRDOsession As Object Dim objRDOFolder As Object Dim objHiddenMessages As Object Dim objFDMMessage As Object Set objRDOsession = StartRDOSession() Set objRDOFolder = objRDOsession.GetFolderFromID(objFolder.EntryID) Set objHiddenMessages = objRDOFolder.HiddenItems For Each objFDMMessage In objHiddenMessages Debug.Print objFDMMessage.Fields(&H6800001E) Next End Sub Do you have a code example? Peter |
All times are GMT +1. The time now is 08:23 AM. |
|
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