📄 tmsuole2impl.hpp
字号:
public:
__fastcall TOle2FAT(const TOle2Header* aHeader, const Classes::TStream* aStream)/* overload */;
__fastcall virtual ~TOle2FAT(void);
int __fastcall uFATEntryShift(void);
__int64 __fastcall GetNextSector(const __int64 Sect);
__int64 __fastcall FindSector(const __int64 StartSect, const __int64 SectOfs);
};
class DELPHICLASS TOle2MiniFAT;
class PASCALIMPLEMENTATION TOle2MiniFAT : public UInt32List
{
typedef UInt32List inherited;
private:
TOle2Header* Header;
__fastcall TOle2MiniFAT(void)/* overload */;
void __fastcall LoadMiniFatSector(const Tmsuflxmessages::ByteArray data);
public:
__fastcall TOle2MiniFAT(const TOle2Header* aHeader, const Classes::TStream* aStream, const TOle2FAT* aFAT)/* overload */;
__int64 __fastcall GetNextSector(const __int64 Sect);
__int64 __fastcall FindSector(const __int64 StartSect, const __int64 SectOfs);
public:
#pragma option push -w-inl
/* UInt32List.Destroy */ inline __fastcall virtual ~TOle2MiniFAT(void) { }
#pragma option pop
};
class DELPHICLASS TOle2Directory;
class PASCALIMPLEMENTATION TOle2Directory : public System::TObject
{
typedef System::TObject inherited;
private:
DynamicArray<Byte > Data;
int __fastcall Get_NameSize(void);
void __fastcall Set_NameSize(const int value);
WideString __fastcall Get_Name();
void __fastcall Set_Name(const WideString value);
STGTY __fastcall Get_ObjType(void);
void __fastcall Set_ObjType(const STGTY value);
__int64 __fastcall Get_SectStart(void);
void __fastcall Set_SectStart(const __int64 value);
__int64 __fastcall Get_xulSize(void);
void __fastcall Set_xulSize(const __int64 value);
public:
__int64 ulSize;
__fastcall TOle2Directory(const Tmsuflxmessages::ByteArray aData);
void __fastcall Save(const Classes::TStream* aStream);
/* class method */ static int __fastcall GetNameSize(TMetaClass* vmt, const Tmsuflxmessages::ByteArray Data, const int StartPos);
/* class method */ static WideString __fastcall GetName(TMetaClass* vmt, const Tmsuflxmessages::ByteArray Data, const int StartPos);
/* class method */ static STGTY __fastcall GetType(TMetaClass* vmt, const Tmsuflxmessages::ByteArray Data, const int StartPos);
/* class method */ static __int64 __fastcall GetSectStart(TMetaClass* vmt, const Tmsuflxmessages::ByteArray Data, const int StartPos);
/* class method */ static void __fastcall SetSectStart(TMetaClass* vmt, const Tmsuflxmessages::ByteArray Data, const int StartPos, const __int64 value);
/* class method */ static __int64 __fastcall GetSize(TMetaClass* vmt, const Tmsuflxmessages::ByteArray Data, const int StartPos);
/* class method */ static void __fastcall SetSize(TMetaClass* vmt, const Tmsuflxmessages::ByteArray Data, const int StartPos, const __int64 value);
/* class method */ static void __fastcall Clear(TMetaClass* vmt, const Tmsuflxmessages::ByteArray Data, const int StartPos);
/* class method */ static int __fastcall GetLeftSid(TMetaClass* vmt, const Tmsuflxmessages::ByteArray Data, const int StartPos);
/* class method */ static void __fastcall SetLeftSid(TMetaClass* vmt, const Tmsuflxmessages::ByteArray Data, const int StartPos, const int value);
/* class method */ static int __fastcall GetRightSid(TMetaClass* vmt, const Tmsuflxmessages::ByteArray Data, const int StartPos);
/* class method */ static void __fastcall SetRightSid(TMetaClass* vmt, const Tmsuflxmessages::ByteArray Data, const int StartPos, const int value);
/* class method */ static int __fastcall GetChildSid(TMetaClass* vmt, const Tmsuflxmessages::ByteArray Data, const int StartPos);
/* class method */ static void __fastcall SetChildSid(TMetaClass* vmt, const Tmsuflxmessages::ByteArray Data, const int StartPos, const int value);
/* class method */ static DECOLOR __fastcall GetColor(TMetaClass* vmt, const Tmsuflxmessages::ByteArray Data, const int StartPos);
/* class method */ static void __fastcall SetColor(TMetaClass* vmt, const Tmsuflxmessages::ByteArray Data, const int StartPos, const DECOLOR value);
__property int NameSize = {read=Get_NameSize, write=Set_NameSize, nodefault};
__property WideString Name = {read=Get_Name, write=Set_Name};
__property STGTY ObjType = {read=Get_ObjType, write=Set_ObjType, nodefault};
__property __int64 SectStart = {read=Get_SectStart, write=Set_SectStart};
__property __int64 xulSize = {read=Get_xulSize, write=Set_xulSize};
public:
#pragma option push -w-inl
/* TObject.Destroy */ inline __fastcall virtual ~TOle2Directory(void) { }
#pragma option pop
};
class DELPHICLASS TSectorBuffer;
class PASCALIMPLEMENTATION TSectorBuffer : public System::TObject
{
typedef System::TObject inherited;
private:
DynamicArray<Byte > Data;
bool Changed;
__int64 FSectorId;
TOle2Header* Header;
Classes::TStream* DataStream;
public:
__fastcall TSectorBuffer(const TOle2Header* aHeader, const Classes::TStream* aStream);
void __fastcall Load(const __int64 SectNo);
void __fastcall Save(void);
void __fastcall Read(const Tmsuflxmessages::ByteArray aBuffer, const __int64 BufferPos, /* out */ __int64 &nRead, const __int64 StartPos, const __int64 Count, const __int64 SectorSize);
void __fastcall ReadMem(void *aBuffer, const __int64 BufferPos, /* out */ __int64 &nRead, const __int64 StartPos, const __int64 Count, const __int64 SectorSize);
__property __int64 SectorId = {read=FSectorId};
public:
#pragma option push -w-inl
/* TObject.Destroy */ inline __fastcall virtual ~TSectorBuffer(void) { }
#pragma option pop
};
class DELPHICLASS TOle2File;
class PASCALIMPLEMENTATION TOle2File : public System::TObject
{
typedef System::TObject inherited;
private:
Classes::TStream* FStream;
TOle2Header* Header;
TOle2FAT* FAT;
TOle2MiniFAT* MiniFAT;
TSectorBuffer* SectorBuffer;
TOle2Directory* ROOT;
Tmsuxlsprotect::TEncryptionData* FEncryption;
WideString TOle2FileStr;
bool disposed;
TOle2Directory* DIR;
__int64 StreamPos;
bool PreparedForWrite;
__int64 DIRStartPos;
void __fastcall MarkDeleted(const int i, const TDirEntryList* Result, const int Level);
/* class method */ static void __fastcall DeleteNode(TMetaClass* vmt, const TDirEntryList* Result, int &ParentLeaf);
void __fastcall FixNode(const TDirEntryList* Result, int &ParentNode);
TDirEntryList* __fastcall ReadDirs(const StringArray DeletedStorages, bool &PaintItBlack);
void __fastcall FinishStream(void);
__int64 __fastcall Get_Length(void);
__int64 __fastcall Get_Position(void);
bool __fastcall Get_Eof(void);
WideString __fastcall Get_FileName();
public:
bool NotXls97;
__fastcall TOle2File(const Classes::TStream* aStream)/* overload */;
__fastcall TOle2File(const Classes::TStream* aStream, const bool AvoidExceptions)/* overload */;
__fastcall virtual ~TOle2File(void);
void __fastcall Close(void);
TOle2Directory* __fastcall FindDir(const WideString DirName);
TOle2Directory* __fastcall FindRoot(void);
void __fastcall SelectStream(const WideString StreamName);
bool __fastcall NextEof(const int Count);
void __fastcall ReadMem(void *aBuffer, const int Count);
void __fastcall WriteRawMem(const void *Buffer, const int Count)/* overload */;
void __fastcall WriteMem(const void *Buffer, const int Count)/* overload */;
void __fastcall Read(const Tmsuflxmessages::ByteArray aBuffer, const int Count);
void __fastcall WriteRaw(const Tmsuflxmessages::ByteArray Buffer, const int Count)/* overload */;
void __fastcall Write(Tmsuflxmessages::ByteArray Buffer, const int Count)/* overload */;
void __fastcall WriteRaw(const Tmsuflxmessages::ByteArray Buffer, const int StartPos, const int Count)/* overload */;
void __fastcall WriteHeader(const Word Id, const Word Len);
void __fastcall Write(Tmsuflxmessages::ByteArray Buffer, const int StartPos, const int Count)/* overload */;
void __fastcall Write16(Word Buffer);
void __fastcall Write32(unsigned Buffer);
/* class method */ static bool __fastcall FindString(TMetaClass* vmt, const WideString s, const StringArray list);
void __fastcall SeekForward(const __int64 Offset);
void __fastcall PrepareForWrite(const Classes::TStream* OutStream, const WideString OStreamName, const StringArray DeleteStorages);
__property Tmsuxlsprotect::TEncryptionData* Encryption = {read=FEncryption};
__property __int64 Length = {read=Get_Length};
__property __int64 Position = {read=Get_Position};
__property bool Eof = {read=Get_Eof, nodefault};
__property WideString FileName = {read=Get_FileName};
};
//-- var, const, procedure ---------------------------------------------------
} /* namespace Tmsuole2impl */
using namespace Tmsuole2impl;
#pragma pack(pop)
#pragma option pop
#pragma delphiheader end.
//-- end unit ----------------------------------------------------------------
#endif // Tmsuole2impl
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -