I'm thrilled to be part of Windows NT Magazine's Exchange Administrator newsletter. Despite the amount of information available through Web sites, mailing lists, and newsgroups, the people who install and maintain Microsoft Exchange Server and its clients have long needed their own publication.
I'll do my best to answer questions from Microsoft Outlook users and administrators. If you have a question you'd like me to cover in this column, please write me at [email protected]
One of my goals for this monthly column is to give you ideas for projects you can implement in an hour or two—without a lot of programming—through public folders and Outlook forms. At the end of this column, I'll talk about how to view calendars for a group of people.
Can I recover information from an offline store (OST) file?
This question comes up frequently, either when someone accidentally deletes a mailbox from the Exchange Server or a server problem causes the loss of a mailbox. No one wants to tell an Outlook user that the 700 names in the Contacts folder are unrecoverable, nor do most administrators want to spend hours restoring a mailbox from a backup. The OST file seems to be a way to retrieve the data from the lost mailbox, even though Microsoft intended the OST for offline storage, not as a backup file.
Unfortunately, many people wait until too late to ask about using the OST to recover a mailbox. The crucial point is that you can recover data from an OST file only if you have not logged on to a new Exchange Server mailbox. Logging on to a new mailbox alters the profile that includes the OST file. Even if the new mailbox has the same name as the original mailbox, from the standpoint of Exchange security, the mailbox is different.
Think about it: If the OST were not tied securely to the server mailbox, you could copy the OST file to any other computer and read all the user's messages, contacts, and appointments there. To keep the OST secure, Exchange and Outlook store a key derived from the mailbox's unique entry ID as part of the user's profile. If your profile doesn't point to that particular mailbox, you can't unlock the OST.
Here's what usually happens when someone accidentally deletes a mailbox: The user can't log on to the server. The administrator diagnoses the problem as a missing or damaged mailbox and creates a new mailbox for the user, using the same username. The user logs on to the new mailbox and gets an error message saying that the OST folders file cannot be used with the new mailbox. After that logon, you can't return the profile to its previous state and then use the OST.
If you want to recover the OST file after the new mailbox is created, instead of the usual scenario, follow these steps:
- Use the Mail and Fax (or Mail) applet in Control Panel to change the old profile so the user can start Outlook in Work offline mode. In the properties for the Microsoft Exchange Server service, on the General tab, select Choose the Connection Type When Starting.
- Use the old profile to start Outlook, and at the prompt, choose Work offline.
- Choose File, Import and Export, then Export to a personal folder file (.pst). Follow the steps in the Export Personal Folders wizard to export the entire mailbox, including subfolders, to a .pst file.
- Exit and log off from Outlook.
- Back in Control Panel, use the Mail and Fax (or Mail) applet to create a new profile to access the new mailbox. On the General tab in the properties for the Microsoft Exchange Server service, enter the server name and new mailbox name. On the Advanced tab, click Offline Folder File Settings, and enter a new filename (e.g., C:\\winnt\new.ost) to create a new offline folders file.
- Start Outlook in Online mode to connect to the new mailbox, and then synchronize to activate the new OST file.
You can now use the File, Import and Export command to import the contents of the .pst file into the new mailbox.
Is it possible to hyperlink to an Outlook message from a Microsoft Excel cell?
Yes, you can link to any Outlook item or folder from any Office 97 application or even from a Web page. Table 1 shows some examples of the syntax to use with the Insert, Hyperlink command in Word or Excel.
In most cases, you can just type the link into your document, and Word or Excel will automatically handle it as a hyperlink because of the Outlook: protocol prefix. For an item in a folder, specify the item with a tilde (~), followed by the value in the item's Subject field; the last line in Table 1 shows this syntax. Remember that for contacts, the Subject is not necessarily the same as the File as field; the Subject for a contact defaults to First Name plus Last Name.
If you want to put a hyperlink in an Outlook message or other item, enclose the hyperlink in angle brackets:
To add an Outlook hyperlink to a Web page on your intranet, replace any spaces with %20. Examples:
<A HREF="Outlook:Sent%20Items"> Sent Items</A> <A HREF="outlook:contacts/~Sue %20Mosher">Sue Mosher</A>
Links to Outlook items have one significant limitation: If you don't see a folder in the Folder List, you can't open it with an Outlook hyperlink. In particular, you can't use hyperlinks to open other users' folders that are available to you through the File, Open Special Folder, Exchange Server Folder command. For an easy alternative technique for quickly opening your colleagues' folders, see Method 2 in the answer to the question "How can users see what everyone in the office has scheduled for today?" on page 7 in this month's column.
I need to keep track of two Inbox folders—mine and my boss'—but I get new message notifications for only my folder. How can I configure Outlook to notify me of the boss' mail too?
You're probably opening the boss' Inbox through the Open Special Folder, Exchange Server Folder command on the File menu. That approach works, but it has a serious limitation: You can't put a folder you open with that method on the Outlook Bar, which is left of the Outlook window.
Try this technique instead: Use Tools, Services to bring up the properties for the Microsoft Exchange Server service in your profile. On the Advanced tab, click Add, and add your boss' mailbox. Click OK until you return to Outlook.
Adding this second mailbox to your profile has two advantages. One is that you can see the mailbox in the Folder List, so you don't need to use Open Special Folder every time. But the big advantage is that you can add that folder to the Outlook Bar. Once the folder is in the Outlook Bar, it will always display the number of unread messages.
To add a folder to the Outlook Bar, right-click its name either in the Folder List or in the Folder Banner above the list of messages. Then choose Add to Outlook Bar. You can then right-click the folder shortcut in the Outlook Bar to change its name, perhaps from Inbox to Boss Inbox. Drag the shortcut to another location in the current group or even to a different group.
How can I change the default Outlook form people use to create a new message and display inbound messages? I want to add some custom fields.
Sorry, but you're out of luck if you're looking for a quick configuration option. Outlook does not let you change the default message form. However, depending on your goal, another technique might work.
If you simply want to send messages with a different form, create the form by opening a new, blank message. Then use Tools, Design Outlook Form to modify it. Next, use either File, Save As to save the form as a template, or select File, Publish Form As to publish it as a form. To start a message with your new form, select the Choose Template or Choose Form command on the Compose menu.
I'd like to be able to change the form for incoming messages to a form that includes a collection of standard replies. In Outlook terms, this capability means changing the MessageClass property of the form. One possible approach for changing the MessageClass automatically is to use Visual Basic (VB) to write an Inbox Agent to check your mailbox every few minutes and convert incoming messages from the default IPM.Note form to a different form.
The Microsoft Knowledge Base has a helpful article, "HOWTO: Write a VB Active Messaging Inbox Agent" (http://support.microsoft.com/ support/kb/articles/q172/7/41.asp), that shows you how to connect to a mailbox and cycle through new messages in the Inbox. To understand the MessageClass property, see the Knowledge Base article "OL97: How to Update Existing Items to Use a New Custom Form" (http://support.microsoft.com/support/ kb/articles/q170/3/01.asp).
How do I send a message to a group of people in my Contacts folder?
The Exchange Personal Address Book lets you set up personal distribution lists. Outlook doesn't have an equivalent feature, but it offers a powerful filter function for easily creating mailing lists on the fly from your Contacts folder.
The Categories field is particularly useful for designing these ad hoc mailing lists, because you can apply one or more categories to each contact record. For example, you can categorize your contacts as Personal or Business or both. Then, use the Filter, More Choices command on the View menu to filter one category or the other. Use Edit, Select All to select all the filtered contacts. Then choose Contact, New Message to Contact, and you'll have a message addressed to all the contacts you filtered.
If you don't want the recipients to see one another's addresses, just cut and paste them from the To field to the Bcc field. In the open message, use View, Bcc Field to display the Bcc box if you don't usually use it.
Why doesn't the AutoSignature migrate when a user moves to a new PC?
Most Outlook settings reside in the Windows user profile, so they move with a user if you have set up Windows roaming profiles. A few files reside by default in the Windows folder on the PC. The files are
- Views.dat (system file views)
- Outlprnt (print style settings)
- The .fav file for each profile's Outlook Bar settings
- The .rtf file for each profile's AutoSignature
Chapter 6 in the Microsoft Outlook Administrator's Guide describes a five-step process for moving the first three files to the user's home directory, then editing the Registry to point to that new location. But Outlook offers no procedure for relocating the AutoSignature .rtf file so that it roams with the user.
I have a couple of ideas for getting around this problem. At the least, use a unique profile name for each user. That way, when Kim logs on using a profile named Kim and creates an AutoSignature, Outlook creates a Kim.rtf file on the local drive. The next time Kim logs on, the Kim.rtf file will be waiting. Each time the user logs on to a different PC for the first time, the user will need to create the AutoSignature locally. But you can easily copy the signature from a previously sent message and save it again, so that you can use it on the new PC.
If you use WordMail, you can use another method to relocate your AutoSignature. By default, Outlook stores the AutoSignature as an AutoText entry named SIGNATURE in the Normal.dot global template. Open Microsoft Word, and choose Tools, Options, File Locations. Make sure that the User templates path points to a location in the user's home directory. That way, the Normal.dot template and all its settings will follow the user.
How can users see what everyone in the office has scheduled for today?
Not surprisingly, many people expect to find a group calendar function in Outlook that lets you see what selected users are doing today. Believe it or not, Outlook doesn't have that feature built in. Outlook is so flexible, though, that users have devised quite a few ingenious solutions. Some are easy enough to implement in less than an hour.
Method 1: Public folder group calendar. Adam Haeder ([email protected]) with the AIM Institute suggested this method on the microsoft.public.outlook97. configuration newsgroup. Users save appointments to a public Calendar folder, which automatically mails their appointments back to them. A rule on the client moves those appointments into the user's private Calendar folder. To use the Rules feature, you need to install the Rules Wizard on each client.
To prepare the public folder, create a folder for Calendar items, granting Author permission to all users. To forward each posting back to the originator, set up Folder Assistant rules with Leave message intact set. (This method won't work with Exchange Server 4.0 because that version doesn't let you forward messages intact.)
To set up each user, you need to log on to each user's mailbox. Use the Rules Wizard to add a rule that states:
Apply this rule after the message arrives from <username> and uses the 'Appointment' form move it to the 'Calendar' folder
and in which <username> is the specific user whose mailbox you're working with.
Users make changes to appointments in the Calendar public folder and send an update to all invitees. When people open the message with the update or cancellation, they can update their personal calendar.
Method 2: Public folder links to user calendars. If you have too many users, putting all their appointments on one shared calendar can display too much information in one place. Another technique is to make opening each user's calendar easier.
Start with the user mailboxes. Make sure that each user grants appropriate permissions (at least Reviewer permission) for the Calendar folder. Have each user drag the Calendar folder to the desktop, creating a Calendar.xnk shortcut; then rename the shortcut to include the user's name (e.g., John's Calendar.xnk or—if you want the calendars sorted in Last Name, First Name order—Mosher, Sue.xnk).
Set up a public folder. Collect all the .xnk shortcuts created from the user Calendar folders, and move them into the public folder. Grant Reviewer rights to everyone.
Users can now use the shortcuts in the public folder to locate their colleagues calendars, rather than go through the File, Open Special Folder, Exchange Server Folder command. You can make a public folder in this way for each working team.
Method 3: Modify the meeting request form. If you're interested mainly in people's availability, rather than the details of their schedule, you can create a new form to show you who's free and who's busy. (This method might also be good for keeping track of available conference rooms and other resources.)
Here's a step-by-step guide to creating this form:
- Choose File, New, Appointment.
- On the Appointment form, under Subject, type in Staff Availability or Conference Room Availability, or whatever you want the title of the form to be.
- Choose View, Toolbars, Standard to hide the toolbar.
- Choose Tools, Design Outlook Form.
- Choose Form, Display This Page to hide the Appointment tab. The final form will display only the Meeting Planner page.
- Switch to the Meeting Planner page, and use the Invite Others button to add the people or resources you want to track with this form.
- Switch to the (Properties) page. Under Form Caption, enter the same subject that you used in Step 2. You will use this subject for a Calendar menu command to display the form. You might also want to enter Contact, Description, and Version information or change the icons.
- Choose Form, View Code. Then you need to add a small amount of Visual Basic Script (VBScript) code to disable the Send, Forward, and Save actions and to make the availability viewer look at the current day whenever the viewer is opened.
- Enter the following procedures in the Script Editor:
Function Item_Open() Item.Start = Now() Item.End = Now() End Function Function Item_Send() Item_Send = False End Function Function Item_Forward (ByVal ForwardItem) Item_Forward = False End Function Function Item_Write() Item_Write = False End Function
- Close the Script Editor.
- You can now either save the form as an .oft template that you can distribute to users, or publish it to the Organization Forms library (or both). You can publish a version that monitors conference room status to Organization Forms and then send users an .oft file that they can modify and publish to their local Calendar folder to monitor the available time of the people they work with.
If you send users an .oft file, include these instructions for installing it in the Calendar folder:
- Double-click the .oft file to open it. When prompted, choose Disable Macros.
- Click Invite Others, and select the users whose availability you want to monitor with this form.
- When All Attendees displays all the users you want to monitor, choose File, Publish Form As.
- Give the form a name, select Publish In, and select your Calendar folder.
- Click the Publish button to publish this form in the Calendar folder.
- To use the form, choose Calendar, New Team Availability (or whatever name you chose for the form in Step 4). When the form opens, move to the day and time you want to view, or click the AutoPick button to move to the schedule for today.
Method 4: Use Sintas Exchange Central. Sintas Exchange Central (http://www.sintas.dk/uksec.htm) is an Exchange Server and Outlook add-on designed not just to show a unified calendar for a group of people, but also to provide useful functions for receptionists and others who manage appointments, tasks, and messages for other people.
Method 5: Write your own. You can use VB and the Outlook Object Model to write a group calendar viewer. Writing a group calendar viewer is not a 1-hour project, of course, so you will have to explore this project on your own.