MPQ Archives
Storm.dll
Procedures for reading files from archives are stored in the dll "Storm.dll", which is deployed with all current Blizzard games. This DLL contains also memory management functions, network games support and other. The library exists also for Mac, named Storm.bin.
But a DLL can be used with any application, which violates the original request on secure archives. If you use a tool for listing exported functions from a DLL, (e.g. Depends.exe from MS Visual C++), you can use the listed procedure names to found which ones serve for file extracting. Because of this, its authors made some restrictions in Storm.dll to make its using more difficult.
You can find detailed description of functions which work with archived files in the chapter StormLib library functions.
If you want to use Storm.dll in your applications, you have to link it using import library. This import library with header file (containing function prototypes) is available for download in the Download section.
StarEdit is the map editor, released with the game of StarCraft. Maps for StarCraft (and also for WarCraft III) are nothing else than MPQ Archives. This means, that StarEdit.exe contains procedures, which can create and edit MPQ archives.
But StarEdit is not a DLL, so you cannot load it using the LoadLibrary API. A Russian programmer Andrej Lelikov has written a code which loads StarEdit to memory, performs necessary relocations and allows to call functions for creating MPQs. You may find detailed description in the LMPQAPI Functions chapter.