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.

Browse by Tags

Tagged Content List
  • Blog Post: How to get OOF text from Exchange 2003 using WebDAV

    You may be able to get OOF text with WebDAV using a SEARCH. However, its not supported in any way and there is no guarentee that it will always work. The OOF text is stored inside of a hidden item in a mailbox. Below is a sample of the request which is for educational purposes only. Please note that...
  • Blog Post: Microsoft Developer Support does not write or maintain customer production code.

    Microsoft Developer Support does not write or maintain customer production code. If you want Microsoft to do the changes and implement production code, then MCS would be the more appropriate Microsoft organization. Also, you could engage a Microsoft Partner, or any other third party developer entity...
  • Blog Post: How to tell which authentication protocols can be used with WebDAV.

    When you do an anonymous POST to the “exchange” virtual folder, you will get back a response which will tell you about which authentication protocols are supported. Each “WWW-Authenticate:” header in the response tells you which type of authentication method is supported. If you...
  • Blog Post: WebStoreExplore 1.8.3 is now public

    In the past, the team I belong to has made vailable "super samples" which provide a broad range of coverage-by-example around specific messaging APIs - these are often referred to as API Explorers. Two examples of these are MFCMAPI (for Extended MAPI) and EWSEditor (Exchange Web Services). There is a...
  • Blog Post: Consider the full impact of Exchange Set-MailboxCalendarSettings and Set-CalendarProcessing before changing settings

    Many messaging developers and Exchange administrators are not aware of possible effects of MailboxCalendarSettings settings. While these options provide much needed capabilities which remove the need for specialized code, caution should be exercised as MailboxCalendarSettings can drastically affect any...
  • Blog Post: Howto: Determine which Process Is It Running Under (Exchange and Outlook Development/Admin related)

    Understanding which process to use for tracing or taking a dump can be difficult if you are not familiar with where to look. This sections covers the where to look part. Desktop Application: Desktop applications will appear in their own process. COM+ Application: If the COM+ service...
  • Blog Post: WebDAV FBA Authentication Sample Explained.

    Here is some basic information on how FBA authentication is done with WebDAV. To provide some insight into how this works, you should look at the sample code of KB891748 and review it with the explanation below. Note that if you are going against Exchange 2007, you should reconsider using FBA authentication...
  • Blog Post: WebDAV and OWA Authentication Settings

    With any login issue, it’s important to know which authentication protocols are valid. You have to code to an authentication protocol which can be used. The authentication settings for OWA and WebDAV are tied together under Exchange 2000 and 2003. Because of this, developers run into issues with...
  • Blog Post: Santa, I want it all - WebDAV and the full-meal-deal - allprops.

    So, your trying to get "all properties" using WebDAV. Well, hate to break it to you, but there is no way unless you know what every property is and specify it. You will find the same limitation in other messaging APIs - just pick any of them. Now, you can get many and an even almost every property without...
  • Blog Post: Dynamic list of properties versus explicit properties

    With messaging APIs, you can retrieve a list of properties dynamicly or by specific property name. For example with WebDAV, ALLPROPS will return a set of properties on a item. There are issues with trying to get a full list of properties. First of all, ALLPROPS does not equate to all properties. In fact...
  • Blog Post: 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 a search against a mailbox using WebDAV or any other API, you may see the .EDB file grow in size. Don't panic, this is normal. When a search is performed, Exchange will put the results into a search...
  • Blog Post: 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 "Cancelled:" in front of the subject lines on the update messages sent to the recipient(s). ' To use: ' Create a recurring meeting inside the date/time range below with the subject "testabc". ' Invite an...
  • Blog Post: Exchange Protocol Documentation

    Microsoft released preliminary protocol documentation for Exchange 2007 (as well as Microsoft Office 2007 and SharePoint Server) as part of Microsoft's Interoperability Principles. The Exchange protocols are now publicly available on the Open Protocol Specifications section of MSDN in preliminary form...
  • Blog Post: Exchange Protocol Documentation

    Microsoft released preliminary protocol documentation for Exchange 2007 (as well as Microsoft Office 2007 and SharePoint Server) as part of Microsoft's Interoperability Principles. The Exchange protocols are now publicly available on the Open Protocol Specifications section of MSDN in preliminary form...
  • Blog Post: Why can't WebDAV read BCC?

    Using WebDAV to read BCC information on messages (even in the Drafts folder) will not work. The “urn:schemas:mailheader:bcc” will not return the BCC information using WebDAV - this is expected behavior. If you do a GET against the message to get the MIME, then you will also not get the BCC - this also...
  • Blog Post: 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 GET against OWA to get this information. A GET against an OWA URL is really not a WebDAV call… it’s really just plain HTTP GET call – you just need to be sure that the URL is correctly formatted. Most OWA...
  • Blog Post: How can I Increase WebDAV Performance?

    1) When working with lots of data, first search to get the HREFS of the items, then use the HREFS to work with the individual items. The batch processing verbs (BPROPFIND, BPROPPATCH, etc) work well with these. -this will usually give much better performance. 2 When at all possible, use of batch methods...
  • Blog Post: 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 Exchange server, and WebDAV code tries to access the Exchange box through a firewall having port 88 blocked, you will get a long delay. The reason for the delay is that a Basic call will first attempt...
  • Blog Post: 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 to WebDAV they would seem seamless - i.e. one server. This is what I have seen used almost all of the time. Using Microsoft Exchange 2000 Front-End Servers http://www.microsoft.com/downloads...
  • Blog Post: Howto Add an Attachment with Webdav

    There is no mechanism to add an attachment in WebDAV. You will need to create/recreate the item using a WebDAV PUT. The text you would be putting would be the mime of the item, which also contains the attachment. It’s useful here to use CDOSYS to create a message and add an attachment – then extract...
  • Blog Post: 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 also possible to use other APIs such as ADO update security settings. An XML descriptor is an XML document in a string which describes security permissions to an item or folder. A PROPFIND is used to read...
  • Blog Post: 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. To work with tasks, you will to reverse-engineer the solution and in order to construct the proper XML to be used for a PROPPATCH/PROPFIND. Tasks are supported to be worked with using Outlook Object Model...
  • Blog Post: 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 appointment directly from a calendar if there are no attendees. A meeting is pretty much an appointment with attendees. If you have an appointment with attendees (i.e. it’s a meeting), you cannot just delete...
  • Blog Post: HOWTO: VB - Reading Delegates WebDAV Sample

    Private Sub Command1_Click() '===================================================== 'DoXML takes the href to a document 'and returns the MAPI PR_ENTRYID property expressed in 'a hexadecimal string format such as is used by CDO 1.21 'Function DoXML(strHref) Dim objX Dim objXMLdoc Dim objNode Dim strR...
  • Blog Post: 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. ' ReformXML - reformats the XML to be more easily readable Private Function ReformXML(sOriginalXML) Dim sXML As String sXML = sOriginalXML sXML = Replace(sXML, "<", (vbCrLf & "<")) sXML =...
Page 1 of 2 (41 items) 12