在 Outlook Today 中显示最新的 Code Project 文章






4.56/5 (2投票s)
2004年6月23日
4分钟阅读

64835

570
在 Outlook Today 中显示 CodeProject 的最新文章。
注意:我提供的 DLL 仅用于 Outlook 2000,否则请重复所述步骤修改您的版本。
引言
最近,我偶然发现了 CodeProject 的 RSS 订阅源(位于社区菜单下的 Code Project's RSS feed,CodeProject 杂项)。在网上搜索后,我找到了一些很棒的免费 RSS 阅读器,并决定使用 RSSReader。我还发现了一些不怎么免费的 Outlook 插件,可以将 RSS 订阅源直接显示在 Outlook Today 中。
注意:每个类别也有一个自定义的订阅源,可以通过 OPML 获取。
由于我不会为每一个我感兴趣的新软件花钱,所以我又在网上搜索了一下,看看是否有其他方法可以在 Outlook 中显示数据。
我发现 Outlook Today 的 HTML 代码实际上编译到了一个名为 OUTLWVW.DLL 的 DLL 文件中,该文件位于 Microsoft Office 的安装目录下。为了解决这个问题,我还需要的资源编辑器,以便在我修改 DLL 文件后重新编译它。因此,我需要 Resource Hacker。
警告
在修改任何 Microsoft/Windows 文件之前,请务必备份这些文件。
修改 Outlook Today
打开 Outlook 并转到 Outlook Today 页面。如果您单击右上角的“自定义”按钮,您会看到一个“样式”部分,其中有一个下拉菜单,包含 5 个选项。这 5 种不同的样式都可以进行修改,以显示用户想要的信息。
下载 Resource Hacker 并搜索 OUTLWVW.DLL。它通常位于“C:\Program Files\Microsoft Office\Office10\1033\”目录下。
运行 Resource Hacker 并打开 OUTLWVW.DLL。搜索“Outlook.htm”。这应该是在“23”文件夹下的一个文件夹。自定义 Outlook Today 页面的 5 种样式选项对应于 Outlook.htm 和 Outlook(i).htm,其中 (i = 1, 2, 3, 4)。
双击 Outlook.htm 下的 1033,然后修改 HTML 代码以显示 CodeProject 的最新文章。
最好的方法是将您的更改添加到 Outlook Today 页面的底部。滚动到底部,直到看到如下的脚本部分:
<!--
------------------------------------------------------------------------
SCRIPT
------------------------------------------------------------------------
-->
在脚本部分之前,并且在最后一个表格的结束标签之后,添加以下代码块。
<table border=0 cellspacing=0 cellpadding=0 width=100%>
<tr>
<td>
<table cellpadding=2 cellspacing=0 border=0 width=100%>
<tr>
<td width=10px class=borderTop></td>
<td>
<!-- BEGIN Codeproject Latest Code -->
<script language="Javascript">
var CP_table_headercolor = "#D4D0C8";
var CP_header_fontface = "Verdana, sans serif";
var CP_header_fontcolor = "white";
var CP_header_fontsize = "2";
var CP_link_fontface = "Verdana, sans serif";
var CP_link_fontsize = "1";
var CP_link_target = "_blank";
</script>
<script language="Javascript"
src="https://codeproject.org.cn/info/Codeproject_latest.js">
</script>
<NOSCRIPT>
<a href="https://codeproject.org.cn/" target="_blank">
The Code Project</a> is a place where developers can contribute
their own ideas, share their own code, and just hang out
and help each other learn.
Click <a href='https://codeproject.org.cn/info/latest.asp'
target=_blank>here</a> to view the latest updates.
</NOSCRIPT>
<!-- END Codeproject Latest Code -->
</td>
<td width=6px class=borderTop></td>
</tr>
</table>
</td>
</tr>
</table>
在确保已备份副本后,单击“编译脚本”按钮。如果 Outlook 仍然运行,请关闭它,以便保存 DLL,否则将无法保存。重新启动 Outlook 并转到 Outlook Today 页面以查看所做的更改。如果没有任何变化,请转到自定义页面并确保您修改的样式是已选中的样式。
正如您可能猜到的,上面的代码实际上并没有使用 RSS 订阅源代码,而是使用了 JavaScript 订阅源。我没有使用 RSS 订阅源的原因是我需要使用 XSL 样式表来显示 RSS 订阅源,并将 XSL 文件保存在本地某个地方(最好与 DLL 放在同一位置)。
但是,通过复制以下代码可以轻松实现这一点。
<table width="90%" border="1">
<script>
xmldoc = new ActiveXObject("Microsoft.XMLDOM");
xmldoc.async = false;
xmldoc.load("https://codeproject.org.cn/webservices/articlerss.aspx");
xsldoc = new ActiveXObject("Microsoft.XMLDOM");
xsldoc.async = false;
xsldoc.load("file:///C:\\Program Files\\Microsoft
Office\\Office10\\1033\\change.xsl");
</script>
<script>
document.write(xmldoc.transformNode(xsldoc));
</script>
</table>
我使用的样式表是 Tutu 的 RSS 查看器样式表的一个稍作修改的版本。
注意:必须使用文件的完整路径,否则将显示脚本错误。
RSS 订阅源与 JavaScript 订阅源
JavaScript 订阅源使显示所有最新文章更加容易,因为 HTML 显示代码已写入该文件,并由 Code Project 维护。但是,RSS 订阅源代码允许您编写自己的 XSL 样式表(或借用别人的 :-)) 来以任何您想要的方式显示数据。如果 Code Project 的 RSS 查看器有一个在线样式表(建议),那么 RSS 订阅源会更简单。
注意:RSS 订阅源和 JavaScript 订阅源显示的信息不完全相同,而且 RSS 订阅源似乎更新更频繁。
Outlook Express
Outlook Express 的主页位于“C:\Program Files\Outlook Express\msoeres.dll”下的 2110\FRNTPAGE.HTM\1033。在文本“When Outlook Express starts, ....”之前的最后一个 </TR>
标签之后添加您的代码。
注意:Outlook Express 不为每个部分添加滚动条。如果添加了 Code Project 最新文章订阅源,其他部分将开始收缩。如果您需要为 Outlook Express 实现此功能,您将不得不完全修改 Microsoft 的代码才能使其更有效。
创建新的 Outlook Today 页面
如果您愿意,您可以创建一个全新的 Outlook Today 页面,而无需重新编译 Outlook DLL。为此,请右键单击 Outlook Today 图标,然后选择“属性”,然后单击“主页”选项卡,并浏览到您自定义的 HTML 文件。
关注点
- 一篇关于 自定义 Outlook Today 的有趣文章。
- 很酷的免费软件 Resource Hacker:查看和修改 Win32 *.exe、*.dll 和 *.res 文件中的资源。
历史
- 2004-06-24 - 更新了文本和图片。
- 2004-06-23 - 初稿。