OpenArchive
 
OpenArchive should perform all necessary operations when an archive is to be opened.
 
HANDLE __stdcall OpenArchive (tOpenArchiveData *ArchiveData);
 
Description
 
OpenArchive should return a unique handle representing the archive. The handle should remain valid until CloseArchive is called. If an error occurs, you should return zero, and specify the error by setting OpenResult member of ArchiveData.
You can use the ArchiveData to query information about the archive being open, and store the information in ArchiveData to some location that can be accessed via the handle.