<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<META content="MSHTML 6.00.2900.2912" name=GENERATOR></HEAD>
<BODY>
<DIV><FONT face=Arial size=2><SPAN class=403472718-14092006>Hi
list,</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN
class=403472718-14092006></SPAN></FONT> </DIV>
<DIV><FONT face=Arial size=2><SPAN class=403472718-14092006>Following from the
"Spambayes crashes my Outlook" thread, I thought I would post more details
on my experience with a similar Outlook crash / crippled Outlook issue
which I was able to workaround with a small change in source. This problem
occurs in Outlook 2000 and 2003 (maybe others), with CommuniGate MAPI
Intel 1.2.1, 1.2.2</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN
class=403472718-14092006></SPAN></FONT> </DIV>
<DIV><FONT face=Arial size=2><SPAN class=403472718-14092006>Problem:
</SPAN></FONT><FONT face=Arial size=2><SPAN class=403472718-14092006>SpamBayes'
logic on startup of the configuration wizard is to loop
through all entries in the Message Stores Table, then ask each one for a receive
folder (ie Inbox). The Communigate MAPI connector returns multiple
entries from this call, the first of which responds with the proper "Inbox"
folder when asked for the Receive Folder. It then causes an access
violation when the next store entry is asked for it's Receive Folder. Not
sure why a second store entry even exists.</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN
class=403472718-14092006></SPAN></FONT> </DIV>
<DIV><FONT face=Arial size=2><SPAN class=403472718-14092006>Workaround:
Modify a single line of code to eliminate the multi-store loop. The
assumption here is that you only need one store (probably true if you're running
a CommuniGate server).</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN
class=403472718-14092006></SPAN></FONT> </DIV>
<DIV><FONT face=Arial size=2><SPAN class=403472718-14092006>Source file:
spambayes/Outlook2000/msgstore.py</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN class=403472718-14092006>In the
YieldReceiveFolders function, comment out the "for row in rows:" line and
replace with "if True:"</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN
class=403472718-14092006></SPAN></FONT> </DIV>
<DIV><FONT face=Arial size=2><SPAN class=403472718-14092006>Thanks to the well
written code by the contributors, and good development documentation, this
did not take long to find, modify, and re-package for our internal
needs.</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN
class=403472718-14092006></SPAN></FONT> </DIV>
<DIV><FONT face=Arial size=2><SPAN class=403472718-14092006>If someone is so
inclined to work a permanent solution around this such as an installation
option to only allow a single message store, or to coach me on how to do this
quickly, it may help others with other similar Outlook environment
issues.</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN
class=403472718-14092006></SPAN></FONT> </DIV>
<DIV><FONT face=Arial size=2><SPAN class=403472718-14092006>thanks,
Roland;</DIV>
<DIV> </DIV></SPAN></FONT></BODY></HTML>