How do I get/set Domino read status of messages vi

2019-06-13 01:19发布

问题:

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.