Installing the Outlook Help Desk 2.4 Event Sink

For Exchange 2000

 

Crow Canyon Systems, Inc.

www.crowcanyon.com

support@crowcanyon.com

 

Overview

Exchange 2000 introduced the use of Event Sinks to replace the Agents and scripts that ran on folders as part of the Microsoft Exchange Event Service in Exchange 5.5. These Event Sinks react to Web Storage System events, such as the addition or deletion of a message in a folder. The Event Sinks are compiled DLLs installed as a COM+ Components on the Exchange Server. They are faster and more efficient than folder Agents. We provide “OHD242ES.DLL” to convert emails to Help Desk tickets as part of the Outlook Help Desk program.

 

There are five steps to installing the Event Sink:

A.      Choose or set up User Account for running Event Sinks

B.      Install and register the DLL on the Exchange 2000 Server

C.      Create a COM+ Application on the Exchange 2000 Server

D.      Add Components to the COM+ Application

E.      Add an Event Registration to the Help Desk folder

 

 

A. Set up User Account and Permissions for running Event Sinks

Exchange 2000 Event Sinks run out-of-process and therefore some form of authentication is required before the code in the DLL can execute. For the Event Sink to run correctly, you must specify a user account under whose security context the code will execute. This account is specified when setting up the Component in Step C below.

The code will always run with the permissions of this user account, regardless of who wrote the DLL or who installed it. Anything the account can do, the code can do, and conversely, anything the account is denied from doing, the code will be denied from doing. The account needs:

To explain:

  1. EDITOR: When an email is sent to the Help Desk folder, the DLL “edits” the email to create a ticket.
  2. DOMAIN ADMINS: When the email is converted to a ticket, a notification message is sent to the names in the Automatic Notification list in the Five Utilities form in the Utilities folder. The DLL takes the FROM address of the email and puts it into the FROM of the notification message. The notification message will be seen as from the person who sent in the email. The user account of the Event Sink therefore needs the Send As permission for any mailbox in the Exchange organization. This is granted by default to members of the Domain Admins group.

 

Accepting messages from outside the organization

If you want to convert emails from addresses outside the Exchange organization, the Help Desk folder must accept messages from the outside. Give Anonymous at least Contributor permissions to the Help Desk folder to allow the folder to accept emails from external users. Make sure it has the email address you want. In Exchange System Manager, find the Help Desk folder under Folders/Public Folders, go to Properties and check the E-mail Addresses tab for the SMTP address.

 

B. Install and Register the DLL on the Exchange 2000 Server

Place the DLL in a directory on the Exchange 2000 Server. We recommend the “\Program Files/Exchsrvr/Bin” directory on your system drive, but this is not a requirement. It needs to go in a directory with sufficient security so it will not be inadvertently deleted and so that other users or administrators can recognize it as a DLL that system is using. Once the DLL is copied to the server, it needs to be registered using Regsvr32. This utility comes with Windows 2000 Server and should already be in the System32 directory.

To use Regsvr32, go to Start, Run, then type this in the box (substituting in the full path to the DLL for “YourPath”):

 

regsvr32 “YourPath\OHD242ES.DLL”

 

Regsvr32 returns a success message if the DLL is registered successfully.

 

 

C. Creating a COM+ Application on the Exchange 2000 Server

  1. Go to Start/Programs/Administrative Tools/Component Services. Expand Component Services and then expand COM+ Applications. A screen similar to this comes up:

 

 

  1. Right-click the COM+  Applications folder and click New. On the shortcut menu, click Application. This welcome screen comes up. Click Next:

 

 

  1. On the “Install or Create a New Application” page, click the button to the left of “Create an empty application”.

 

 

 

  1. On the “Create Empty Application” page, enter “Outlook Help Desk Event Sink” for the name and select Server Application for the type. Click Next.

 

 

  1. On the “Set Application Identity” page, select “This user:” and Browse for the appropriate account for running Event Sinks, along with the password.

 

 

  1. Select “Finish” on the last Thank you screen and this part is all done.

 

 

D. Add Components to the COM+ Application

With the new COM+ application created, you can now add components to it.

 

  1. Go once again to the Component Services console, expand “Component Services”, then “COM+ Applications”, then “Outlook Help Desk Event Sink”. Click the “Components” folder under Outlook Help Desk Event Sink to open it.

 

 

  1. Right-click the “Components” folder, then click “New”. On the Welcome screen, click Next.

 

 

 

  1. On the “Import or Install a Component”, choose “Install new component(s)”

 

 

  1. On the “Install new components” page, use Add to find the OHD242ES.DLL.

 

 

  1.  The wizard analyzes the DLL and lists the Components found. Click Next.

 

 

  1. Click Finish on the final Welcome page.

 

 

 

  1. The DLL components should now be listed in the Components folder.

 

 

 

E. Creating an Event Registration Item in the Public Folder

We use RegEvent.vbs to register Event Sinks in the Help Desk folder. For the nitty-gritty details on using RegEvent.vbs see this link. You need to have RegEvent.vbs, which is included in the Outlook Help Desk package (it is also in the Exchange Server SP1, the Exchange SDK and other places).

 

To use RegEvent.vbs, you use Cscript on the command line. The syntax to add an Event Registration to the Help Desk folder is as follows (all on one line):

 

Cscript “path\RegEvent.vbs” Add OnSave OHD242.AsyncEvents “file://./backofficestorage/domain/public folders/help desk/regevent.eml

 

Explanation of parts in bold:

            path\RegEvent.vbs” = the full path to the RegEvent.vbs   

domain = domain needs to be your email domain. This is often also your Active Directory domain, but not always.

help desk = you must put in the correct path to the “Help Desk” folder. The above example assumes Help Desk is right under the All Public Folders. If not, you must put in each folder level, such as “file://./backofficestorage/domain/public folders/IT Support/help desk/regevent.eml”.

 

Here is an example with RegEvent in the root of C drive, a domain of singleflower.com, and the Help Desk right under All Public Folders (all on one line):

 

Cscript “C:\RegEvent.vbs” Add OnSave OHD242.AsyncEvents “file://./backofficestorage/singleflower.com/public folders/help desk/regevent.eml”

 

To see what Event Registrations are on the Folder, use “Enum” instead of “Add” as follows (all on one line):

Cscript “C:\RegEvent.vbs” Enum “file://./backofficestorage/singleflower.com/public folders/help desk”

 

To delete all Event Registrations on the folder, use this (all on one line):

Cscript “C:\RegEvent.vbs” Delete “file://./backofficestorage/singleflower.com/public folders/help desk”

 

 

Troubleshooting Event Registration

 

“Error Opening Connection”

This means the URL (the part that starts with file://) is wrong. This is usually the domain portion. Try another domain. It should be the email domain of your Exchange server, not the Active Directory domain. See also Q286336 if you have subdomains.

 

“Error Commiting Transaction : -2147024891 Access is denied.”

This is most likely caused by the account you are using does not have Owner rights to the folder. The account that you are logged into when running regevent.vbs needs to have an associated mailbox that has Owner rights on the folder.