Packman.source-1.0_vc2005
所属分类:压缩解压
开发工具:Visual C++
文件大小:606KB
下载次数:52
上传日期:2008-06-16 00:20:30
上 传 者:
jauming
说明: pe exe packer (must use vc2005 to compile)
文件列表:
Packman.source-1.0_vc2005 (0, 2008-06-14)
Packman.source-1.0_vc2005\about.txt (1117, 2006-02-03)
Packman.source-1.0_vc2005\aPLib (0, 2008-06-14)
Packman.source-1.0_vc2005\aPLib\aPLib (0, 2006-02-02)
Packman.source-1.0_vc2005\aPLib\aPLib\aplib.h (2150, 2005-10-08)
Packman.source-1.0_vc2005\aPLib\aPLib\aplib.lib (12250, 2005-10-08)
Packman.source-1.0_vc2005\aPLib\complib.rc (2402, 2006-02-03)
Packman.source-1.0_vc2005\aPLib\complib.sln (878, 2006-02-02)
Packman.source-1.0_vc2005\aPLib\complib.vcproj (5354, 2006-02-03)
Packman.source-1.0_vc2005\aPLib\main.cpp (3846, 2006-02-03)
Packman.source-1.0_vc2005\aPLib\main.def (165, 2006-02-03)
Packman.source-1.0_vc2005\aPLib\resource.h (401, 2006-02-02)
Packman.source-1.0_vc2005\aPLib\unpacker.asm (2595, 2006-02-03)
Packman.source-1.0_vc2005\changelog.txt (1292, 2006-02-03)
Packman.source-1.0_vc2005\h2inc.err (21880, 2001-06-26)
Packman.source-1.0_vc2005\h2inc.exe (294912, 2002-01-05)
Packman.source-1.0_vc2005\Help (0, 2008-06-14)
Packman.source-1.0_vc2005\Help\Packman.hhc (6296, 2006-02-01)
Packman.source-1.0_vc2005\Help\Packman.hhp (1591, 2006-02-01)
Packman.source-1.0_vc2005\Help\Topic Files (0, 2006-02-03)
Packman.source-1.0_vc2005\Help\Topic Files\About.htm (883, 2006-02-01)
Packman.source-1.0_vc2005\Help\Topic Files\AdvancedTab.htm (809, 2006-01-31)
Packman.source-1.0_vc2005\Help\Topic Files\AdvancedTab_FileSections.htm (737, 2006-01-31)
Packman.source-1.0_vc2005\Help\Topic Files\AdvancedTab_FilterCode.htm (568, 2006-01-31)
Packman.source-1.0_vc2005\Help\Topic Files\AdvancedTab_RetainHeader.htm (839, 2006-01-31)
Packman.source-1.0_vc2005\Help\Topic Files\AdvancedTab_RetainOverlay.htm (774, 2006-01-31)
Packman.source-1.0_vc2005\Help\Topic Files\AdvancedTab_StripExports.htm (649, 2006-01-31)
Packman.source-1.0_vc2005\Help\Topic Files\AdvancedTab_StripLoadconfig.htm (386, 2006-01-31)
Packman.source-1.0_vc2005\Help\Topic Files\AdvancedTab_StripRelocations.htm (798, 2006-01-31)
Packman.source-1.0_vc2005\Help\Topic Files\AdvancedTab_StripResources.htm (385, 2006-02-01)
Packman.source-1.0_vc2005\Help\Topic Files\AdvancedTab_StripTLS.htm (449, 2006-01-31)
Packman.source-1.0_vc2005\Help\Topic Files\AdvancedTopics.htm (299, 2006-01-31)
Packman.source-1.0_vc2005\Help\Topic Files\AdvancedTopics_FilterPatternFormat.htm (2331, 2006-01-31)
Packman.source-1.0_vc2005\Help\Topic Files\AdvancedTopics_PackingMethodDetails.htm (2472, 2006-02-01)
Packman.source-1.0_vc2005\Help\Topic Files\BasicTab.htm (444, 2006-01-31)
Packman.source-1.0_vc2005\Help\Topic Files\BasicTab_FileAlignment.htm (814, 2006-01-31)
Packman.source-1.0_vc2005\Help\Topic Files\BasicTab_MinimumPackedSize.htm (321, 2006-01-31)
Packman.source-1.0_vc2005\Help\Topic Files\BasicTab_PackedSectionName.htm (563, 2006-01-31)
Packman.source-1.0_vc2005\Help\Topic Files\BasicTab_PackingMethod.htm (551, 2006-01-31)
... ...
About
-----
This is a skeleton project for a Packman compression library.
Author: Brandon LaCombe
Date: February 3, 2006
License: Public Domain
Creating your own compression library instructions
--------------------------------------------------
Search the complib skeleton source files for TODO tags for hints on how to
implement the dll code.
Here are step by step instructions to guide you:
1. Locate the Compress function in main.cpp and enter the code necessary for it
to work.
This function receives 4 parameters:
pvInput -- memory pointer to data needing to be compressed
dwInputSize -- size of the data pointed to by pvInput
pdwOutputSize -- pointer to a dword that must receive the size of the
compressed data
pCallback -- pointer to a progress callback function
The function returns a memory pointer to the compressed data or NULL on error.
You should implement a callback mechanism that calls the function pointed to by
pCallback. The callback function takes a dword parameter that specifies the
percent completed of the current compression routine. If the callback function
returns TRUE then you should continue compressing. If the callback function
returns FALSE then you should stop compressing and return NULL from the Compress
function.
Note that the memory pointer you return from the Compress function is
dynamically allocated within the Compress function. This memory is later freed
by the FreeCompressionMemory function.
2. Locate the FreeCompressionMemory function in main.cpp and enter the code
necessary for it to work.
This function receives 1 parameter:
pvCompressionMemory -- a memory pointer returned by the Compress function
3. Locate the GetMinDataSize function in main.cpp and enter the code necessary
for it to work.
This function returns the minimum data size that the compressor will
successfully compress. You can find this value by feeding the compressor
increasingly larger values from 1 until it starts returning output.
4. Locate the GetWorkMemorySize function in main.cpp and enter the code
necessary for it to work.
This function returns the size of the memory required for the decompressor to
work.
5. Locate the GetDescription function in main.cpp and enter a description of the
compression library.
This description is what is displayed when you press the "?" button on the file
tab of the Packman dialog. Ensure you keep the quotes surrounded by the _T macro
so unicode compilations work correctly.
6. Locate the Unpack function in unpacker.asm and enter the code necessary for
it to work.
7. Edit the version information resource.
Change the various fields to relate to your compression library. I like to set
the file version to the same version as the compression library source I am
using.
8. Edit the LIBRARY field in main.def to the name of your dll.
9. 9. Finally, change the project name from "complib" to the name of your dll.
近期下载者:
相关文件:
收藏者: