Hi Martin,
Unfortunately the message has to be read in order to determine what sort of message it is, as the identifier only indicates if the item is a folder or a message.
If the system doesn't recognise the message type it will still return a PSTMessage based on what it has read in, which does provide access methods to a bunch of information (although none of it is guaranteed to exist for that message type).
Also, I have recently removed some inefficient string concatenation in some pretty important parts of the library, so it might be a little snappier now reading through things.
I've also made a small code update that will not read in a message if the system can't identify an item as either a message or a folder, although I don't think this will help you much in this scenario.
Thanks,
Richard