'msdelta'에 해당되는 글 1건
2008/03/11 19:37
msdelta 는 기존 mspatch 를 좀더 발전시킨 delta생성 라이브러리이다.
Vista에서부터 사용된다고 한다.
관련 샘플 소스를 검색해보았는데, 없는거 같아서 간단히 맹글어 보았다.
제대로 쓰는건지 모르겠다. -_-;
비싼 RTPatch 사서 쓰는것 보다 어쩌면 더 좋은 효과를 볼 수 있을 거 같다.
라이브러리 다운로드:
Microsoft SDK v6 참고하세요~
참고:
http://www.codeproject.com/KB/applications/patch.aspx
http://msdn2.microsoft.com/en-us/library/bb267312.aspx
http://dalhee.wowdns.com/tt/somy/entry/Binary-Delta-Compression-델타-생성적용-업데이트의-중요한-부분
Vista에서부터 사용된다고 한다.
관련 샘플 소스를 검색해보았는데, 없는거 같아서 간단히 맹글어 보았다.
제대로 쓰는건지 모르겠다. -_-;
비싼 RTPatch 사서 쓰는것 보다 어쩌면 더 좋은 효과를 볼 수 있을 거 같다.
#include "stdafx.h" #include#include "msdelta.h" #pragma comment(lib, "msdelta.lib") int _tmain(int argc, _TCHAR* argv[]) { DELTA_INPUT GlobalOpt = {NULL, 0}; LPCTSTR SrcName = _T("myapp_v1.exe"); LPCTSTR DestName = _T("myapp_v2.exe"); LPCTSTR DeltaName = _T("myapp_patch.dat"); LPCTSTR NewName = _T("patched_myapp_v2.exe"); // // Generate delta file // BOOL bSucc = CreateDelta( DELTA_FILE_TYPE_RAW, DELTA_FLAG_NONE, DELTA_FLAG_NONE, SrcName, DestName, NULL, NULL, GlobalOpt, NULL, CALG_MD5, DeltaName ); if ( !bSucc ) { _tprintf( _T("Error: %d\n"), GetLastError() ); } // // Apply patch // bSucc = ApplyDelta( DELTA_FLAG_NONE, SrcName, DeltaName, NewName ); if ( !bSucc ) { _tprintf( _T("Error: %d\n"), GetLastError() ); } return 0; }
라이브러리 다운로드:
Microsoft SDK v6 참고하세요~
참고:
http://www.codeproject.com/KB/applications/patch.aspx
http://msdn2.microsoft.com/en-us/library/bb267312.aspx
http://dalhee.wowdns.com/tt/somy/entry/Binary-Delta-Compression-델타-생성적용-업데이트의-중요한-부분


MsDelta.zip