ObjIdLib
A library for working with NTFS Object Idenitifers
|
00001 00009 #ifdef OBJIDLIB_EXPORTS 00010 00011 #define OBJIDLIB_API extern "C" __declspec(dllexport) 00012 #else 00013 #define OBJIDLIB_API extern "C" __declspec(dllimport) 00014 #endif 00015 00016 #ifndef OBJECTID_ATTRIBUTE 00017 00018 typedef struct 00019 { 00024 GUID ObjectId; 00025 union 00026 { 00027 struct 00028 { 00036 GUID BirthVolumeId; 00041 GUID BirthObjectId; 00045 GUID DomainId; 00046 }; 00050 UCHAR ExtendedInfo[48]; 00051 }; 00052 } OBJECTID_ATTRIBUTE, *POBJECTID_ATTRIBUTE; 00053 #endif 00054 00055 OBJIDLIB_API BOOL CreateObjectId(IN LPCWSTR sFileName, OUT POBJECTID_ATTRIBUTE pObjId); 00056 OBJIDLIB_API BOOL GetObjectId(IN LPCWSTR sFileName, OUT POBJECTID_ATTRIBUTE pObjId); 00057 OBJIDLIB_API BOOL ObjectIdExists(IN LPCWSTR sFileName); 00058 OBJIDLIB_API BOOL DeleteObjectId(IN LPCWSTR sFileName); 00059 OBJIDLIB_API BOOL SetObjectId(IN LPCWSTR sFileName, IN POBJECTID_ATTRIBUTE pObjId); 00060 OBJIDLIB_API BOOL SetObjectIdExt(IN LPCWSTR sFileName, IN POBJECTID_ATTRIBUTE pObjId);