Yes I have googled, and found lots of supposed answers to this problem of using P/Invoke but everything I found, and everything I tried either caused exceptions, or simply failed to fill in the struct.
So here is my problem
Code:
typedef struct tagEdsDirectoryItemInfo
{
    EdsUInt32   size;
    EdsBool     isFolder;
    EdsUInt32   groupID;
    EdsUInt32   option;
    EdsChar     szFileName[ EDS_MAX_NAME
...