#ifndef __Dism_H
#define __Dism_H
#ifdef __cplusplus
extern "C" {
#endif
#define __declspec(x) __attribute__((x))
#define __unaligned __attribute__((packed))
#define DECLSPEC_IMPORT extern __declspec(dllimport)
#if defined(__x86_64__)||defined(_M_AMD64)
#define _AMD64_
typedef unsigned long long size_t;
typedef long long LONG_PTR;
#define __cdecl
#define __fastcall
#define __stdcall
#else
#define _X86_
typedef unsigned long size_t;
typedef long LONG_PTR;
#define __cdecl __attribute__((__cdecl__))
#define __fastcall __attribute__((fastcall))
#define __stdcall __attribute__((__stdcall__))
#endif
typedef size_t ULONG_PTR, DWORD_PTR, SIZE_T, WPARAM, LPARAM;
typedef LONG_PTR SSIZE_T;
typedef unsigned long DWORD,*PDWORD,*LPDWORD,ULONG,*PULONG,*LPULONG,UINT,*PUINT,*LPUINT,UINT32,*PUINT32,*LPUINT32;
typedef unsigned long long DWORD64,*PDWORD64,*LPDWORD64, UINT64,*PUINT64,*LPUINT64;
typedef long LONG,*PLONG,*LPLONG,INT,*PINT,*LPINT,INT32,*PINT32,*LPINT32;
typedef unsigned short UINT16,*PUINT16,*LPUINT16, WORD,*PWORD,*LPWORD;
typedef short INT16,*PINT16,*LPINT16;
typedef void VOID, *LPVOID, *PVOID;
typedef long HRESULT;
typedef int BOOL,*PBOOL,*LPBOOL;
#ifndef _WCHAR_T_DEFINED
typedef short wchar_t;
#define _WCHAR_T_DEFINED
#endif // !_WCHAR_T_DEFINED
typedef wchar_t WCHAR, *PWSTR,* LPWSTR,*BSTR;
typedef char CHAR, *PCHAR, *LPCHAR;
typedef const wchar_t* LPCWSTR,PCWSTR;
typedef const char* LPCSTR, PCSTR;
typedef BSTR *LPBSTR;
//GUID
typedef struct _GUID {
unsigned long Data1;
unsigned short Data2;
unsigned short Data3;
unsigned char Data4[8];
} GUID;
typedef GUID IID;
typedef GUID CLSID;
/* 0 == FALSE, -1 == TRUE */
typedef short VARIANT_BOOL;
#define MAX_PATH 260
#define FALSE 0
#define TRUE 1
#define NULL ((void*)0)
#define offsetof(type, field) ((size_t)&((type *)0)->field)
void *alloca(size_t size);
#if defined(__x86_64__)||defined(_M_AMD64)
#define _AMD64_
#ifndef _WIN64
typedef void *va_list;
va_list __va_start(void *fp);
void *__va_arg(va_list ap, int arg_type, int size);
va_list __va_copy(va_list src);
void __va_end(va_list ap);
#define va_start(ap, last) ((ap) = __va_start(__builtin_frame_address(0)))
#define va_arg(ap, type) \
(*(type *)(__va_arg(ap, __builtin_va_arg_types(type), sizeof(type))))
#define va_copy(dest, src) ((dest) = __va_copy(src))
#define va_end(ap) __va_end(ap)
#else /* _WIN64 */
typedef char *va_list;
#define va_start(ap,last) ap = ((char *)&(last)) + ((sizeof(last)+7)&~7)
#define va_arg(ap,type) (ap += (sizeof(type)+7)&~7, *(type *)(ap - ((sizeof(type)+7)&~7)))
#define va_copy(dest, src) (dest) = (src)
#define va_end(ap)
#endif
#else /* __i386__ */
#define _X86_
typedef char *va_list;
/* only correct for i386 */
#define va_start(ap,last) ap = ((char *)&(last)) + ((sizeof(last)+3)&~3)
#define va_arg(ap,type) (ap += (sizeof(type)+3)&~3, *(type *)(ap - ((sizeof(type)+3)&~3)))
#define va_copy(dest, src) (dest) = (src)
#define va_end(ap)
#endif
#define _CRTIMP extern
#define __CRT_INLINE extern __inline__
#define _CRT_ALIGN(x) __attribute__((aligned(x)))
#define DECLSPEC_ALIGN(x) __attribute__((aligned(x)))
#define _CRT_PACKING 8
#define __CRT_UNALIGNED
#define _CONST_RETURN
#define __CRT_STRINGIZE(_Value) #_Value
#define _CRT_STRINGIZE(_Value) __CRT_STRINGIZE(_Value)
#define __CRT_WIDE(_String) L ## _String
#define _CRT_WIDE(_String) __CRT_WIDE(_String)
//////////////////////////////////////基础Windows定义//////////////////////////////////////
#define WINAPI __stdcall
typedef void * HKEY,HANDLE;
typedef HKEY *PHKEY, *LPHKEY;
typedef HANDLE * PHANDLE, *LPHANDLE;
typedef DWORD REGSAM;
//
// File System time stamps are represented with the following structure:
//
typedef struct _FILETIME {
DWORD dwLowDateTime;
DWORD dwHighDateTime;
} FILETIME, *PFILETIME, *LPFILETIME;
#define _FILETIME_
//Dism++ API 版本号 1.2
#define __DismAPIVersion__ 0x0102
////////////////////////////////////////////////////////////////
// 枚举
typedef enum
{
DismPackageStateUnknown = 0,
DismPackageStateNotPresent,
DismPackageStateUnintallRequested,
DismPackageStateStaged, //暂存
DismPackageStateStaging, //正在暂存
DismPackageStateInstalled, //更新已经安装
DismPackageStateInstallRequested, //安装挂起
DismPackageStateSuperseded, //该更新已经被取代
DismPackageStatePartiallInstalled, //部分安装
DismPackageStateRemoved, //已经删除
DismPackageStatePermanent //永久固化更新包
} DismPackageState;
typedef enum
{
DismFeatureStateUnknown = 0,
DismFeatureStateNotPresent,
DismFeatureStateUnintallRequested, //该功能已经关闭但是未生效
DismFeatureStateDisable, //该功能已经关闭
DismFeatureStateStaging,
DismFeatureStateEnable, //该功能被启动
DismFeatureStateEnableRequested, //该功能已经启动,但是未生效
DismFeatureStateSuperseded, //该功能已经被取代
DismFeatureStatePartiallInstalled, //该功能部分安装
DismFeatureStateRemoved //该功能已经删除
} DismFeatureState;
typedef enum
{
DismPackageFullyOfflineUnknow = 0,
DismPackageFullyOfflineInatallable,
DismPackageFullyOfflineNotInatallable,
} DismFullyOfflineInstallableState;
typedef enum
{
DismDriverSinStatusUnknow = 0,
DismDriverSinStatusUnsigned,
DismDriverSinStatusSinged
} DismDriverSinStatus;
typedef enum
{
DriverShowAll = 0,
DriverShowInbox = 1,
DriverShowOutOfBox = 2
} DriverShowEnum;
typedef enum
{
DismMountedImageStatusValid = 0,
DismMountedImageStatusMounting = 1,
DismMountedImageStatusInvalid = 2,
DismMountedImageStatusNeedsRemount = 4
} DismMountedImageStatus;
typedef enum
{
WimImageFile,
VhdImageFile
}DismImageFileTpye;
//WIM或者esd文件的压缩类型
typedef enum
{
//未知压缩类型
Compress_Unknown = -1,
//仅存储,不压缩文件
Compress_None = 0,
//此压缩方式支持WIMBOOT启动
Compress_XpressHuffman = 1,
//快速压缩,可以节省压缩时间并且可以减少提交占用
Compress_Xpress = 2,
//最大压缩,可以节省空间
Compress_LZX = 3,
//极限压缩,非常耗费时间,但是体积最小
Compress_LZMS = 4,
}DismCompressTpye;
typedef enum
{
//启动类型未知,可能是系统启动项,也可能是Dism无法识别的其他启动类型,为了安全性Dism++无法修改启动类型未知的项目
DismServiceStartTypeUnknown = -1,
//该服务已经关闭
DismServiceStartTypeDisable,
//该服务为手动启动
DismServiceStartTypeManual,
//该服务是自动启动
DismServiceStartTypeAuto,
//该服务是延迟启动,注意有_不可延迟标记的无法修改为延迟启动,会返回参数错误
DismServiceStartTypeDelayed
}DismServiceStartType;
typedef enum
{
//状态未知
DismSystemStatusUnknown = -1,
//准备就绪
DismSystemStatusReady,
//该系统不支持Dism++
DismSystemStatusNotSupported,
//找不到系统,目标目录无法访问或者路径不存在
DismSystemStatusCannotFind,
//挂载已经失效,需要删除
DismSystemStatusNeedRemove,
//请稍等
DismSystemStatusWait
}DismSystemStatus;
typedef enum
{
DismEnvironmentDefault = 0, //32位系统获得32位目录,64位系统获取64位路径
DismEnvironment64Only, //仅仅获取64位路径,对于32位系统会失败!
DismEnvironment86Only, //总是返回32位路径
}DismEnvironmentType;
typedef enum
{
DismImageHealthy = 0, //映像十分健康不需要修复
DismImageRepairable = 1, //映像已经受损,但是可以修复
DismImageNonRepairable = 2 //映像�
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
Dism-v10.1.2002.101.b.zip (44个子文件)
Dism-v10.1.2002.101.b
Dism++ARM64.exe 1.3MB
Dism++x86.exe 891KB
Dism++x64.exe 1.17MB
Config
Config.ini 976B
include
Dism++.h 30KB
arm64
CBSHost.dll 187KB
NCleaner.dll 63KB
amd64
CBSHost.dll 174KB
wimgapi.dll 728KB
CScript.dll 119KB
bcdboot.exe 188KB
wofadk.sys 216KB
NCleaner.dll 47KB
Plugins
FrogPlugins_Pcn7FMvReAsVWfCQBfRJCw
Plugin.amd64.dll 132KB
PluginRes.dll 630KB
Plugin.x86.dll 99KB
Plugin.arm64.dll 128KB
UpdateInfoBeta.zip 15KB
wsusscn2.cab 28.64MB
Dism++.log 250B
Data.zip 45KB
default.ui.zip 38KB
Languages
fr.zip 40KB
hu.zip 39KB
en.zip 37KB
cs.zip 39KB
it.zip 38KB
ko.zip 39KB
ru.zip 42KB
pt.zip 39KB
de.zip 39KB
bg.zip 42KB
zh-Hans.zip 7KB
es.zip 37KB
pl-PL.zip 39KB
tr.zip 38KB
ja.zip 38KB
zh-Hant.zip 34KB
x86
CBSHost.dll 130KB
wimgapi.dll 613KB
CScript.dll 103KB
bcdboot.exe 158KB
wofadk.sys 186KB
NCleaner.dll 38KB
共 44 条
- 1
资源评论
douluo998
- 粉丝: 2133
- 资源: 5357
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功