在作为缓冲区) 提供的源和目标 (之间创建增量,并将输出增量作为 MSDelta 分配的缓冲区返回。
注意
必须调用 DeltaFree 才能在此函数完成后释放输出缓冲区。
语法
BOOL WINAPI CreateDeltaB(
DELTA_FILE_TYPE FileTypeSet,
DELTA_FLAG_TYPE SetFlags,
DELTA_FLAG_TYPE ResetFlags,
DELTA_INPUT Source,
DELTA_INPUT Target,
DELTA_INPUT SourceOptions,
DELTA_INPUT TargetOptions,
DELTA_INPUT GlobalOptions,
const FILETIME *lpTargetFileTime,
ALG_ID HashAlgId,
LPDELTA_OUTPUT lpDelta
);
参数
FileTypeSet
[in] DELTA_FILE_TYPE 值,该值指示要用于创建过程的文件类型集。
SetFlags
[in]一个或多个 DELTA_FLAG_TYPE 值,用于指定在创建过程中要使用的标志以及默认标志。
ResetFlags
[in]一个或多个 DELTA_FLAG_TYPE 值,用于指定要在创建过程中重置的默认标志。
Source
[in] 一个DELTA_INPUT 结构,包含指向包含源数据的缓冲区的指针。
Target
[in]包含指向包含目标数据的缓冲区的指针 的DELTA_INPUT 结构。
SourceOptions
[in] 保留。 传递 DELTA_INPUT 结构,其中 “可编辑” 设置为 FALSE, lpStart 设置为 NULL , uSize 设置为 0。
TargetOptions
[in] 保留。 传递 DELTA_INPUT 结构,其中 “可编辑” 设置为 FALSE, lpStart 设置为 NULL , uSize 设置为 0。
GlobalOptions
[in] 保留。 传递DELTA_INPUT结构,其中 lpStart 设置为 NULL,uSize 设置为 0。
lpTargetFileTime
[in]应用增量后对目标文件设置的时间戳。 如果 为 NULL,则目标时间戳将是创建过程中的当前时间。
HashAlgId
[in]ALG_ID用于生成目标签名的算法。 一些特殊值包括:
- 0 = 无签名
- 32 = msdelta.dll 中定义的 32 位 CRC
lpDelta
[out]指向要在其中写入增量 的DELTA_OUTPUT 结构的指针。
返回值
如果成功,此函数返回 TRUE ;否则,它将返回 FALSE。 当函数返回 FALSE 时,可以调用 GetLastError 以获取相应的 Win32 系统错误代码。
要求
| 要求 | 值 |
|---|---|
| 标头 | msdelta.h |
| DLL | msdelta.dll |
| Unicode | 不适用 |