Your friend is absolutely on the right track and correct however they are basically doing the same thing as the above snippet I posted. The only difference is that the example I posted shouldn't be limited to Vista. The GetFileInformationByHandleEx and OpenByFileId looks to exported on Vista and above.