Customizing the Outlook Today Page
[From https://www.angelfire.com/film/tcphoto/other/OutToday.html]
Customizing the Outlook Today Page
Microsoft Outlook® 2000 provides a unique view for displaying appointments, tasks, and other information in the form of a Web page. You can customize the Outlook Today page for your organization, or for individuals or groups within your organization, to display the information most relevant to them.
In this document
· Giving Users the Most Important Information First
· Adding Custom Content and Functionality
· Choosing a Distribution Method
· How to Publish Outlook Today as an HTM File
· How to Publish Outlook Today in a DLL File
· Addressing Browser Issues in Outlook Today
· How to Disable Outlook Today
Giving Users the Most Important Information First
Outlook Today takes advantage of a familiar Web page format to display timely information from users' most important folders, including the following:
· Upcoming appointments
· Tasks that are due
· Number of unread messages in e-mail folders
Each item on the Outlook Today page is a hyperlink to the corresponding Outlook item or folder, so users can easily gain access to more specific information about their most pressing engagements.
Because Outlook Today displays information in HTML, developers and solution providers can perform more advanced customizations. You can also add the information unique to your organization or department. For example:
· Create a standard Outlook Today page that shows a bulletin of corporate news and a stock ticker tied to real-time market data taken from the Web.
· Include information from account tracking or financial management software and create an Outlook Today page that is targeted to sales and marketing employees.
Note Users can also customize the appearance of the Outlook Today page by clicking the Customize Outlook Today button on the Outlook Today page. For example, users can alter the way the task list is sorted.
New and improved for Outlook 2000
In Outlook 2000, Outlook Today has updated appearance, more control over which folders are shown, and faster load performance and databinding speed for users who have Microsoft Internet Explorer 5. In addition, Outlook Today has undergone a few noteworthy changes to its security model.
Displaying folders in the Messages section
Outlook Today now allows users to choose which folders to show in the Messages section. Users can make this choice from the Customize Outlook Today page, but administrators can also can preconfigure the folders by changing settings in the Microsoft Windows® registry. These folders are recorded as string values in the following subkey:
HKEY_CURRENT_USER\Software\Microsoft\Office\9.0\Outlook
\Today\Folders
To add a new folder to your page, you add a numbered value entry and set its value data to the folder’s URL. For example, to include the Inbox, the Drafts folder, the Outbox, and a Group Contacts public folder, you might set the following value entries. (All of these values take the String data type.)
Value entry |
Value data |
0 |
"inbox" |
1 |
"drafts" |
2 |
"outbox" |
3 |
"\\public folders\favorites\group contacts” |
Choosing an Outlook Today style
Outlook Today uses the Url string value entry in the
Windows registry to determine which page to display. This setting is located in
the HKEY_CURRENT_USER\Software\Microsoft\Office\9.0
\Outlook\Today subkey. By modifying this setting, administrators can point
users’ computers to a customized version of Outlook Today.
Alternatively, Outlook 2000 allows users to choose one of five styles for the default Outlook Today page. Outlook records which style is selected in the CustomUrl value entry. If no value is specified for the Url entry, Outlook uses the CustomUrl setting. (The CustomUrl value entries also take the String data type.)
Note The Url and CustomUrl value entry names are case-sensitive. Make sure you type Url and CustomUrl precisely as shown.
In the following example, Outlook 2000 displays the Outlook2.htm page (single-column style) that ships with Outlook 2000.
Value entry |
Value data |
Url |
(value not set) |
CustomUrl |
"outlook2.htm" |
Any value specified for the Url entry overrides the CustomUrl setting. In the following example, Outlook displays the Outlook.htm page (default 3-column style) and ignores the CustomUrl setting.
Value entry |
Value data |
Url |
"Res://C:\Program Files\Microsoft Office\Office |
CustomUrl |
"outlook2.htm" |
Showing information from other Calendar and Tasks folders
If you want to show appointments from a Calendar or Tasks folder other than your main Calendar or Tasks folder, you can specify a new folder path for the Outlook Today databinding controls.
Taking advantage of an updated security model
In Outlook 98, there are no security safeguards for links on the Outlook Today page that connect to an untrusted site. To take advantage of Web browser security, you must configure these links on the Outlook Today page to open a new browser window.
In Outlook 2000, however, browsing security is disabled only when Outlook Today displays its default page. When the user clicks a link and navigates to any other page within the Outlook Today view, Outlook activates browser security. This improvement allows you to author your links so that users can navigate to other pages safely, all within the Outlook Today view.
For example, if the Url value entry is set to http://www.microsoft.com, then security is disabled in the Outlook Today view when the Microsoft home page is displayed. However, when a user clicks a link to another page, Outlook Today activates browsing security.
Note If no Url value is set, but a CustomUrl value is defined, then security is still disabled until the user clicks a link to a different page.
If your default page is a frameset, then browsing security is disabled for as long as that frameset is the parent page in the Outlook Today view. Security is not enabled when the user navigates to one of the subframes. In this scenario, configure your links to navigate within the parent Outlook Today frame, rather than within a subframe.
Fixing common browser-related display errors
In Outlook 98, Outlook Today displays in a subset of the Internet Explorer browser. This feature can generate display errors when you use framesets, iframes, forms, or tabular data controls. In Outlook 2000, however, you can use the full version of Internet Explorer for Outlook Today, thereby eliminating these errors. For more information, see "Addressing Browser Issues in Outlook Today" later in this document.
Limitations of Outlook Today customizations
When you modify the Outlook Today page, keep in mind the following limitations.
Summary view only Outlook Today does not replace the Inbox, Calendar, or Tasks -- nor is Outlook Today intended to replace a Web browser. Consider Outlook Today a starting point for information delivery.
Confined to Outlook You cannot view the Outlook Today page within a Web browser, or add it as an Active Desktop® item. The Outlook Today data tables function only when the page is hosted within the Outlook window.
Potential for reduced performance Modifying the Outlook Today page can result in reduced performance when information is retrieved and rendered on the page.
Future changes Outlook Today is expected to change with future releases of the product. Therefore, any modifications that you make for Outlook 2000 might require additional modifications in future versions.
Adding Custom Content and Functionality
You can modify the appearance and functionality of the Outlook Today page in the following ways:
· Add text, links, and images.
· Change styles for backgrounds, fonts, and other display elements.
· Show information from different Calendar and Tasks folders.
· Add ActiveX components.
· Add script.
· Use framesets or iframes.
Outlook Today also offers some standard customization options for the Calendar, Messages, and Tasks data tables on the Customize Outlook Today page. However, these are the only customizations that you can make to the data tables. You cannot sort or filter the tables by adding script or by changing properties of the databinding objects.
Adding text and images
The Outlook Today page is coded with standard HTML tags and cascading style sheet (CSS) properties. You can add text and images to Outlook Today just as you can on any other HTML page.
The default Outlook Today page that comes with Outlook 2000 uses the res:// protocol to point to its images. If you supply your own image files, you can use any of the following protocols:
· http://
For example, http://Images/myimage.gif
· file://
For example, file://C:\My Documents\myimage.gif
· res://
For example, res://C:\My
Documents\outlwvw_custom.dll
/myimage.gif
Adding links to Web pages
Outlook 2000 offers an enhanced security model that activates browser security as soon as the user navigates away from the default URL. This security feature allows you to add links that display pages within the Outlook Today view, rather than opening a new browser window.
To link to another Web page within Outlook Today, just use a standard HTML link. For example:
<a href="http://www.untrusted.com”>Untrusted</a>
To open a Web page in a new browser window, use the HTML target property with either the _new or _blank value. The following code shows the target property with the _new value:
<a href="http://www.untrusted.com”
target=”_new”>Untrusted</a>
If any user views your customized Outlook Today page in Outlook 98, you must take steps to ensure proper security. To link to an external Web site, do not use a simple HTML hyperlink. Instead, use the following HTML code to open the link in a new browser window, which allows you to take advantage of browser security:
<a href="" onclick="window.open
('http://www.untrusted.com','noname');
window.event.returnValue=false;">Untrusted Site</a>
Adding links to Outlook folders and items
You can add links to the Outlook Today page to give users quick access to Outlook folders, Microsoft Exchange Server public folders, or any Outlook item based on its subject or EntryID.
The EntryID is a property of each Outlook item and uniquely identifies it. You need the EntryID when you use script in your page to gain access to the Outlook object model. From the object model, you can get the EntryID for an item, and then programmatically insert a link to that item into your Outlook Today page.
Links in Internet Explorer 5
If your users have Internet Explorer 5 installed, you can use the following syntax to link to other Outlook folders and items.
To link to this item |
Use this HTML code |
Any Outlook folder in your default store |
<a href="outlook:<folder path>">Folder</a For example: <a href="outlook:Inbox">Inbox</a> <a href="outlook:Inbox"/Saved Mail”>Saved Mail</a> |
Any public or private folder outside your default store |
<a href="outlook://<store name>/<folder path>"Folder</a> For example: <a href="outlook://Public Folders/Favorites">Favorites</a> |
An item based on its subject |
<a href="outlook:<folder path>/~<item subject>">Item</a> For example: <a href="outlook:Inbox/~hello world">Item</a> |
An item based on its EntryID |
<a href="outlook:<EntryID>">Item</a> |
Links in Internet Explorer 4.0
If your users have Internet Explorer 4.0 installed, then you must use the following syntax to link to other Outlook folders and items.
To link to this item |
Use this HTML code |
Local Outlook folder |
<a
href="" onclick="window.location= For example: <a
href="" onclick="window.location= |
Microsoft Exchange Server public folder |
<a
href="" onclick="window.location='outlook: For example: <a
href="" onclick="window.location='outlook: |
An item based on its subject |
<a
href="" onclick="window.location= For example: <a
href="" onclick="window.location= |
An item based on its EntryID |
<a href="outlook:<EntryID>">Item</a> |
Changing font styles
You can change the styles of most fonts on the Outlook Today page by modifying CSS definitions at the top of the page. For example, the following lines define the text styles for a completed task, an important item, and the date:
.TskDone {font-size:8pt; color:gray; text-decoration:
line-through; }
.itemImportant {color:red}
.date {font-size:11pt;font-family:arial;text-decoration:
none;
font-style:normal;color:white;font-weight:bold; }
Note In some cases, these styles are referenced directly in later lines of the page. But in other cases, such as TskDone and itemImportant, the lines that reference these styles are dynamically generated within the three main databinding tables (Calendar, Messages, and Tasks), and you never see them used literally in the HTML code.
Showing different Calendar and Tasks folders
By default, the Calendar and Tasks databinding tables show the information from your main Calendar and Tasks folders. However, you can point the databinding controls at other Calendar or Tasks folders. Just add a <param> tag to the control object that specifies which folder path to use. For example:
<object ID="CalList" CLASSID="CLSID:0468C085-CA5B-11D0-AF08-00609797F0E0">
<param NAME="Module" VALUE="Calendar">
<param NAME="Path" VALUE="\\Public Folders\Favorites\Team Calendar">
</object>
You can specify the absolute path this way:
<param NAME="Path" VALUE="\\Personal Folders\My Projects\Crandall Project\Calendar">
Or, if the desired folder is in your default store (the store that your mail is delivered to), you can omit the name of the store in your path:
<param NAME="Path" VALUE="My Projects\Crandall Project\Calendar">
Note You can specify a new folder path only in Outlook 2000.
Adding ActiveX controls
You can add ActiveX controls to the Outlook Today page, just as you can on any other HTML page. However, the standard Internet Explorer security safeguards for ActiveX controls have been disabled in Outlook Today. For this reason, you must verify the trustworthiness of the control before adding it to your page.
Adding script
With script, you can take full advantage of the Outlook object model. Be aware, however, that the more script you add, the slower your page loads.
The following sample JavaScript exposes the Outlook Application object, and uses that object to open the Inbox in a new Outlook window:
<html>
<script language=JavaScript>
var theApp = window.external.OutlookApplication
var theOLNS = theApp.GetNameSpace("MAPI")
var myInbox = theOLNS.GetDefaultFolder(6) //olFolderInbox
myInbox.Display()
</script>
</html>
For optimal performance, avoid any scripting that occurs at load time. Load-time script requires that the Internet Explorer scripting engine be loaded, which can delay the appearance of your data by several seconds on some computers. The default Outlook Today page explicitly defers all of its script (by using the defer property on the script tag) until the page is fully loaded.
To allow users to reconfigure the layout of the page, however, you can use load-time script judiciously. For example, you might want to give your users the ability to show or hide sections of the page. In this case, you can use script at load time to retrieve the user’s settings and show or hide the designated sections.
Note You can also give users control over their configuration without requiring any client-side script by using server-side scripting—that is, by publishing an Active Server Page (ASP) page on a Web server.
Using framesets or iframes
If your customized page uses <frameset> or <iframe> tags, then you might encounter certain display errors in Outlook Today that do not appear when you view the page in the full version of Internet Explorer. For example:
· A link with the TARGET="_blank" property opens within the frame in Outlook Today, instead of opening a new browser window.
· References to other frames in the Outlook Today page do not function properly.
For information about resolving these display errors, see "Addressing Browser Issues in Outlook Today" later in this document.
Related links
For more information about how to create your own databinding
controls, see "Data Binding" in the MSDN Online Web Workshop at
http://msdn.microsoft.com/workshop
/c-frame.htm#/workshop/author/databind/data_binding.asp.
For more information about dynamic HTML controls, see
"DHTML, HTML, & CSS" in the MSDN Online Web Workshop at
http://msdn.microsoft.com/workshop
/c-frame.htm#/workshop/author/default.asp.
Choosing a Distribution Method
Before you customize Outlook Today, you must decide how to distribute the new Outlook Today page. The distribution method you choose determines how you customize the page.
There are three ways to distribute a customized Outlook Today page to users:
· Web server (http:// protocol)
· Local dynamic link library (DLL) file (res:// protocol)
· Network DLL file (res:// protocol)
Distributing from a Web server
Because Outlook Today is based on HTML code, you can publish your customized Outlook Today page as an HTM or ASP file on a personal or corporate Web server.
Advantages Using a Web server makes your custom Outlook Today page easy to distribute and update. You publish the page on the corporate intranet, and set a single registry value on users’ computers to point Outlook Today to your new URL. To update the page, you just publish it again.
In addition, ASP pages allow the page designer to give users more flexibility to customize their Outlook Today pages without using client-side scripting. (Client-side scripting can slow Outlook Today start-up performance.)
Potential drawbacks When you use a Web server to distribute your customized Outlook Today page, Outlook cannot take advantage of the performance enhancements that come with a DLL file. In addition, pages on the network typically load more slowly than pages stored locally on the user’s computer.
For more information about customizing the Outlook Today page as an HTM or ASP file, see "How to Publish Outlook Today as an HTM File" later in this document.
Distributing a local DLL file
You can save your customized Outlook Today page in a DLL file and use it to replace the default Outlook Today DLL file on users’ computers.
Advantages Saving your Outlook Today page in a DLL allows Outlook to take advantage of quicker load times.
Potential drawbacks This method makes distributing and updating your customized Outlook Today page more complicated. The modified DLL file (and any subsequent updates) must be copied to each user’s computer. And to modify the DLL file, you must use the Microsoft Visual Studio® development system.
For more information about customizing the Outlook Today page by using a DLL file, see "How to Publish Outlook Today as a DLL File" later in this document.
Distributing a network DLL file
If you are not daunted by unorthodox methods, you can save the DLL file to a network share, and then set a single registry value on users’ computers to point their Outlook Today URL to this DLL.
Advantages This method combines ease of distribution with the improved performance of a DLL file. To update the page for all users, you just update the DLL.
Potential drawbacks When you store the DLL on a network file share, file access is slower than it is when the DLL is stored on users’ local hard drives.
For more information about customizing the Outlook Today page by using a DLL file, see "How to Publish Outlook Today as a DLL File" later in this document.
Selecting the best distribution method
A customized Outlook Today page can affect performance of client computers. This performance impact varies depending on your distribution method.
Better performance with a DLL file
When you save your page as a DLL file, there is no performance degradation between your customized page and the original page. Saving the page as a DLL allows you to take advantage of the same performance enhancements that the original page uses.
By contrast, when you save your page as an HTM or ASP file, Outlook data (such as Calendar and Task items) appear line by line as the page loads. (In the original page, this data appears almost immediately.) After the customized Outlook Today page is loaded in the view, however, there is no performance difference between your customized page and the original page.
Other factors that affect performance
Performance also depends on an additional set of factors, including the following:
Number of page elements With any Web page, the more elements that you add, such as images, script, or ActiveX controls, the longer the page takes to load.
Mail support Using a Corporate/Workgroup configuration with Microsoft Exchange Server can increase load time because constructing the page requires many calls to the server.
Number of stored items The more items in your store, the longer it takes to display the page. For example, on a Pentium 200 with 32 MB of RAM, and with a moderate store size, the performance difference between an Internet Only configuration and a Corporate/Workgroup configuration is approximately 3 seconds.
How to Publish Outlook Today as an HTM File
You can customize the Outlook Today page and publish your version as an HTM file on a Web server, hard drive, or network file share. You need a working knowledge of HTML and the Windows registry, but you do not need the tools and knowledge required to edit a custom DLL file.
Using HTML to customize the Outlook Today page involves the following steps:
1. Copy Outlook Today source files.
2. Add correct settings to your Windows registry.
3. Modify your new Outlook Today page.
Note You can also publish your customized Outlook Today page as an ASP file on a Web server. This alternative requires a working knowledge of Active Server Pages.
Copy Outlook Today source files
The Outlook Today view includes both the Outlook Today page and the Customize Outlook Today page. To customize Outlook Today, you need two text source files — Outlook.htm and Custom.htm. (Outlook.htm is the Outlook Today page, and Custom.htm is the page users see when they click Customize Outlook Today.)You also need the source files for the images in Outlook Today.
Toolbox The Office Resource
Kit includes sample versions of Outlook.htm and Custom.htm, including
supporting image files. You can customize these files and use them in place of
the Outlook.htm and Custom.htm files stored on your hard drive. Download
OutExmpl.exe from the Office Resource Kit Toolbox at http://www.microsoft.com/office/ork/2000/appndx
/toolbox.htm.
The OutExmple.exe download extracts the following files to your computer.
File name |
Description |
· |
|
Outlook.htm |
Source Outlook Today page |
Custom.htm |
Source Customize Outlook Today page |
OutExmpl.htm |
Sample customized Outlook Today page |
Clock.gif |
Source image file used in Outlook.htm and Custom.htm |
Gap.gif |
Source image file used in Outlook.htm and Custom.htm |
Thumb0.gif |
Thumbnail image used in Custom.htm |
Thumb1.gif |
Thumbnail image used in Custom.htm |
Thumb2.gif |
Thumbnail image used in Custom.htm |
Thumb3.gif |
Thumbnail image used in Custom.htm |
Thumb4.gif |
Thumbnail image used in Custom.htm |
Copy the Outlook.htm source file
You can use the sample Outlook.htm file included in the Office Resource Kit Toolbox, or you can obtain Outlook.htm directly from the original Outlook Today DLL file on your hard drive. To locate the original Outlook.htm file, enter to the following URL in the Address box in Internet Explorer:
res://C:\Program Files\Microsoft Office\Office\1033
\Outlwvw.dll/Outlook.htm
Note the forward slash after the DLL file name. If you installed Outlook in a different folder, then you must change the file path in the URL. In addition, if you installed a different language version of Outlook, you must replace the 1033 folder with the folder name containing the 4-digit Locale ID (LCID) for your language.
Note When you open the page in Microsoft Internet Explorer, it might generate a script error because it is not being hosted within the Outlook window. Ignore this error. The Outlook Today HTML page displays without the graphics and data tables.
To save a copy of Outlook.htm
1 On the View menu, click Source to open a copy of the Outlook.htm source file in Notepad.
2 On the Notepad File menu, click Save As.
3 In the Filename box, type Outlook.htm.
Be sure to save the file as an HTM file, and not as a TXT file.
4 Search for the text display:none and replace all three instances with the text display:
The source file was designed to take advantage of performance enhancements that are only available when the file is saved as a DLL. Because you are instead saving the file as an HTM or ASP file, you must change this property.
Copy the Custom.htm source file
You can use the sample Custom.htm file included in the Office Resource Kit Toolbox, or you can obtain Custom.htm directly from the original Outlook Today DLL file on your hard drive. To locate the original Custom.htm file, enter to the following URL in the Address box in Internet Explorer:
res://C:\Program Files\Microsoft Office\Office\1033
\Oulwvw.dll/Custom.htm
To save a copy of Custom.htm
1 On the View menu, click Source to open a copy of the Custom.htm source file in Notepad.
2 Locate the following line:
<!-- OLKBASEHREF -->
3 Directly below this line, enter the following line:
<base href=”res://C:\Program Files\Microsoft Office\Office\1033\Outlwvw.dll”>
If Outlook is installed in a different location on your client computers, update the path to point to that location instead.
Copy the source images
The href properties for Outlook Today images point to the same folder as the default Outlook Today page. For this reason, when you open the Outlook Today page in Internet Explorer, the images do not appear.
To restore the images for yourself, you can add a base href to the page in the head section. This property directs Outlook to the original DLL for all URLs. For example:
<head>
<base href="res://C:\Program Files\Microsoft
Office\Office\1033\outlwvw.dll/">
</head>
However, if you are going to publish your customized Outlook Today page on a Web server, you must extract the image files from the original DLL. To obtain the source images, enter to the following URL in the Address box in Internet Explorer:
res://C:\Program Files\Microsoft Office\Office
\1033\Outlwvw.dll /Outlook.htm
Note the forward slash after the DLL file name. If you installed Outlook in a different folder, then you must change the file path in the URL. In addition, if you installed a different language version of Outlook, you must replace the 1033 folder with the folder name containing the 4-digit LCID for your language.
Note When you open the page in Internet Explorer, it might generate a script error because it is not being hosted within the Outlook window. Ignore this error. The Outlook Today HTML page displays without the graphics and data tables.
To copy the source images
1 With the Outlook.htm file open in Internet Explorer, right-click the image you want, and then click Copy.
2 Open an image editor, and click Paste.
3 Save the new image file.
Add settings to the Windows registry
To activate your custom Outlook Today page, you add an entry to the Windows registry.
To add the correct settings to the registry
1 Start the Registry Editor and find or create the following subkey:
HKEY_CURRENT_USER\Software\Microsoft\Office\9.0\Outlook
\Today
2 On the Edit menu, point to New, and click String Value.
3 Type Url as the new value name.
4 Double-click the Url value.
5 In the Value data box, type the path to the Outlook.htm file. For example:
file://C:\My Documents\Outlook.htm
If you want to reset the registry and return to your original Outlook Today page, just delete the Url subkey. Without this subkey, Outlook points to the default Outlook Today page.
Note If you experience browser-related display errors on your customized Outlook Today page, you can use different Windows registry settings to activate your page. For more information, see "Addressing Browser Issues in Outlook Today" later in this document.
Modify the Outlook Today page
After you have collected the source files and set the new location in the Windows registry, you can modify your Outlook Today page.
Note When you open Outlook Today, the three data tables (Calendar, Messages, and Tasks) render line by line, rather than all at once, because the page is saved as an HTM or ASP file, and not in a DLL file.
To modify the Outlook Today page
1. Start Outlook, and click Outlook Today.
2. Edit the HTML source code using a text editor, such as Notepad.
3. Go back to Outlook to view your changes.
Refresh the page by clicking the Outlook Today icon in either the Outlook Bar or the Folder List.
Note Because Outlook Today uses specialized layout properties and scripting, editing the page in Microsoft FrontPage® 2000 or other graphical HTML editors may alter or damage it. A text editor is recommended.
Related links
After you complete your customizations, you can use the Office Custom Installation Wizard to add the HTML files to your Office 2000 installation. For more information, see "How to Add Files to the Installation" in the Microsoft Office 2000 Resource Kit.
You can use the Office Custom Installation Wizard to add a registry entry to the Office 2000 installation for all users at once. For more information, see "How to Set Registry Entries" in the Microsoft Office 2000 Resource Kit.
How to Publish Outlook Today in a DLL File
You can save your customized Outlook Today page in a resource DLL file by using a resource editor, such as Microsoft Visual Studio 6.0. This method of customizing Outlook Today allows you to take advantage of faster load times.
Note If you plan to use framesets, iframes, forms, or tabular data controls, then do not save your page in a DLL. In some circumstances, these elements do not function properly. For more information, see "Addressing Browser Issues in Outlook Today" later in this document.
Creating a custom DLL file for your Outlook Today page involves the following steps:
1. Copy the original Outlwvw.dll resource file.
2. Add correct settings to your Windows registry.
3. Open the resource DLL file.
4. Modify the HTML code.
5. Add images to the DLL file.
Important The following instructions apply to Microsoft Visual Studio versions 6.0 and 5.0. You must use Microsoft Visual Studio 6.0 or 5.0 or a similar resource editor, and Windows NT® 4.0 or Windows 2000. Microsoft Visual Studio does not allow you to replace resources in executable files under Windows 95/98.
Copy the Outlwvw.dll resource file
Before you can customize the DLL file, you must make a working copy of the original resource file. This step allows you to preserve the original file in case you need it again.
Caution Do not modify or remove Outlwvw.dll. This file contains both the Outlook Today source files and the source files for the Find and Organize features.
To copy the original Outlwvw.dll resource file
1 Locate the Outlwvw.dll resource file, which is installed by default in C:\Program Files\Microsoft Office\Office\1033.
if you installed a different language version of Outlook, replace the 1033 folder with the folder name containing the 4-digit LCID for your language
2 Make a working copy of Outlwvw.dll; for example, Outlwvw_custom.dll.
Add settings to the Windows registry
To activate your custom Outlook Today page, you add an entry to the Windows registry.
To add the correct settings to the registry
1 Start the Registry Editor and find or create the following subkey:
HKEY_CURRENT_USER\Software\Microsoft\Office\9.0\Outlook
\Today
2 On the Edit menu, point to New, and click String Value.
3 Type Url as the new value name.
4 Double-click the Url value.
5 In the Value data box, type the path to the Outlook.htm resource within your working copy of Outlwvw.dll; use the res:// protocol. For example:
res://C:\My Documents\Outlwvw_custom.dll
/Outlook.htm
Note the forward slash after the DLL file name.
Note If you want to reset the registry and return to your original Outlook Today page, just delete the Url subkey. Without this subkey, Outlook points to the default Outlook Today page.
Open your custom DLL file
You use the Microsoft Visual C++® 6.0 component of Microsoft Visual Studio 6.0 to customize the Outlook Today resource DLL file.
To open the resource DLL file
1 On Windows NT 4.0 or Windows 2000, start Microsoft Visual C++ 6.0.
2 On the File menu, click Open.
3 Select your working copy of Outlwvw.dll; for example, Outlwvw_custom.dll.
4 In the Open as box, click Resources, and then click Open.
5 Double-click the tree node 2110.
6 Double-click the Outlook.htm node.
This procedure starts the Microsoft Visual Studio binary editor, with text in the right pane of the window and hex numbers in the left pane.
Modify the Outlook Today page
You can modify the HTML code by editing the text directly in the Microsoft Visual Studio binary editor. However, you might find it simpler to modify the HTML code in another text editor, and then paste the modified code back into the Microsoft Visual Studio editor.
To modify the Outlook Today page by using a text editor
1 In the Microsoft Visual Studio binary editor, open the window for your working copy of Outlwvw.dll.
For example, open the Outlwvw_Custom.dll – "Outlook.htm" (2110) window.
2 On the Edit menu, click Select All.
3 On the Edit menu, click Copy.
4 Open a text editor, such as Notepad, and paste the copied text.
5 Modify the HTML code.
6 Copy the text in the text editor, and paste it in the DLL file in Microsoft Visual Studio.
7 Save your custom DLL file.
8 View your modified Outlook Today page in Outlook.
Important In the HTML code, there are three commented <RENSTATICTABLE> sections. If you change the layout of the Calendar, Messages, or Tasks databinding tables, you must make parallel changes to their associated RENSTATICTABLE sections.
If you are making and testing a significant number of changes in the HTML code, you can use an alternate method to modify the HTML. The following method allows you to modify the HTML code, and then replace the HTML in the original DLL file.
To modify the Outlook Today page using another editor
1 Copy the text of your working copy of Outlwvw.dll from Microsoft Visual Studio to a text editor, such as Notepad, and then save the file on your local hard disk.
2 Point the Outlook Today registry setting to the saved file by using the file:// protocol.
3 In the text file, replace the three instances of display:none with display:
Because you are using the file:// protocol, the live databinding tables are not visible without this step.
4 Modify the HTML code.
5 Restore the three instances of display: back to display:none to prepare the file to be loaded as a DLL again.
6 Copy the text in the text editor, and paste it in the DLL file in Microsoft Visual Studio.
7 Save your custom DLL file.
8 In the Windows registry, set the required value in the Today subkey. For example:
res://<path to Outlwvw_custom.dll>/Outlook.htm
Note the forward slash after the DLL file name.
Add images to your custom DLL file
If your new HTM file refers to images outside the original Outlwvw.dll resource, you can include these images in your custom DLL resource file. You can include a GIF, JPEG, or other type of image file. (This step is optional—you can always save the images as files on your hard disk.)
After you open the DLL file and modify the HTML code, you can create your own image files and add them to the DLL file.
To add images to your DLL file
1. In Microsoft Visual Studio, open your custom copy of Outlwvw.dll and double-click the tree node 2110.
2. Select any existing GIF resource.
3. On the Edit menu, click Copy, and then click Paste to create a duplicate of the GIF resource under the 2110 tree node.
For example, if you copy Calhdr.gif, you see a duplicate named Calhdr.gif1.
4. Right-click the duplicate resource, click Properties, and then rename the file.
You must include the quotation marks around the name of the resource.
5. On the File menu, click Open and select your own image file.
6. In the Open as box, click Binary.
7. Copy the text and close the original image file.
8. Replace the contents of your new GIF resource with the copied text from the image file.
9. Save your custom copy of Outlwvw.dll.
This procedure embeds your GIF file as a resource in your custom copy of Outlwvw.dll. You must now refer to it in your Outlook.htm file as res://Outlwvw_custom.dll/Name.gif.
About the RENSTATICTABLE
In the HTML source code for the Outlook Today page, there are three commented RENSTATICTABLE blocks. When Outlook reads the page through the res:// protocol, it uses these blocks to determine how to insert and format the temporary static tables.
For example, the following block of HTML code defines the Calendar (both the live and static tables):
<!-- Live Databinding Table -->
<table id=CalendarLiveTable border=0 cellspacing=1 cellpadding=2 valign=top
width=100% name="ItemCol" datasrc="#CalList"
style="display:;">
<tr>
<td nowrap valign=top width=10px align=left>
<div DATAFLD="Next" DATAFORMATAS="html"></DIV>
</td>
<td valign=top nowrap>
<div DATAFLD="StartEnd" DATAFORMATAS="html"
class=CalendarStartEnd > </DIV>
</td>
<td valign=top width=100%>
<div datafld="SubjectLocation" DATAFORMATAS="html"
class=CalendarSubjectLocation> </DIV>
</td>
</tr>
</table>
<!-- Temporary Static Table -->
<TABLE id=CalendarStaticTable border=0 cellspacing=1 cellpadding=2
valign=top width=100%>
<!-- RENSTATICTABLE~Calendar~Next=nowrap valign=top
width=10px align=left~StartEnd=valign=top nowrap
~SubjectLocation=valign=top width=100%~ -->
</table>
The block includes two sections: the Live Databinding Table and the Temporary Static Table. Relevant elements include the following.
display:none This is a CSS attribute that causes the page to hide the table. When the page loads, this table stays hidden, and the temporary static table is visible instead. After the live databinding table gathers all of its information, however, Outlook automatically overrides the display:none attribute on the live table and removes the static table. In most cases, this switch is imperceptible.
<!-- RENSTATICTABLE ... --> This element causes Outlook to insert a temporary static table at this location The properties that follow this tag describe how to construct the table, giving you control over how Outlook constructs its temporary static tables. In most cases, you make the static table look like the live table so that the switch is imperceptible.
~Calendar This element identifies the static table that contains the data for the Calendar.
~Next=nowrap valign=top width=10px align=left This element causes Outlook to add a first column (<TD>) to the table for each row, by using the following syntax:
<td nowrap valign=top width=10px align=left class="CalendarNext">
...
{inserts "Next" data here for each row}
...
</td>
This first column contains the Next/Current Appointment arrow.
~StartEnd=valign=top nowrap This element causes Outlook to add a second column to each row, by using the following syntax:
<td valign=top nowrap class="CalendarStartEnd">
...
{inserts "StartEnd" data here for each row}
...
</td>
This second column contains the start and end times for each appointment.
~SubjectLocation=valign=top width=100% This element causes Outlook to add a final column to each row, by using the following syntax:
<td valign=top width=100% class="CalendarSubjectLocation">
...
{inserts "SubjectLocation" data here for each row}
...
</td>
This final column contains the Subject and Location for each appointment.
Note You must add a tilde (~) at the end of the RENSTATICTABLE section. The final tilde signals the end of the command.
CalendarSubjectLocation style, InboxCount styles, and other table cell styles When Outlook constructs the static cells, it automatically adds a class property to the cell tag that is a combination of the table name and the column name:
<tablename> + <columnname>
This property allows you to set the styles of the table cells for each column. Then you can define the styles at the top of the Outlook.htm file, with the other CSS style definitions. Notice that one definition already exists at the top of the Outlook.htm file:
.InboxCount {font-weight:bold;}
Related links
After you complete your customizations, you can use the Office Custom Installation Wizard to add the HTML files to your Office 2000 installation. For more information, see "Customizing How Office Features Are Installed" in the Microsoft Office 2000 Resource Kit.
You can use the Office Custom Installation Wizard to add a registry entry to the Office 2000 installation for all users. For more information, see "Customizing How Office Options Are Set" in the Microsoft Office 2000 Resource Kit.
Addressing Browser Issues in Outlook Today
When you display your page in Outlook Today, you might notice that your page functions differently than it does in Internet Explorer. For example, you might notice the following display errors:
· The elements <frameset> and <iframe> do not function as expected.
· Forms do not work correctly.
· Tabular data controls do not work correctly.
These errors are due to the way that Outlook Today hosts Internet Explorer. Outlook can host one of two versions of Internet Explorer:
· Subset of Internet Explorer Allows Outlook Today to achieve the best possible rendering performance. This version of Internet Explorer is the default for Outlook Today.
· Full version of Internet Explorer Adds functionality but slows performance. When Outlook displays a Web page or folder home page, it uses the full version of Internet Explorer .
Confirm the cause of display errors
You can test your Outlook Today page to confirm that any display errors are browser-related. Because Outlook uses the full version of Internet Explorer to display folder home pages, you can use this feature to quickly test your page.
To test the Outlook Today page by using folder home pages
1 Right-click any folder, click Properties, and then click the Home Page tab.
2 In the Address box, type the address for your Outlook Today page.
3 Select the Show home page by default for this folder check box.
4 Click OK, and then click the folder to view the page.
If the errors disappear, then the cause was related to the browser.
Switch to the full version of Internet Explorer
You can use the full version of Internet Explorer to display Outlook Today by adding two settings to the Windows registry.
Note If you switch to the full version of Internet Explorer, you lose all the performance enhancements associated with using a DLL. For example, the RENSTATICTABLE tables are no longer displayed when the page first loads, and your data is displayed more slowly.
To use the full version of Internet Explorer in Outlook Today
1 In the Windows registry, add the following subkey:
HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\9.0\
Outlook\Webview\mailbox
2 On the Edit menu, click New, and then click String Value.
3 Type Url and then press Enter.
4 Double-click the Url value, and then in the Value data box, type the URL to your Outlook Today page.
5 On the Edit menu, click New, and then click String Value.
6 Type navigation and then press Enter.
7 Double-click the navigation value, and then in the Value data box, type yes.
Note The
new Url value entry overrides the default Url entry in the
HKEY_CURRENT_USER\Software\Microsoft\Office\9.0\Outlook
\Today subkey.
How to Disable Outlook Today
You can turn off Outlook Today and instead show the contents of your root folder. You can disable Outlook Today from within Outlook 2000.
To turn off Outlook Today in Outlook 2000
1 Right-click the Outlook Today icon in the folder list or Outlook Bar, and then click Properties.
2 Click the Home Page tab, and clear the Show home page by default for this folder check box.
You can also disable Outlook Today by modifying settings in the Windows registry. You can distribute the modified settings to users during installation by including them in the Custom Installation Wizard, or after installation by using a logon script.
To turn off Outlook Today in the Windows registry
1 In the Registry Editor, locate the following subkey:
HKEY_CURRENT_USER\Software\Microsoft\Office\9.0\Outlook
\Today
2 On the Edit menu, point to New, and click DWORD Value.
3 Type Disable as the value name.
4 Double-click the Disable value.
5 In the Value data box, type 1.
You can enable Outlook Today again by either deleting the Disable value entry or by setting its value to 0.
Comments
Post a Comment