Hello, I might not be able to help you, since I don't know how Outlook does its things and how the search index is built.
Does Outlook update the PST files to a folder inside the sandbox, or does it write those outside of the sandbox?
Outlook has direct access to the PST files, so they are not located inside the sandbox.
The problem relates not so much to how "Outlook does its thing," but to how the Search Indexer processes do theirs.
Even without knowing anything about that, you might still be able to help if you can tell me something about how to use and configure
OpenIpcPath statements in sandboxie.ini. Since posting, I thought of asking ChatGPT about how to do this, and it replied that I needed to use them. I looked at the article here (
https://sandboxie-plus.com/sandboxie/openipcpath ) about how to use them, and thought that the provided examples generally aligned with the specific syntax of the statements that ChatGPT proposed, which I'll provide shortly.
Since you've written (and my thanks to you for doing that), I'll ask you about how they might be tweaked.
ChatGPT explained that the indexing processes and the Outlook process need to communicate both ways. This is what it had to say.
- Outlook and Windows Search communicate not just through file access but also through inter-process communication (IPC) mechanisms like pipes or shared objects.
- SearchProtocolHost.exe and other search-related processes do not directly index the raw PST files; they rely on Outlook's MAPI interface and often communicate with Outlook using named pipes and other IPC mechanisms to request data for indexing.
- Windows Search Indexer (SearchIndexer.exe, SearchProtocolHost.exe, etc.) needs to query Outlook for MAPI data (email, calendar items, etc.) to index it. This means the Search processes must be able to communicate with the sandboxed Outlook process to ask for the data.
- Conversely, Outlook also communicates back with the Search services to provide the data that needs to be indexed. So, Outlook needs to be able to talk back to the search-related processes, and those processes might also be using IPC mechanisms (like named pipes or shared objects) to get the data in a structured form from Outlook.
- By adding an OpenIpcPath entry in the Sandboxie configuration, you're essentially giving permission for specific communication routes between sandboxed processes and external processes, allowing them to interact.
- Adding OpenIpcPath and OpenPipePath statements to the Sandboxie configuration enables the Windows Search components (like SearchIndexer) to access sandboxed Outlook not just via files, but through the necessary inter-process communication mechanisms.
It suggested I add these four statements to sandboxie.ini.
OpenPipePath=*\pipe\MSFTHost*
OpenIpcPath=*\BaseNamedObjects*\SearchIndexer*
OpenIpcPath=*\BaseNamedObjects*\SearchProtocolHost*
OpenIpcPath=*\BaseNamedObjects*\SearchFilterHost*
However, after doing that, saving sandboxie.ini, and restarting Outlook in the sandbox, indexing still would not proceed.
I think that ChatGPT's explanation of the mechanisms involved in the indexing process is valid, and feel like these statements--or something like them--are putting me very close to a resolution
Ideas?