Dan's WebDAV 101
This blog covers Messaging API development for Exchange and Outlook. My name is Daniel Bagley, I'm on the Messaging Developer Team.
mailto - limitations and paths forward
The mailto tag used in html content is used to load the default mapi client (email client) on the...
Author: Webdav101 Date: 08/22/2008
It breaks when I do this - recording the problem.
This blog post is about making things clearer... Have you ever had a hard time explaining to a...
Author: Webdav101 Date: 08/22/2008
Dynamic list of properties versus explicit properties
With messaging APIs, you can retrieve a list of properties dynamicly or by specific property name....
Author: Webdav101 Date: 08/21/2008
Howto: Read Attachments - Webdav: System.Net.HttpWebRequest vs System.Net.WebClient
I’ve run into issues with using a GET to read large attachments using HttpWebRequest. Because of...
Author: Webdav101 Date: 08/14/2008
Enumerating fields for CDOSYS, System.Web.Mail and System.Net.Mail
There are times when you may want to enumerate the fields set on a message while debugging issues...
Author: Webdav101 Date: 08/14/2008
Adding Inline Attachments with CDOSYS and System.Net.Mail.
In the following samples, I'm going to send an inline attachment using CDOSYS and System.Net.Mail...
Author: Webdav101 Date: 07/31/2008
HOWTO: Set and Get the a multibyte (Japanese, Chinese, Etc) custom header with CDOSYS
Custom headers in multibyte languages (Japanese, Chinese, etc) will not be encoded properly when set...
Author: Webdav101 Date: 07/24/2008
WebDAV: XML DOM vs managed classes.
I've seen a lot of issues with using the MSXML DOM when trying to get credentials from the...
Author: Webdav101 Date: 07/18/2008
My .EDB file grows when I search.
When doing a WebDAV or any other search, you will likely see the .EDB file expands. When performing...
Author: Webdav101 Date: 07/18/2008
Howto: Add a body part to a message using CDOSYS.
The sample below shows how to add an additional body part to a message using cdosys. This example...
Author: Webdav101 Date: 07/16/2008
Howto: Add a body part using System.Net.Mail
The sample below shows how to add an additional body part to a message using System.Net.Mail. This...
Author: Webdav101 Date: 07/16/2008
Example of setting headers with System.Web.Mail
//============================ Optional Settings ======================== if (this.Priority.Length...
Author: Webdav101 Date: 07/16/2008
Example of setting headers with CDOSYS
//============================ Optional Settings ======================== if (this.Priority.Length...
Author: Webdav101 Date: 07/16/2008
Example of setting headers with System.Net.Mail
Here is a partial sample on setting header fields with System.Net.Mail:...
Author: Webdav101 Date: 07/16/2008
Getting a list of mailboxes with WebDAV
OK, WebDAV does not have the ability itself to get a list of mailboxes. However you can use other...
Author: Webdav101 Date: 06/11/2008
Comparing strings - a few samples
I thought I would share some simple sample code which is useful for finding problems in string...
Author: Webdav101 Date: 06/06/2008
System.Net.Mail with SSL to authenticate against port 465
Sending mail using System.Net.Mail with SSL will fail: System.Net.NetworkCredential aCred = new...
Author: Webdav101 Date: 06/02/2008
Call Dispose on client when calling COM+ objects.
Dispose MUST be called from the client and not from the serviced component... There is a requirement...
Author: Webdav101 Date: 05/29/2008
CDOSYS breaks after removing Outlook Express.
Yep, that will do it. There is a relationship between CDOSYS and Outlook Express. So, you should not...
Author: Webdav101 Date: 05/06/2008
Howto: CDOSYS/C# Sending an ICS file
Todo:1) Open an appointment in Outlook. Save to file as an .ICS file.2) Create a C# project and add...
Author: Webdav101 Date: 05/05/2008
HOWTO: VB/CDO 1.21 - Cancel a Recurring Meeting using a single Recurrance
' This code finds an meeting occurance and uses it to cancel the entire meeting series and' have...
Author: Webdav101 Date: 05/05/2008
Whats not supported with WebDAV?
Ahhh thats a big one... What is supported: • Non-recurring appointments • Contacts in Microsoft...
Author: Webdav101 Date: 05/01/2008
Exchange Protocol Documentation
Microsoft released preliminary protocol documentation for Exchange 2007 (as well as Microsoft Office...
Author: Webdav101 Date: 05/01/2008
Exchange Protocol Documentation
Microsoft released preliminary protocol documentation for Exchange 2007 (as well as Microsoft Office...
Author: Webdav101 Date: 05/01/2008
Why can't WebDAV read BCC?
Using WebDAV to read BCC information on messages (even in the Drafts folder) will not work. The...
Author: Webdav101 Date: 04/24/2008
Howto: Get Free/Busy Information with WebDAV/HTTP
CDO 1.21, CDOEX, etc can get Free/Busy information, however WebDAV cannot directly. You may use a...
Author: Webdav101 Date: 04/16/2008
Reading and changing OWA Settings
In OWA 2003, there were OWA settings mirrored in properties on the root folder of mailboxes which...
Author: Webdav101 Date: 04/14/2008
Drag and Drop with Outlook
Drag and Drop with Outlook is not supported by code. However there are some techniques which can...
Author: Webdav101 Date: 04/01/2008
Detecting Application Memory leaks in Unmanaged C++ with 4 lines of code:
I had written this up for my team a while back and thought I would share.... We have customers who...
Author: Webdav101 Date: 03/31/2008
How can I Increase WebDAV Performance?
- When working with lots of data, first search to get the HREFS of the items, then use the HREFS to...
Author: Webdav101 Date: 03/12/2008
Getting a delay when doing a WebDAV through a firewall?
If both Basic and Windows authentication is turned-on for the Exchange virtual directory on the...
Author: Webdav101 Date: 03/12/2008
Why can't I COPY or MOVE items across stores - i.e. mailboxes, public folders, servers?
COPY and MOVE will fail with a 502 error when trying to work across stores - not supported. You...
Author: Webdav101 Date: 03/12/2008
How to use WebDAV to access mailboxes across Exchange servers?
If there is a front-end server setup, you can access by opening a connection using HTTP or HTTPS and...
Author: Webdav101 Date: 03/12/2008
Howto Add an Attachment with Webdav
There is no mechanism to add an attachment in WebDAV. You will need to create/recreate the item...
Author: Webdav101 Date: 03/12/2008
Howto Delete Attachments with WebDAV
The DELETE verb only works on Exchange 2003 SP1 - it will not work on any earlier version/service...
Author: Webdav101 Date: 03/12/2008
How to work with Item and Folder Permissions using WebDAV?
Permissions to folders and items can be read and changed via WebDAV using an XML descriptor. It’s...
Author: Webdav101 Date: 03/12/2008
How do I work with Tasks using WebDAV.
WebDAV was not designed for working with outlook specific items such as Tasks and is not supported....
Author: Webdav101 Date: 03/12/2008
How do I cancel an appointment with WebDAV?
Unfortunately, there is no facility to cancel a meeting via WebDAV. You may be able to delete an...
Author: Webdav101 Date: 03/12/2008
HOWTO: VB - Reading Delegates WebDAV Sample
Private Sub Command1_Click() '===================================================== 'DoXML takes the...
Author: Webdav101 Date: 03/12/2008
Howto: VB - An example to create a public folder with storage limit settings.
In this example, the following properties are set during the folder creation. outlookfolderclass...
Author: Webdav101 Date: 03/12/2008
HOWTO: Write a file using VBScript
'-------------------------------------------------------------------------------' WriteFileText -...
Author: Webdav101 Date: 03/12/2008
Howto: VBScript - Read a file
'-----------------------------------------------------------------------------------' ReadFileText -...
Author: Webdav101 Date: 03/12/2008
HOWTO: Make XML returned from a propfind easier to read
Here is a sample to reformat XML returned from WebDAV PROPFINDs to make it a little easier to read....
Author: Webdav101 Date: 03/12/2008
HOWTO: Send Email With Attachment Using VB and WebDAV
To send an email with WebDAV, you will you will need to create/recreate the item with a WEBDAV PUT...
Author: Webdav101 Date: 03/12/2008
Howto: WebDAV SEARCH using C#
' This example shows how to do a SEARCH using C# // C# Example to SEARCH a mailbox.// TODO:// Add a...
Author: Webdav101 Date: 03/12/2008
Howto: WebDAV PROPFIND using VB.NET
' This example shows how to do a PROPFIND using VB.NET ‘ VB.NET PROPFIND‘ TODO: Create a VB.NET...
Author: Webdav101 Date: 03/12/2008
Howto: WebDAV X-MS-ENUMATTS using VBScript to enumerate attachments
' This example shows how to enumerate attachments on a message. X-MS-ENUMATTS will ' return phantom...
Author: Webdav101 Date: 03/12/2008
Howto: WebDAV COPY using VBScript
' This example shows how to do a COPY of a message to a folder. 'NOTE:' • Copying or Moving items...
Author: Webdav101 Date: 03/12/2008
Howto: WebDAV MOVE using VBScript
' This example shows how to do a MOVE of a message to a folder. 'NOTE:' • Copying or Moving items...
Author: Webdav101 Date: 03/12/2008
Howto: WebDAV PUT using VBScript
' This example shows how to do a PUT of a message to a folder. What is being written with a PUT...
Author: Webdav101 Date: 03/12/2008