Sorry, but that code doesn't make a whole lot of sense.
"fdtmp" is never pointed at anywhere useful - just at a new MapiFileDesc object, then left there.
I see no code here that actually goes through a list of attachments.
Have a look at the Marshal.PtrToStructure method: I don;t think it does what you expect:
MSDN[
^]
The best thing you can do is to put a breakpoint on the first line "aat = new ..." and single step through, because I don't think you are accessing anything useful at all!