I have an application that interacts with Domino via the Domino COM object. I can send, find, delete messages without problem but getting/setting the unread status does not work. The Domino COM object has method to get the read status but it always come back as read. Anyone have a workaround that works? I've had no success with anything I've found searching online.
问题:
回答1:
Unread marks in Domino are a funny old beast. They're derived from multiple sources: whilst you have an internal table of Notes IDs within a specific NSF, you also have an "unread journal" stored in the local Notes client's CACHE.DSK file.
All recent versions of Notes (i.e. in the last 8 / 9 years) move this unread table within the Notes client (to DESKTOP.DSK I think), and also make them server-aware, so that APIs can get a handle on unread marks.
Unfortunately, this means that you're probably out of luck with things like COM but as you've found, the C++ API should be OK. IBM: The Architecture of Unread Marks in Lotus Notes
回答2:
Actually with some more research it looks like getting/setting the unread status through the COM API doesn't work. However using the C++ API would work - and I should be able to integrate this with my existing C# project as a managed C++ project.