Le Café Central de

                 ... Deva blogs!!

  • Le Café Central de DeVa

    Best Practices : How to quit Outlook application after automation from Visual Studio .NET client?


    When you automate a Microsoft Outlook application from Microsoft Visual Basic .NET or Microsoft Visual C# .NET, the Outlook application does not quit when you call the Quit method. You can notice the application is closed, but still if we notice either the application or Outlook is running in behind the scenes. To make sure that the Office application quits, make sure that your automation code meets the following criteria:    

    • Use System.Runtime.InteropServices.Marshal.ReleaseComObject when you have finished using an object. This decrements the reference count of the RCW.
    • To release the reference to the variable, set the variable equal to Nothing or Null.
    • Use the Quit method of the Office application object to tell the server to shut down.
    • You can try this C#.Net code snippet:

      //If you are using Visual C# .NET, reference the code for the ReleaseObj() function:
      private void ReleaseObj(object obj)
          catch {}
              obj = null;

      In this scenario, you can use the GC.Collect() method and the GC.WaitForPendingFinalizers() method after you release the last object. Because the runtime performs garbage collection on the RCW, the GC.Collect() method forces the garbage collector to run and might release any references that the RCW still has. The GC.Collect() method tries to reclaim the maximum memory that is available.

      Note: That this does not guarantee that all memory will be reclaimed.

      For more reference and detailed information, read blog post series by Matt.

      mstehle- The CDOs and CDONTS of Messaging Development - OOM.NET- Part # 1
      mstehle- The CDOs and CDONTS of Messaging Development - OOM.NET- Part # 2
      mstehle- The CDOs and CDONTS of Messaging Development - OOM.NET

  • Le Café Central de DeVa

    Coding practices : Outlook automation using VB.Net


    You can try when you do programming with VB.Net and Outlook automation:

    • When you start automation code by declaring object variables with a specific object type that represents the top-level object and then declaring any child objects you want to reference.
      Dim olApp  As Outlook.Application

    • You then create an instance of the top-level object by using the Set statement and the New keyword.
    • Set olApp = New Outlook.Application

    Please note: You need to understand that the New keyword can't be used to create a new instance of a child object.

    • To create an instance of a child object, use the appropriate method of the parent object along with the Set statement.
    • Set MailMessage = olApp.CreateItem(olMailItem)

    • At the end of the procedure, each object variable is destroyed by explicitly setting it equal to the Nothing keyword. If you do this, there is no need to use a Set statement to instantiate the object. However, this technique is not recommended because you have no control over when the object variable is created.
    • In detail, if your code must test to see if an object exists by using a statement such as If olApp Is Nothing Then, this test will return True if you have created an instance of the object in the Dim statement. Additionally, you might not need to use an object except at the user's request.
    • If you create an instance of the object by using New in the Dim statement, the object will be created even if it isn't used. To maintain control over when an object is created, don't use the New keyword in the Dim statement, and instantiate the object by using a Set statement at the point in your code where you must use the object.
  • Le Café Central de DeVa

    Exchange Server 2007 & OWA : Password change feature


    If you work with Exchange Server 2007, this method is no longer required.  But, it can be used with Windows Server 2003 and Exchange Server 2007 configurations when the ability to change passwords after they have expired or when users are required to change their password at the first logon is needed.


    When i was in search mode regards to this, just i found an article by Will Duff, which talks about what we need to know about the OWA Change Password feature of Exchange Server 2007 ? It’s worth of reading…:)

    He not only talks about the OWA & Exchange server 2007, but has various references to it’s previous versions.

    “…The previous versions of Exchange Server utilized the Change Password functionality for IIS 5 and 6 using the IISADMPWD virtual directory and a .DLL file on the server.  These configurations were discussed in the following KB articles:

    FIX: You experience various problems when you use the Password Change pages in IIS 5.0

    FIX: You experience various problems when you use the Password Change pages in IIS 6.0

    Implementing the Change Password feature with Outlook Web Access

  • Le Café Central de DeVa

    SMTP Diagnostics - SMTPDiag Tool


    What is SMTPDiag?

    SMTPDiag is a troubleshooting tool designed to work directly on a Windows server with IIS/SMTP service enabled or with Exchange Server installed.

    What is it used for?

    • It utilizes the same API's as Windows and Exchange in order to diagnose configuration and connection issues involving SMTP and DNS.
    • It issues DNS queries using both UDP and TCP.
    • It checks the syntax is to check Start of Authority (SOA) for the remote address domain.

    How to use it:

    commandprompt:\> SMTPDIAG “sender address” “recipient address” [-d target DNS] [/v]

    Argument & its definition:

    sender address
    : Required. Address of a local mailbox. Used to verify SMTP submission and check inbound DNS.

    recipient address: Required. E-mail address of remote mailbox you are trying to send mail to. Used to verify DNS, and remote mailbox availability.

    -d target DNS :Optional. IP address of target DNS server to use to look up remote MX (mail exchange) records for testing. This is configured as an external DNS server in Exchange. Please note that the external DNS setting is not available for Internet Information Services (IIS) SMTP.

    /v: Optional. Displays additional information about each test.

    /?: Displays Help


    Please Note: The results will be color coded in the syntax. It will have the following colors and its definition:

    White text indicates action being taken.
    Gray indicates informational results
    Green indicates a successful test result.
    Red indicates a failed test result.

    You can download the tool from Microsoft Download Center.

  • Le Café Central de DeVa

    Securing Exchange Server 2007 & Database Encryption with BitLocker?


    My experience with BitLocker:
    I use Windows BitLocker Drive Encryption (BitLocker) in my Windows Server Vista, 2008 & new Win 7 boxes. As i am trying this for a while, i thought to apply it with Exchange Server 2007 SP2 also; also wanted to see, whether i can make Exchange Server more stronger?

    How i tried?

    Step 1: I tried creating my new installation of Windows Server 2008 machine with SP updates
    Step 2: Tried creating the BitLocker
    Step 3: Tried creating the Exchange Server 2007 SP2

    Let me share the steps that i followed. Also i want to share couple of basics about BitLocker, if you’re interested…

    What’s a BitLocker?
    BitLocker a security feature in the Windows Vista, Windows Server 2008, Windows 7 operating systems that can provide protection for the operating system on your computer and data stored on the operating system volume.

    What BitLocker do?
    Mainly it takes care of the following:

    • It encrypts all data stored on the Windows operating system volume. This includes the Windows operating system, hibernation and paging files, applications, and data used by applications.
    • It is configured by default to use a Trusted Platform Module [TPM] to help ensure the integrity of early startup components (components used in the earlier stages of the startup process), and "locks" any BitLocker-protected volumes so that they remain protected even if the computer is tampered with when the operating system is not running.

    What makes BitLocker – the special?
    What i learnt is… BitLocker is implemented in code in the early startup components ((master boot record (MBR), boot sector, boot manager, Windows Loader)), and as a filter driver that is an integral part of the operating system. When BitLocker is first enabled, existing data on the volume must be encrypted. You can continue to use the computer during this process. 

    Also the BitLocker helps,

    + Address threats that may be caused by data theft or exposure from lost or stolen computers.
    + Data on a lost or stolen computer is vulnerable to unauthorized access if a software program is run on the computer or if the computer's hard disk drives are transferred to a different computer.
    + Reduce unauthorized data access by improving file and system protections.
    + Make data inaccessible when BitLocker-protected computers are decommissioned or recycled.

    To get more information regarding the BitLocker Drive Encryption, you can refer this TechNet article. Also you can refer the BitLocker Encryption  Step-by-Step Guide for more information.

    How this help us with Exchange Server to make it secure?
    In Windows Server 2008, BitLocker protection can be extended to volumes used for data storage as well, along with the protection for the operating system on your computer.

    BitLocker requires that the active partition (or called as system partition) be a non-encrypted partition. The Windows operating system is installed to a second partition that is encrypted by BitLocker. Whenever dealing with the encryption of data, especially in an enterprise environment, you must consider how that data can be recovered in the event of hardware failure, changes in personnel, or other situations in which encryption keys are lost.

    How to do this?
    BitLocker enables an IT administrator to encrypt the operating system volume and additional volumes on a Windows Server 2008-based computer. Let we try this out. By default, BitLocker is not installed in Windows Server 2008. You must add BitLocker from the Server Manager page in Windows Server 2008.

    I tried installing from the command prompt.

    1. Click the Start button, click All Programs, click Accessories, Right-click Command Prompt, and click Run as administrator.

    2. If the User Account Control (UAC) dialog box appears, select Continue.

    3. At the command prompt, type the following:

      ServerManagerCmd -install BitLocker -restart

      This installs BitLocker if you have not already installed it.

    4. After you install and configure BitLocker, you must restart the server to enable the features that BitLocker provides.

    Additionally, what more you can secure?
    As per the TechNet article, you can use BitLocker to encrypt the volumes that host Exchange 2007 database files and transaction log files. Additionally, because the Exchange Storage Engine (ESE) works well with BitLocker, you do not experience a significant performance penalty when you encrypt the volumes that host the Exchange database files and transaction log files.

    Do you know, this is supported by Microsoft CSS?
    As per the TechNet article - because of rigorous testing and because of the integration of BitLocker in Windows Server 2008, Microsoft Customer Support Services fully supports Exchange 2007 for use with BitLocker-encrypted volumes.


  • Le Café Central de DeVa

    Microsoft Office 2010 SP2 available for download

    Now you can download Office 2010 SP2 which provides the latest updates for Office 2010. This service pack includes two kinds of fixes: (1) Previously unreleased fixes that are included in this service pack. In addition to general product fixes, these fixes include improvements in stability, performance, and security. (2) All the public updates that were released through May 2013, and all the cumulative updates that were released through April 2013.

    DownloadEither you can install this via Microsoft Update (recommended one) or download Office 201 SP2 32-bit or Office 201 SP2 64-bit package. For more info you can refer, http://support.microsoft.com/kb/2687455


  • Le Café Central de DeVa

    Unicode mails send using CDOSYS & Bodypart show special or funny characters in message body


    Recently I was working with a Customer who uses ASP & CDOSYS to send Unicode content e-mails. He had the following partial code-snippet:

    Set objMail = Server.CreateObject("CDO.Message") 'Create CDO.Message Object
    Set objBodyPart = objmail.BodyPart 'Create BodyPart
    objBodyPart.Charset = "UTF-8" 'Set relevant Charset
    Set objConf = Server.CreateObject("CDO.Configuration") 'Create Configuration Object
    Set objFields = objConf.Fields 'and set its Configuration fields
    With objFields 
    .Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2 'Send using port or pickup
    .Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "localhost" 'Specify SMTPServer
    .Item("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 20 'Specify timeout
    .Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25 'Specify the port
    .Update 'Update the Configuration
    End With 
    With objMail 
    Set .Configuration = objConf 'Set the configuration object
    .From = email 'Set From users
    .To = Trim(recip) 'Set recipients
    .Subject = subject 'Set the subject
    .TextBody = txString 'txtString contains the unicode chars
    End With 
    objMail.Send 'Send
    'Release the objects
    Set objFields = Nothing 
    Set objConf = Nothing 
    Set objMail = Nothing 

    But he updated that he can display the information correctly in a web browser using UTF-8 encoding on the web page; But whenever he send the information
    via email the Unicode values in the message body show the "special or funny" characters.He also tried setting the charset for the email but it doesn't made any difference.

    When we started troubleshooting we found that we need to set the HTMLBodyPart and TextBodyPart Charset in the above code, which resolved the issue.

  • Le Café Central de DeVa

    OWA Customization: PSS support policy for Exchange Server 5.5, 2000 & 2003


    OWA 2003Per the support KB, Microsoft PSS has the support policy for customization of Outlook Web Access for Exchange that cover its versions like 5.5, 2000 & 2003.

    Per the article, we can get more information regarding the support policy for OWA customization for its various versions like,

    “…The Exchange 5.5 version of OWA is made up of Active Server Pages (ASPs).
    The Exchange 2000 and Exchange 2003 versions of OWA are composed of two main components: templates and controls. Templates are served from a binary Internet Server Application Programming Interface (ISAPI) extension that communicates with the Exchange store. Controls are referenced by the templates and are located in the Program Files\Exchsrvr\Exchweb folder. Controls are made up of script or HTML files, such as JScript files (.js), HTML Component files (.htc), cascading style sheet files (.css), Extensible Stylesheet Language (XSL) transform files (.xsl), and graphics files.


    You may want to customize OWA by changing features or by modifying the user interface or by using the article. Although you can customize OWA objects by modifying either the script code or the HTML, Microsoft does not recommend that you do so. Microsoft Product Support Services (PSS) also cannot help you with the customization. However, if you want to customize OWA, the following limitations and considerations apply:

    • PSS does not provide assistance to customize OWA objects.
    • If you contact PSS about an OWA issue for a server that OWA is customized on, you must replace the customized files with the original versions of the files and verify that you can reproduce the issue by using the original versions of the files. If the issue occurs only with the customized versions of the files, and you cannot reproduce the issue with the original versions of the files, PSS cannot help you troubleshoot the issue.
    • If you install a service pack or hotfix that updates the files in the Program Files\Exchsrvr\Exchweb folder, any customized files that exist in that folder are overwritten. If you do not want to lose the customizations that you created, create a backup of the customized files, and then restore the files after you install the service pack or hotfix.

    Although PSS cannot help you customize OWA, the following resources are available:


    But still lot of guys around the world customize the OWA though.

    You can find the following article,

    Customizing the Outlook Web Access Logon Page

    Still want to customize the CSS and Dynamic styles, you can refer these articles,
    W3C: Cascading Style Sheets Home Page
    W3C: Adding a Touch of Style
    W3C: Cascading Style Sheets, level 2: CSS2 Specification
    MSDN: Introduction to Dynamic Styles

    Hope this helps!!

  • Le Café Central de DeVa

    Tutorial : Organizational Forms Library - Series # 1


    What are the various types of Outlook form libraries available?

    There are three types of Outlook form libraries are available, they are (i) Organizational Forms Libraries (2) Personal Form Libraries (3) Folder Libraries.

    What is an Organizational Forms Library?

    • An organization's forms library is a repository for forms (templates that help users to enter and view information)  that are accessed by all users in a company.
    • In simple terms, an organizational forms library is a special type of public folder that is listed only with system folders.

    Some of the examples are, a standard supply request form can be stored in an organizational forms library or a form used to report vacation time etc.

    Why to use Organizational Forms Library?

    If we publish the forms at Organizational forms library it will used throughout the enterprise-wide. Org. forms library acts as the centralized library or repository. Saving to this library provides a quick and easy way to distribute and update forms.

    How to use the forms enterprise-wise or throughout the organization?

    • You must publish a form to this library if you want to make the form available to everyone in your organization.
    • You can publish a form to the Organizational Forms Library when you want to use the same custom form in more than one folder.
    • This library is frequently used for e-mail message forms because they are typically not based on a specific folder.
    • When you publish a form, you can maintain only a single published form.
    • Everyone in the organization can access the forms that are published to this library as long as the administrator grants the users permissions to the library.

    Where these libraries stored in Exchange?

    Exchange stores these libraries in the EFORMS REGISTRY system folder.

    Note: In Exchange Server 2003, you can only create organizational forms libraries in the system folders subtree of the Public Folders tree. Even if you have created new public folder hierarchies to work with the organizational forms libraries, only the Public Folders tree supports the EFORMS REGISTRY system folder.

    What are the permissions required to view or use this?

    Org. forms library is stored on the Microsoft Exchange Server-based computer. The administrator must give you permissions to publish to the Organizational Forms Library. This permission is typically given to only some individuals or a department that manages the Exchange server-based computer

    Note: You can't publish forms to the Organizational Forms library unless the systems administrator grants you permission.

    Multi-languages support for Organizational Forms Library?

    • Organizational Forms libraries provides supports for multi-languages.
    • When you create an organizational forms library, you assign a language to it. You can have only one organizational forms library for each language.
    • When you use the Forms Administrator to create Organizational Forms Libraries, you must consider the different languages that clients use to access those libraries.
  • Le Café Central de DeVa

    Part # 4 - Configure Public folder permissions


    Configure Public folder permissions

    Please find the lists of management tasks that you can perform to configure and maintain public folder permissions:

    • How to Add Permissions for Client Users to Access Public Folder Content
      You can use the Add-PublicFolderClientPermission cmdlet or the AddUsersToPFRecursive.ps1 user management script to specify the permissions for the client user. You can create the access rights by using either the predefined permission roles or by creating custom access rights.
    • How to Remove or Replace Public Folder Client Permissions
      You can use the Remove-PublicFolderClientPermission cmdlet or the RemoveUserFromPFRecursive.ps1 script to remove permissions for the client user. You can remove access rights by using either the predefined permission roles or by using the access rights.
      You can use the ReplaceUserWithUserOnPFRecursive.ps1 and ReplaceUserPermissionOnPFRecursive.ps1 scripts to replace client permissions on a public folder.

    • How to View Public Folder Client Permissions Settings
      You can use the Get-PublicFolderClientPermission cmdlet to view the client access rights associated with a public folder.
    • How to Grant the Send As Permission for a Mail-Enabled Public Folder
      You can use Send As permissions to configure a mail-enabled public folder so that users other than the public folder owner can use the mail-enabled public folder to send messages.
      The Send As permission is not granted until after replication has occurred. Replication times depend on your Microsoft Exchange and network configuration.
    • How to Add Administrative Permissions for Users to Access Public Folders
      You can use the Add-PublicFolderAdministratorPermission cmdlet, the Add-ExchangeAdministrator cmdlet, or the Add Exchange Administrator wizard to grant administrative rights for a user to access a public folder or public folder hierarchy.
    • How to Remove Public Folder Administrative Permissions
      You can use the Remove-PublicFolderAdministratorPermission cmdlet, the Remove-ExchangeAdministrator cmdlet, or the Add Exchange Administrator wizard to remove administrative access rights from a user for a public folder or public folder hierarchy.
    • How to View Public Folder Administrative Permission Settings
      You can use the Get-PublicFolderAdministratorPermission cmdlet, the Get-ExchangeAdministrator cmdlet, or the Organization Configuration node to view the administrative rights that are associated with a public folder or public folder hierarchy.
  • Le Café Central de DeVa

    Error : Outlook blocks access to the potentially unsafe attachments ?


    Recently one of the developer sent out an email to me stating the he face 'new' issue with Outlook 2007, which blocks access to some of the mail's attachments. When they try to access the attachment they get the following error message “Outlook blocked access to the following potentially unsafe attachments: []”. He also complained that the Outlook blocks the specific attachment; he cannot save, delete, open, print, or can’t work with the attachment in Outlook. For him it’s quite annoying as he is using Outlook from version 2000 onwards (2000, 2003 & 2007), but he noticed this strange behavior in 2007 and want to know that it might be a bug or new security feature with Outlook?

    Later i checked regarding the same and responded him to refer the support KB which states methods that he can use if he have to open an attachment that is blocked in Outlook. Additionally, this article contains information about the kinds of attachments that Outlook blocks. Per KB’s excerpt, it’s bit clearly mentioned that “All versions of Outlook since Outlook 2000 Service Release 1 (SR1) include a security feature that blocks attachments that might put your computer at risk for viruses or other threats. Although Outlook blocks access to the attachment, the attachment still exists in the e-mail message…”.

    Also guided him to check whether the mail contains the actual attachment or just a shortcut to a file in Outlook(if we right-click the original file, drag the file to the Inbox folder in Outlook, and then click Send with Shortcut), which may also prompt outlook to throw this message.

    Please note: Shortcuts that have file name extensions of .lnk or .url are Level 1 e-mail attachment types and are not available to the recipient.

    Hope this helps.

  • Le Café Central de DeVa

    CASPOL & Add-in : How to Full trust the assemblies ?


    If we want to "fully trust" the assemblies, it can be done through the signed assemblies. In Visual Studio 2005, you need to select the Properties for the project and select the Signing tab.  After you installed (including the newly signed assemblies) you need to give permission to the assemblies. This can be done using a tool called CASPOL.EXE.

    The CASPOL or Code Access Security Policy tool enables users and administrators to modify security policy for the machine policy level, the user policy level, and the enterprise policy level. For detailed information, you can have a look at the following article.

    Find the command line for registering your file: caspol -u -ag All_Code -url "<full path to your file>" FullTrust -n "<assembly name>"

    If you have more than one file or if you want to do this for a directory: caspol -u -ag All_Code -url "<directory path>\*" FullTrust

  • Le Café Central de DeVa

    Outlook Custom form : Creating a message class when customizing form pages

    In the Publish Form As dialog box, when you type a name in the Display name field, you will notice that the Form name field reflects the display name by default. You can leave the form name to be the same as the display name or you can change the form name. The display name will be the caption at the top of your form. The display name will also be used to construct the name under which your form will be published. When you publish your form, the display name will be listed in the Choose Form dialog box.

    Outlook automatically constructs a message class for the form by preceding the form name with IPM. For instance, if you publish a mail message form that you want to name "MyForm", in the Display name field, type: This is my Form. In the Form name field, type: MyForm. At the bottom of the dialog box, Outlook will display the message class for your new form as: IPM.Note.MyForm.

    When you search in the Choose Form dialog box, you will see "This is my Form" displayed in the list. If you select it, the Display name field at the bottom of the dialog box will display, "This is my Form" and the Form name field will display, "MyForm".

    A message class, which is generated automatically by Outlook from the form name, is assigned to the form. When a form with that message class is selected, Outlook loads and displays an instance of that form. Outlook will use the message class, IPM.Note.MyForm, to locate the form with the display name, "This is my Form".

    Please note:

    • The message class is an internal identifier used by Microsoft Office Outlook and Microsoft Exchange to locate and activate a form .
    • The message class property corresponds to the MAPI property PR_MESSAGE_CLASS.
    • This class property determines which receiving folder the message should be routed to and which form should be activated to view the message.
  • Le Café Central de DeVa

    SMTP Commands Part # 1- List of SMTP Commands


    Please find the list of SMTP commands and its definitions, which can be used on multiple places. For example it can be used to check event SMTP sinks by sending mails.

    SMTP commands

    SMTP command

    Command function


    Sent by a client to identify itself, usually with a domain name.


    Enables the server to identify its support for Extended Simple Mail Transfer Protocol (ESMTP) commands.


    Identifies the sender of the message; used in the form MAIL FROM:.


    Identifies the message recipients; used in the form RCPT TO:.


    Allows the client and server to switch roles and send mail in the reverse direction without having to establish a new connection.


    The ATRN (Authenticated TURN) command optionally takes one or more domains as a parameter. The ATRN command must be rejected if the session has not been authenticated.


    Provides a mechanism by which the SMTP server can indicate the maximum size message supported. Compliant servers must provide size extensions to indicate the maximum size message that can be accepted. Clients should not send messages that are larger than the size indicated by the server.


    An extension of SMTP. ETRN is sent by an SMTP server to request that another server send any e-mail messages that it has.


    Provides the ability to send a stream of commands without waiting for a response after each command.


    An ESMTP command that replaces the DATA command. So that the SMTP host does not have to continuously scan for the end of the data, this command sends a BDAT command with an argument that contains the total number of bytes in a message. The receiving server counts the bytes in the message and, when the message size equals the value sent by the BDAT command, the server assumes it has received all of the message data.


    Sent by a client to initiate the transfer of message content.


    An ESMTP command that enables delivery status notifications.


    Nullifies the entire message transaction and resets the buffer.


    Verifies that a mailbox is available for message delivery; for example, vrfy ted verifies that a mailbox for Ted resides on the local server. This command is off by default in Exchange implementations.


    Returns a list of commands that are supported by the SMTP service.


    Terminates the session.

    The following table lists the extended SMTP commands that Exchange makes available to the SMTP service.

    Extended SMTP commands

    Extended SMTP command

    Command function


    A method that is used by Microsoft Exchange Server 2003 and Exchange 2000 Server servers to authenticate.


    A method that is used by Exchange 2000 and Exchange 2003 servers to authenticate.


    Provides the ability to propagate message properties during server-to-server communication.


    Adds support for link state routing in Exchange.

  • Le Café Central de DeVa

    Enhance Windows/Exchange Search using Microsoft Filter Pack


    How to Enhance Windows Search using Microsoft Filter Pack?

    The Windows Search service can be enhanced by installing the Microsoft Filter Pack, which provides additional IFilters to support critical search scenarios across multiple Microsoft Search products. The Filter Pack includes the following IFilters:

    • Metro (.docx, .docm, .pptx, .pptm, .xlsx, .xlsm, .xlsb)
    • Visio (.vdx, .vsd, .vss, .vst, .vdx, .vsx, .vtx)
    • OneNote (.one)
    • Zip (.zip)

    When you install the Filter Pack (which you can download for free), the IFilters in the preceding list are installed and registered with the Windows Search service. The Filter Pack is available for x86 and x64 versions of Windows Vista, Windows Server 2008, Windows XP, and Windows Server 2003

    Exchange Search & IFilters:

    Exchange Search uses IFilters to index text content in different file formats. In order to implement that you need to download the Microsoft Filter Pack. This will install and register IFilters with the Microsoft Windows Indexing Service. These IFilters are used by Microsoft Search products to index the contents of specific document formats.

    Office 2007/Exchange Server 2007:

    You can download (either x86/x64) Microsoft Filter Pack @ http://www.microsoft.com/downloads/en/details.aspx?FamilyId=60C92A37-719C-4077-B5C6-CAC34F4227CC&displaylang=en. This will install and register IFilters with the Microsoft Windows Indexing Service.

    This Filter Pack includes IFilters for the following formats: .docx, .docm, .pptx, .pptm, .xlsx, .xlsm, .xlsb, .zip, .one, .vdx, .vsd, .vss, .vst, .vdx, .vsx, and .vtx. Because Windows Desktop Search (WDS) consumes IFilters from Windows Indexing Service, the IFilters will be automatically registered and available for use by WDS.

    To register these IFilters with a specific Search product, please see the associated KB article below:

    Office 2010 & Exchange Server 2010:

    Microsoft Office 2010 Filter Packs includes filters for Microsoft Office 2010 and Office 2007 file formats. Installation of the Filter Pack is a pre-requisite for Exchange 2010 Mailbox and Hub Transport servers. For details, see Exchange 2010 Prerequisites. The following file name extensions are supported by the filter pack: .docm, .docx, .one, .pptm, .pptx, .vdx, .vsd, .vss, .vst, .vsx, .vtx, .xlsb, .xlsm, .xlsx, .zip. For more information and to download the Filter Pack, see Microsoft Office 2010 Filter Packs.

    After you install the Filter Pack, the included IFilters are registered with Windows Search. To allow Exchange 2010 to index Office 2010 file formats, the IFilters must also be registered with Exchange Search.

    In Exchange 2010 SP1, Exchange Setup registers the IFilters from Office 2010 Filter Packs with Exchange Search. In the release to manufacturing (RTM) version of Exchange 2010, you must register the IFilters with Exchange 2010 by modifying the registry. You must perform this step after you have installed Exchange 2010 RTM on the server.

    Please note

    In Exchange 2010 RTM, you can meet the prerequisite by installing 2007 Office System Converter: Microsoft Filter Pack. We recommend that you upgrade to the Office 2010 version of the Filter Pack.

    Related article:

    How to Register IFilters 2.0 with Exchange 2007 and Exchange 2010

  • Le Café Central de DeVa

    Monitoring event sink # 27 - After you register an event sink on a mailbox store, the Microsoft Exchange Information Store service does not start in Exchange Server 2003


    One of my customer had migrated from Exchange server 2000 to Exchange Server 2003, where had an event sink registered on a mailbox store. But his Store.exe (Exchange Information Store service) stops responding for one of the following events: 

    • You restart the Microsoft Exchange Information Store service.
    • Store.exe automatically starts after a restart of the Exchange Server 2003 server, along with the event logged in the application log;

    Event Type: Error
    Event Source: Application Error
    Event Category: (100)
    Event ID: 1000
    Date: Date
    Time: Time
    User: N/A
    Computer: Computer_Name
    Description: Faulting application STORE.EXE, version Version_Number, faulting module EXOLEDB.DLL, version Version_Number, fault address 0x0002145b. For more information, see Help and Support Center at http://support.microsoft.com

    • When we troubleshooting the issue, we tried manually start the store.exe, we get the following error message:  System error has Occurred. The process terminated unexpectedly.

    When we troubleshooted the issue further we found that the issue occurs if the Criteria field in the event sink has a value of Null. To work around this problem, we tried unregister the event sink and it started working, also we recommended the customer to upgrade with the latest service pack for the Exchange Server 2003.


  • Le Café Central de DeVa

    "MAPI_E_FAILONEPROVIDER" when you try to connect to a mailbox on an Exchange 2010 from an Exchange 2003 server


    Recently one of my customer updated that when he tried connecting to a mailbox that is located on a  Exchange Server 2010 from Exchange Server 2003 by using a custom MAPI/C++ application. But it failed and it thrown the following error message: “MAPI_E_FAILONEPROVIDER”.

    As part of troubleshooting the issue, we tried using MFC MAPI utility and can reproduce the issue. During troubleshooting, we found that this issue occurs because the MAPI subsystem on an Exchange Server 2003 server is not designed to be used on an Exchange Server 2010 server.

    To resolve this issue, we recommended to use the following Exchange MAPI subsystem on an Exchange Server 2010 server/on a Exchange Server 2007 server.

    Please note that the Exchange MAPI client and Collaboration Data Objects (CDO) 1.2.1 can be installed only on Exchange 2007 and Exchange 2010 servers. Additionally, it includes the MAPI client libraries and supports CDO 1.2.1. However, you cannot install this download on an Exchange 2003 server.


    1) You can download the MAPI Sub system @ Microsoft Exchange Server MAPI client and Collaboration Data Objects 1.2.1

    2) You can download the MFC MAPI Utility @ http://mfcmapi.codeplex.com/

  • Le Café Central de DeVa

    Workaround: Command (send to > Mail recipient or File > Send as attachment) might not work when Outlook 2007 / 2010 is running and installed side-by-side with Outlook 2013


    When Outlook 2007 or Outlook 2010 is running and installed side-by-side with Outlook 2013, Outlook shows the following message when you click Send To > Mail Recipient in Windows Explorer or click File > Send As Attachment in another program: This action is not supported while an older version of Outlook is running

    In order to move ahead, you can try the following workaround: First, close the earlier version of Outlook, and repeat your steps. Or create a new email message in Outlook and click Insert > Attach File to attach the file. Viola, it just works!!

  • Le Café Central de DeVa

    Exchange Server 2007 & Workflow designer for Exchange


    What is CDO for Workflow?

    CDO for Workflow (CDOWF) is built-in functionality provided with Microsoft Exchange 2000 Server. By using CDOWF, which is driven by the Exchange store event architecture, you can design workflow applications without having to write the fundamental code that accesses, modifies, and controls data. CDOWF includes a workflow engine, modeling tools, and an event sink.

    Applications that use CDOWF are stored on the Exchange server. Direct access to that server, however, is not required. The Workflow Designer can be used to deploy workflow applications remotely on an Exchange server, with the requirement that the user have sufficient permissions to access the mailboxes where the application is to be installed.

    Support for Workflow?

    Per the article, if you have developed applications by using the Workflow Designer for Exchange 2000 Server, and you require a copy of the Workflow Designer installation package, please contact Microsoft Customer Support Services. The Workflow Designer for Exchange 2000 Server will be supported while Microsoft Exchange Server 2003 support is available.

    Note: CDOWF does not ship in and is not supported for Microsoft Exchange Server 2007.

    Where can i get more documentation on this?

    Note: The Workflow Designer for Exchange 2000 Server is no longer available for download. The download file that is available here includes only a Readme file, and does not include the Workflow Designer


    Earlier it’s shipped with Exchange 2000 Server and Exchange Server 2003. CDOWF does not ship with and is not supported for Exchange 2007. CDOWF is expected to be enhanced or replaced in a future version of Exchange. So we need to consider using Microsoft BizTalk for more complicated, inter-organizational, and non-messaging related workflow process implementations.

    Future of Exchange Workflow…
    Microsoft recommends that you migrate applications that use Exchange Workflow and the Collaborative Data Objects for Exchange Workflow (CDOWF) to use the Windows Workflow Foundation. It is used to create applications that use workflow and orchestration. The programming model is more up-to-date, and the technology is part of the Windows platform. CDOWF can’t be used in managed code, but as you’d expect, Windows Workflow Foundation can.

    then, what is Windows Workflow Foundation?











    Windows Workflow Foundation supplies the programming model, engine, and tools required to quickly build workflow-enabled applications on Microsoft Windows.

    • It consists of a namespace, an in-process workflow engine, and designers for Microsoft Visual Studio 2005.
    • Applications that use Windows Workflow Foundation can be developed and run on Microsoft Windows Vista, Microsoft Windows XP, and the Microsoft Windows Server 2003 family.
    • Windows Workflow Foundation includes support for both system workflow and human workflow across a variety of scenarios, including workflow within line-of-business applications, user interface page flow, document-centric workflow, human workflow, composite workflow for service-oriented applications, business rule–driven workflow, and workflow for systems management.

    Where can i get more information on this…

    Windows Workflow Foundation
    Understanding Tracking in Windows Workflow Foundation
    WF Tutorial: Building Sequential Workflows for Windows Workflow Foundation


    Related articles:


  • Le Café Central de DeVa

    How i can specify e-mail format using Microsoft Office Outlook 2007 and its previous versions?

    How to specify e-mail format in Microsoft Office Outlook 2007?
    Global Change
    Follow these steps to turn off TNEF:
    1. On the Tools menu, click Options.
    2. Click the Mail Format tab.
    3. In the Compose in this message format box, click Plain Text or HTML, and then click OK.
    Follow these steps to send in TNEF:
    1. On the Tools menu, click Options, and then click the Mail Format tab.
    2. In the Compose in this message format box, click Rich Text, and then click OK.

    How to specify e-mail format in Microsoft Office Outlook 2003 and earlier versions of Outlook

    Global Change
    Follow these steps to turn off TNEF:
    1. On the Tools menu, click Options, and then click the Mail Format tab.
    2. In the Send in this message format box, click Plain Text or HTML, and then click OK.
    Follow these steps to send in TNEF:
    1. On the Tools menu, click Options, and then click the Mail Format tab.
    2. In the Send in this message format box, click to select Microsoft Outlook Rich Text Format, and then click OK.
    Per Recipient Change
    In the Contacts Folder
    Follow these steps to turn off TNEF:
    1. Open the recipient's record in the Contacts folder.
    2. Double-click the recipient's e-mail address.
    3. Choose Send Plain Text only in the Internet Format box.
    Follow these steps to send in TNEF:
    1. Open the recipient's record in the Contacts folder.
    2. Double-click the recipient's e-mail address.
    3. Click Send Using Outlook Rich Text Format in the Internet Format box.
    In the Personal Address Book
    Note Personal Address Books (.pab) can no longer be created or used in Outlook 2007.
    Use the following steps to turn off TNEF:
    1. Locate the recipient in the Personal Address Book.
    2. Double-click the recipient's e-mail address.
    3. Click to clear the Always send to this recipient in Microsoft Exchange Rich Text Format check box, and then click OK.
    Use the following steps to send in TNEF:
    1. Locate the recipient in the Personal Address Book.
    2. Double-click the recipient's e-mail address.
    3. Click to select the Always send to this recipient in Microsoft Exchange Rich Text Format check box, and then click OK.
    Per message change in Outlook 2007
    Use the following steps to turn off TNEF:
    1. Open a new mail message, or click Reply on a received message.
    2. On the Options tab, click HTML or Plain Text.
    Use the following steps to turn on TNEF:
    1. Open a new mail message, or click Reply on a received message.
    2. On the Options tab, click Rich Text.
    Per message change in Outlook 2003 and earlier versions of Outlook
    Use the following steps to turn off TNEF.
    1. Open a New mail message, or click Reply on a recently received message.
    2. On the Mail Format toolbar, click to select Plain Text or HTML from the dropdown menu.
    Use the following steps to turn on TNEF.
    1. Open a New mail message, or click Reply on a recently received message.
    2. On the Mail Format toolbar, click to select Rich Text from the dropdown menu.
  • Le Café Central de DeVa

    Fix: Using Outlook to send an e-mail message, the recipient of the message see Winmail.dat attachment


    One of our customer reported that one of their recipient receives winmail.dat in the messages as the attachment. Based on analysis, we found that if the recipients of your messages receive an attachment called winmail.dat, you sent messages to them that included Microsoft Exchange Rich Text formatting (RTF), such as bold or italic text, but the recipients do not use an e-mail program that can read this format or does not support certain message formats or certain features that are included in the e-mail message.

    To overcome this, try the following:

    1) Using Outlook UI:

    To select a message format do the following:

    1. On the Tools menu, click Options.
    2. On the Mail Format tab, under Message format, in the Compose in this message format list, click HTML or Plain Text.

    2) Using Microsoft Fixit.

    There is a fix available from Microsoft Fixit site regarding the same. Please refer the KB before you download it.

    To fix this problem automatically, first install hotfix 957692 ( http://support.microsoft.com/kb/957692/ ) then click the Fix this problem link. Then click Run in the File Download dialog box, and follow the steps in this wizard.

    Fix this problem

    Microsoft Fix it 50041

    Hope this helps.

  • Le Café Central de DeVa

    Outlook Object Model : Creating simple tasks programmatically using OOM & VBA?


    In this post, we will create the simple Outlook tasks programmatically using Outlook Object Model API & VBA. We do this by using the code snippet:

    '[Code Snippet for creating Simple Tasks using Outlook Object Model API & VBA]
    Private Sub CreateTasks()
        'Declare the Task item
        Dim objTask As TaskItem
        ' Create Outlook Task item
        Set objTask = Application.CreateItem(olTaskItem)
        'Define its values
        objTask.Subject = "Test Item"
        objTask.Body = "Test task item"
        objTask.Importance = olImportanceNormal
        objTask.Status = olTaskNotStarted
        objTask.NoAging = True
        'Save the task
        MsgBox "Task Created"
        ' Clean up.
        Set objTask = Nothing
    End Sub
  • Le Café Central de DeVa

    Exchange Server 2007 - Transport Agent


    Transport Agent - Introduction

    Exchange Server 2007 provides a class library based on the MS.NET Framework that enables you to implement transport agents that programmatically check and take action on transport events. It can be used to change and read the message contents during these events.

    Transport agents enable you to access information about messages that travel through the Edge and Hub Transport servers. They have access to e-mail messages and their contents while the messages move through the transport services.


    • An Exchange Server 2007 has Edge and Hub Transport server roles installed
    • Microsoft.Net 2.0 SDK installed
    • Microsoft Visual Studio .Net 2005 (recommended)

    Used Namespaces 

    • Microsoft.Exchange.Data.Transport            
    • Microsoft.Exchange.Data.Transport.Email    - to make use of common email elements
    • Microsoft.Exchange.Data.Transport.Smtp     - to make use of SMTP receive agent
    • Microsoft.Exchange.Data.Transport.Routing  - to make use of Routing agent

    Referencing Assemblies 

    • When we install Exchange Server 2007 in our system, Exchange Sever installer installs & registers in the global assembly cache (GAC) the assemblies that are required for the development of transport agents.
    • To begin implementing a transport agent, create a reference to the Microsoft.Exchange.Data.Transport assembly in a class library project


    Installing an Agent

    Once you compile the agent to a .dll; you must install and enable the agent on development Exchange server. At Exchange Management Shell(EMS), use the Install-TransportAgent command to install your agent, and the Enable-TransportAgent command to enable your agent.

    For example you can make use of EMS to install and enable an agent named "MyAgeOne" by using a class derived from SmtpReceiveAgentFactory named MyAgentOne.MyAgeOneFactory.

    Install-TransportAgent -Name "MyCustomAgent" -TransportAgentFactory "MyAgeOne.MyAgeOneFactory" -AssemblyPath "C:\myagents\MyAgeOne.dll"

    Enabling an Agent

    For example the agent MyCustomAgent on the server on which the agent is installed:

    Enable-TransportAgent -Name "MyCustomAgent"

  • Le Café Central de DeVa

    My First Preview : Outlook 2010 – Calendars &amp; Inbox


    I want to share couple of relevant information with respective Outlook 2010 CTP with respect to Calendars.

    Outlook has adopted the Ribbon in the Inbox and all throughout Outlook.

    The purpose of the Ribbon in Outlook is to help you become more efficient in getting your work done – be that processing e-mail in your Inbox (Mail Home Tab), managing your Calendar (Calendar Home Tab), or doing work in Tasks (Tasks Home Tab).

    Feature called “Quick Steps” available in Outlook. It is easy-to-use one-click buttons which perform multiple actions at once. Well, you can customize that one also – if you want to make your Outlook sophisticated with the use of this new feature.

    To more learn about this, you can refer the blog post about Introducing Quick Steps by Melissa Macbeth, Program Manager …

    Experience with Conversation. Try with the Conversations experience in Outlook 2010, its an entirely new way to take control of your Inbox.

    Certainly this will be the whole new level by allowing all of your email to look, act, and function as smart groups of related messages.

    Even if you want to slim down the conversation, you can use the same conversations drop-down feature – which helps us to hide the bulkier (even if it is) conversation thread too. If you want to read more on this, you can refer the blog post “What’s up with my Inbox in Outlook 2010 from Michael Affronti, Product Manager and learn how these features were designed to help you get through your email faster than ever before.

    • Easier way of create & manage meetings: If an e-mail conversation gets to a point where a meeting would be more useful, just click Meeting Reply to set up a meeting with the people involved in the conversation. It will copy the content of the e-mail conversation into the meeting request, to help keep you within the context of what has already been discussed, and add the recipients to the invitation.

    Also we can try easily searching the appointments using “Search Contextual Tab”.

    If you want to view the “new schedule view”, you can view multiple calendars horizontally - very effective way to help teams organize meetings. If you want to try read more on this, you can refer the blog post from Rainer Schiller, Outlook Program Manager.

    • Working with Calendar Preview: Now if we want to try something with respect to Meeting requests, we can see what’s new with this version – you can feature with “Calendar Preview”. 

    screenshot of calendar preview in reading pane

    This shows a slice of your calendar in the meeting request allowing you to read the request and check that date on your calendar at the same time – this saves your time by combining two steps – read meeting request & see if you’re available in your calendar

    screenshot of meeting series calendar preview in reading pane with labels for the buttons

    If you want to learn more, you can get detailed blog post from Tom O’Neil on this. Also i request you to try checking the Microsoft Office Outlook team Official blog site to get more update about Outlook 2010 and so on.

    Certainly these are some of my my favorite features in Outlook 2010, and I hope you like it too. I will keep you posted more on this…

  • Le Café Central de DeVa

    Download Office 2010 tool : Office Environment Assessment Tool (OEAT)


    Microsoft released environment scanning tool as download for the Assessment planning. As you know the goal of the assessment planning phase is to determine the techniques that will be used to discover applications and customizations that could be affected by an Office upgrade.This tool (along with documentation) assists a customer in the assessment phase of deployment.

    It identifies:

    • Currently installed applications and installation environment
    • Add-ins currently in use by Office clients
    • Programs that are not registered as add-ins but still interact with Office programs
    • Reports:
      • Environmental assessment (potential upgrade issues)
      • Add-ins assessment–list of third party programs and information about the compatibility of those programs with Microsoft Office 2010

    This tool collects information for the following Office applications:

    • Microsoft Office 97, Microsoft Office 2000, Microsoft Office XP, Microsoft Office 2003, 2007 Microsoft Office system, Microsoft Office 2010

    In addition, you must have the following applications installed:

    • Microsoft .NET Framework 2.0, Microsoft Office Excel 2007 (-OR-) Microsoft Excel 2010
  • Page 5 of 29 (716 items) «34567»