source: Daodan/MSYS2/mingw32/i686-w64-mingw32/include/wdsclientapi.h@ 1167

Last change on this file since 1167 was 1166, checked in by rossy, 3 years ago

Daodan: Replace MinGW build env with an up-to-date MSYS2 env

File size: 4.8 KB
Line 
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6#ifndef _INC_WDSCLIENTAPI
7#define _INC_WDSCLIENTAPI
8#if (_WIN32_WINNT >= 0x0600)
9
10#ifdef __cplusplus
11extern "C" {
12#endif
13
14#define WDS_CLI_MSG_START 0
15#define WDS_CLI_MSG_COMPLETE 1
16#define WDS_CLI_MSG_PROGRESS 2
17#define WDS_CLI_MSG_TEXT 3
18
19#ifndef WDSCLIAPI
20#define WDSCLIAPI WINAPI
21#endif
22
23/* WdsClientAPI.dll is missing an implib because Vista clients don't have the dll to generate it from */
24
25typedef VOID (CALLBACK *PFN_WdsCliCallback)(
26 DWORD dwMessageId,
27 WPARAM wParam,
28 LPARAM lParam,
29 PVOID pvUserData
30);
31
32typedef VOID (WDSCLIAPI *PFN_WdsCliTraceFunction)(
33 LPCWSTR pwszFormat,
34 va_list Params
35);
36
37
38typedef enum _WDS_LOG_LEVEL {
39 WDS_LOG_LEVEL_DISABLED = 0,
40 WDS_LOG_LEVEL_ERROR = 1,
41 WDS_LOG_LEVEL_WARNING = 2,
42 WDS_LOG_LEVEL_INFO = 3
43} WDS_LOG_LEVEL;
44
45typedef enum _WDS_LOG_TYPE_CLIENT {
46 WDS_LOG_TYPE_CLIENT_ERROR = 1,
47 WDS_LOG_TYPE_CLIENT_STARTED,
48 WDS_LOG_TYPE_CLIENT_FINISHED,
49 WDS_LOG_TYPE_CLIENT_IMAGE_SELECTED,
50 WDS_LOG_TYPE_CLIENT_APPLY_STARTED,
51 WDS_LOG_TYPE_CLIENT_APPLY_FINISHED,
52 WDS_LOG_TYPE_CLIENT_GENERIC_MESSAGE,
53 WDS_LOG_TYPE_CLIENT_MAX_CODE
54} WDS_LOG_TYPE_CLIENT;
55
56typedef struct tagWDS_CLI_CRED {
57 PCWSTR pwszUserName;
58 PCWSTR pwszDomain;
59 PCWSTR pwszPassword;
60} WDS_CLI_CRED, *PWDS_CLI_CRED, *LPWDS_CLI_CRED;
61
62HRESULT WDSCLIAPI WdsCliAuthorizeSession(
63 HANDLE hSession,
64 PWDS_CLI_CRED pCred
65);
66
67HRESULT WDSCLIAPI WdsCliCancelTransfer(
68 HANDLE hTransfer
69);
70
71HRESULT WDSCLIAPI WdsCliClose(
72 HANDLE Handle
73);
74
75HRESULT WDSCLIAPI WdsCliCreateSession(
76 PWSTR pwszServer,
77 PWDS_CLI_CRED pCred,
78 PHANDLE phSession
79);
80
81HRESULT WDSCLIAPI WdsCliFindFirstImage(
82 HANDLE hSession,
83 PHANDLE phFindHandle
84);
85
86HRESULT WDSCLIAPI WdsCliFindNextImage(
87 HANDLE Handle
88);
89
90#define WdsCliFlagEnumFilterVersion 1
91
92HRESULT WDSCLIAPI WdsCliGetEnumerationFlags(
93 HANDLE Handle,
94 PDWORD pdwFlags
95);
96
97#define PROCESSOR_ARCHITECTURE_AMD64 9
98#define PROCESSOR_ARCHITECTURE_IA64 6
99#define PROCESSOR_ARCHITECTURE_INTEL 0
100
101HRESULT WDSCLIAPI WdsCliGetImageArchitecture(
102 HANDLE hIfh,
103 PDWORD pdwValue
104);
105
106HRESULT WDSCLIAPI WdsCliGetImageDescription(
107 HANDLE hIfh,
108 PWSTR *ppwszValue
109);
110
111HRESULT WDSCLIAPI WdsCliGetImageGroup(
112 HANDLE hIfh,
113 PWSTR *ppwszValue
114);
115
116HRESULT WDSCLIAPI WdsCliGetImageHalName(
117 HANDLE hIfh,
118 PWSTR *ppwszValue
119);
120
121HRESULT WDSCLIAPI WdsCliGetImageHandleFromFindHandle(
122 HANDLE FindHandle,
123 PHANDLE phImageHandle
124);
125
126HRESULT WDSCLIAPI WdsCliGetImageHandleFromTransferHandle(
127 HANDLE hTransfer,
128 PHANDLE phImageHandle
129);
130
131HRESULT WDSCLIAPI WdsCliGetImageIndex(
132 HANDLE hIfh,
133 PDWORD pdwValue
134);
135
136HRESULT WDSCLIAPI WdsCliGetImageLanguage(
137 HANDLE hIfh,
138 PWSTR *ppwszValue
139);
140
141HRESULT WDSCLIAPI WdsCliGetImageLanguages(
142 HANDLE hIfh,
143 PTSTR **pppszValues,
144 PDWORD pdwNumValues
145);
146
147HRESULT WDSCLIAPI WdsCliGetImageLastModifiedTime(
148 HANDLE hIfh,
149 PSYSTEMTIME *ppSysTimeValue
150);
151
152HRESULT WINAPI WdsCliGetImageName(
153 HANDLE hIfh,
154 PWSTR *ppwszValue
155);
156
157HRESULT WDSCLIAPI WdsCliGetImageNamespace(
158 HANDLE hIfh,
159 PWSTR *ppwszValue
160);
161
162HRESULT WDSCLIAPI WdsCliGetImagePath(
163 HANDLE hIfh,
164 PWSTR *ppwszValue
165);
166
167HRESULT WDSCLIAPI WdsCliGetImageSize(
168 HANDLE hIfh,
169 PULONGLONG pullValue
170);
171
172HRESULT WDSCLIAPI WdsCliGetImageVersion(
173 HANDLE hIfh,
174 PWSTR *ppwszValue
175);
176
177HRESULT WDSCLIAPI WdsCliGetTransferSize(
178 HANDLE hIfh,
179 PULONGLONG pullValue
180);
181
182HRESULT WDSCLIAPI WdsCliInitializeLog(
183 HANDLE hSession,
184 ULONG ulClientArchitecture,
185 PWSTR pwszClientId,
186 PWSTR pwszClientAddress
187);
188
189#define WDS_LOG_LEVEL_DISABLED 0
190#define WDS_LOG_LEVEL_ERROR 1
191#define WDS_LOG_LEVEL_WARNING 2
192#define WDS_LOG_LEVEL_INFO 3
193
194#define WDS_LOG_TYPE_CLIENT_ERROR 1
195#define WDS_LOG_TYPE_CLIENT_STARTED 2
196#define WDS_LOG_TYPE_CLIENT_FINISHED 3
197#define WDS_LOG_TYPE_CLIENT_IMAGE_SELECTED 4
198#define WDS_LOG_TYPE_CLIENT_APPLY_STARTED 5
199#define WDS_LOG_TYPE_CLIENT_APPLY_FINISHED 6
200#define WDS_LOG_TYPE_CLIENT_GENERIC_MESSAGE 7
201#define WDS_LOG_TYPE_CLIENT_MAX_CODE 8
202
203HRESULT __cdecl WdsCliLog(
204 HANDLE hSession,
205 ULONG ulLogLevel,
206 ULONG ulMessageCode,
207 ...
208);
209
210HRESULT WDSCLIAPI WdsCliRegisterTrace(
211 PFN_WdsCliTraceFunction pfn
212);
213
214HRESULT WDSCLIAPI WdsCliTransferFile(
215 PCWSTR pwszServer,
216 PCWSTR pwszNamespace,
217 PCWSTR pwszRemoteFilePath,
218 PCWSTR pwszLocalFilePath,
219 DWORD dwFlags,
220 DWORD dwReserved,
221 PFN_WdsCliCallback pfnWdsCliCallback,
222 PVOID pvUserData,
223 PHANDLE phTransfer
224);
225
226HRESULT WDSCLIAPI WdsCliTransferImage(
227 HANDLE hImage,
228 PWSTR pwszLocalPath,
229 DWORD dwFlags,
230 DWORD dwReserved,
231 PFN_WdsCliCallback pfnWdsCliCallback,
232 PVOID pvUserData,
233 PHANDLE phTransfer
234);
235
236HRESULT WDSCLIAPI WdsCliWaitForTransfer(
237 HANDLE hTransfer
238);
239
240#ifdef __cplusplus
241}
242#endif
243#endif /*(_WIN32_WINNT >= 0x0600)*/
244#endif /*_INC_WDSCLIENTAPI*/
Note: See TracBrowser for help on using the repository browser.