> win can lock the file on occasion and cause SA to fail. By which I think you mean that *your Windows-based MTA* can lock the file and cause SA to fail.
A properly-written MTA-SA hook, or MTA-name_your_external_hook, has no such problems on Windows. We process millions of messages through Windows MTAs with standalone SA.pl shells, SPAMC shells, and integrated SPAMD calls and don't have any such locking issues. Issues like yours likely depend on whether your calling MTA attempts to maintain existing file handles while shelling to an external application, and also may be linked to how the MTA waits on the external app and obtains its results (WFSO + exit code lookup/exit code lookup after fixed timeout/notify on "sentinel" file creation/reopen the message file after a fixed delay/other IPC). There are numerous Win32 API approaches to perform these same tasks; some are safe, some are unsafe. In addition to stress-testing your choice of MTA for poor locking code, ensure that real-time AV and other external hooks are also taken out of the picture (including, as you have already mentioned, the Indexing Service). --Sandy