CDO and Folder Home Page

K

kc2kth

I'm having a problem getting the last piece of a project together. I
need to be able to write a home page value and associated info (enable
it, etc.) via CDO. Unfortunately the Outlook Object Model won't work
for this case. Note I am working in vbscript here.

Anyhow, I've referenced a posting from Sue Mosher from a year or so
ago in this group (http://groups.google.com/group/
microsoft.public.outlook.program_vba/browse_frm/thread/
fe30a84f1c346e48/2270fac9f34589fb?
lnk=st&q=PR_FOLDER_WEBVIEWINFO&rnum=6&hl=en#2270fac9f34589fb), which
provides some great info. However, I haven't been able to translate
that into working code.

I've tried writing each value to the property individually as well as
tried writing the data to the property as a single hex vbblob. Neither
has worked. Writing as a single vbblob gave no feedback at all, while
writing the values individually returned an "INVALIDARG" error.

Any input would be greatly appreciated as I've run out of ideas and I
can't find very much information on this process at all.

Here is a small section of the code I've been working with (picking up
after the session is established):

Set CdoInbox = CdoSession.Inbox
Set CdoInfostore = CdoSession.GetInfostore(CdoInbox.StoreID)
Set CdoRootFolder = CdoInfostore.RootFolder

'On Error Resume Next
Set CdoNewFolder = CdoRootFolder.Folders("VB2Test")
'If CdoNewFolder is Nothing Then
' Set CdoNewFolder = CdoRootFolder.Folders.Add("VB2Test")
'End If

Set CdoFields = CdoNewFolder.Fields

CdoNewFolder.Fields.Add
"0x36DF0102",vbBlob,"020000000100000001000000000000000000000000000000000000000000000000000000000000002C00000068007400740070003A002F002F0061007200630068006900760065006D0061006E0061006700650072000000"


'CdoNewFolder.Fields.Add "0x36DF0102",vbBlob,"dwType","1"
'CdoNewFolder.Fields.Add "&H36DF0102",vbBlob,"dwFlags","0x00000001"
 
K

Ken Slovak - [MVP - Outlook]

You need to set your data as an array of binary bytes. Then when you write
the data you need to do something like this:

CdoNewFolder.Fields.Add &H36DF0102, vbByte, dataArray
 
K

kc2kth

You need to set your data as an array of binary bytes. Then when you write
the data you need to do something like this:

CdoNewFolder.Fields.Add &H36DF0102, vbByte, dataArray

--
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


Thanks Ken,

Not being real familiar with the tools I'm using here, I'm not sure
I'd know where to look for help on how to do what you suggest
(although I just received the same suggestion in another forum).

Would you or anyone else here be able to point me to any resource that
may be helpful in dealing with this specific task, keeping in mind I'm
not well versed in VB/VBScript (that seems to be rapidly changing
however)?

Thank you for the reply!
 
K

Ken Slovak - [MVP - Outlook]

For CDO the best is www.cdolive.com, especially www.cdolive.com/cdo5.htm and
/cdo10.htm. However, there are some mistakes there and the material hasn't
been updated in years.

Use the link at http://www.cdolive.com/cdo.htm to download the CDO Help,
that's got some useful examples.

For general Outlook coding, with some CDO snippets definitely
www.outlookcode.com.

If you can find it on the used market Professional CDO Programming from Wrox
Press by Sig Weber, Dan Mitchell, etc. is really the only game in town.

Posting here is good too. I used to program extensively with CDO until
Redemption came around and Sue and Dmitry also know CDO.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top