VirtualBox

source: vbox/trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/wine/winbase16.h@ 38565

最後變更 在這個檔案從38565是 33656,由 vboxsync 提交於 14 年 前

*: rebrand Sun (L)GPL disclaimers

  • 屬性 svn:eol-style 設為 native
檔案大小: 23.4 KB
 
1/*
2 * Copyright (C) the Wine project
3 *
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
8 *
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
13 *
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
17 */
18
19/*
20 * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
21 * other than GPL or LGPL is available it will apply instead, Oracle elects to use only
22 * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
23 * a choice of LGPL license versions is made available with the language indicating
24 * that LGPLv2 or any later version may be used, or where a choice of which version
25 * of the LGPL is applied is otherwise unspecified.
26 */
27
28#ifndef __WINE_WINE_WINBASE16_H
29#define __WINE_WINE_WINBASE16_H
30
31#include <stdarg.h>
32#include <windef.h>
33#include <winbase.h>
34#include <winnls.h>
35#include <wine/windef16.h>
36#include <wine/library.h>
37
38#include <pshpack1.h>
39
40/* Process database (i.e. a normal DOS PSP) */
41typedef struct
42{
43 WORD int20; /* 00 int 20h instruction */
44 WORD nextParagraph; /* 02 Segment of next paragraph */
45 BYTE reserved1;
46 BYTE dispatcher[5]; /* 05 Long call to DOS */
47 FARPROC16 savedint22; /* 0a Saved int 22h handler */
48 FARPROC16 savedint23; /* 0e Saved int 23h handler */
49 FARPROC16 savedint24; /* 12 Saved int 24h handler */
50 WORD parentPSP; /* 16 Selector of parent PSP */
51 BYTE fileHandles[20]; /* 18 Open file handles */
52 HANDLE16 environment; /* 2c Selector of environment */
53 DWORD saveStack; /* 2e SS:SP on last int21 call */
54 WORD nbFiles; /* 32 Number of file handles */
55 SEGPTR fileHandlesPtr; /* 34 Pointer to file handle table */
56 HANDLE16 hFileHandles; /* 38 Handle to fileHandlesPtr */
57 WORD reserved3[17];
58 BYTE fcb1[16]; /* 5c First FCB */
59 BYTE fcb2[20]; /* 6c Second FCB */
60 BYTE cmdLine[128]; /* 80 Command-line (first byte is len)*/
61 BYTE padding[16]; /* Some apps access beyond the end of the cmd line */
62} PDB16;
63
64/* Task database. See 'Windows Internals' p. 226.
65 * Note that 16-bit OLE 2 libs like to read it directly
66 * so we have to keep entry offsets as they are.
67 */
68typedef struct _TDB
69{
70 HTASK16 hNext; /* 00 Selector of next TDB */
71 DWORD ss_sp; /* 02 Stack pointer of task */
72 WORD nEvents; /* 06 Events for this task */
73 INT16 priority; /* 08 Task priority, -32..15 */
74 WORD unused1; /* 0a */
75 HTASK16 hSelf; /* 0c Selector of this TDB */
76 HANDLE16 hPrevInstance; /* 0e Previous instance of module */
77 DWORD unused2; /* 10 */
78 WORD ctrlword8087; /* 14 80x87 control word */
79 WORD flags; /* 16 Task flags */
80 UINT16 error_mode; /* 18 Error mode (see SetErrorMode)*/
81 WORD version; /* 1a Expected Windows version */
82 HANDLE16 hInstance; /* 1c Instance handle for task */
83 HMODULE16 hModule; /* 1e Module handle */
84 HQUEUE16 hQueue; /* 20 Selector of task queue */
85 HTASK16 hParent; /* 22 Selector of TDB of parent */
86 WORD signal_flags; /* 24 Flags for signal handler */
87 FARPROC16 sighandler; /* 26 Signal handler */
88 FARPROC16 userhandler; /* 2a USER signal handler */
89 FARPROC16 discardhandler; /* 2e Handler for GlobalNotify() */
90 FARPROC16 int0; /* 32 int 0 (divide by 0) handler */
91 FARPROC16 int2; /* 36 int 2 (NMI) handler */
92 FARPROC16 int4; /* 3a int 4 (INTO) handler */
93 FARPROC16 int6; /* 3e int 6 (invalid opc) handler */
94 FARPROC16 int7; /* 42 int 7 (coprocessor) handler */
95 FARPROC16 int3e; /* 46 int 3e (80x87 emu) handler */
96 FARPROC16 int75; /* 4a int 75 (80x87 error) handler */
97 DWORD compat_flags; /* 4e Compatibility flags */
98 BYTE unused4[2]; /* 52 */
99 struct _TEB *teb; /* 54 Pointer to thread database */
100 BYTE unused5[8]; /* 58 */
101 HANDLE16 hPDB; /* 60 Selector of PDB (i.e. PSP) */
102 SEGPTR dta; /* 62 Current DTA */
103 BYTE curdrive; /* 66 Current drive */
104 CHAR curdir[65]; /* 67 Current directory */
105 WORD nCmdShow; /* a8 cmdShow parameter to WinMain */
106 HTASK16 hYieldTo; /* aa Next task to schedule */
107 DWORD dlls_to_init; /* ac Ptr to DLLs to initialize */
108 HANDLE16 hCSAlias; /* b0 Code segment for this TDB */
109 WORD thunks[8*4]; /* b2 Make proc instance thunks */
110 CHAR module_name[8]; /* f2 Module name for task */
111 WORD magic; /* fa TDB signature */
112 HANDLE hEvent; /* fc scheduler event handle */
113 PDB16 pdb; /* 100 PDB for this task */
114} TDB;
115
116/* TDB flags */
117#define TDBF_WINOLDAP 0x0001
118#define TDBF_OS2APP 0x0008
119#define TDBF_WIN32 0x0010
120
121/* Windows 3.1 USER signals */
122#define USIG16_TERMINATION 0x0020
123#define USIG16_DLL_LOAD 0x0040
124#define USIG16_DLL_UNLOAD 0x0080
125#define USIG16_GPF 0x0666
126
127typedef struct _SEGINFO {
128 UINT16 offSegment;
129 UINT16 cbSegment;
130 UINT16 flags;
131 UINT16 cbAlloc;
132 HGLOBAL16 h;
133 UINT16 alignShift;
134 UINT16 reserved[2];
135} SEGINFO;
136
137/* GetWinFlags */
138
139#define WF_PMODE 0x0001
140#define WF_CPU286 0x0002
141#define WF_CPU386 0x0004
142#define WF_CPU486 0x0008
143#define WF_STANDARD 0x0010
144#define WF_WIN286 0x0010
145#define WF_ENHANCED 0x0020
146#define WF_WIN386 0x0020
147#define WF_CPU086 0x0040
148#define WF_CPU186 0x0080
149#define WF_LARGEFRAME 0x0100
150#define WF_SMALLFRAME 0x0200
151#define WF_80x87 0x0400
152#define WF_PAGING 0x0800
153#define WF_HASCPUID 0x2000
154#define WF_WIN32WOW 0x4000 /* undoc */
155#define WF_WLO 0x8000
156
157/* Parameters for LoadModule() */
158typedef struct
159{
160 HGLOBAL16 hEnvironment; /* Environment segment */
161 SEGPTR cmdLine; /* Command-line */
162 SEGPTR showCmd; /* Code for ShowWindow() */
163 SEGPTR reserved;
164} LOADPARAMS16;
165
166/* Debugging support (DEBUG SYSTEM ONLY) */
167typedef struct
168{
169 WORD flags;
170 DWORD dwOptions;
171 DWORD dwFilter;
172 CHAR achAllocModule[8];
173 DWORD dwAllocBreak;
174 DWORD dwAllocCount;
175} WINDEBUGINFO16, *LPWINDEBUGINFO16;
176
177/* definitions specific to Wine 16-bit relaying support */
178
179/* 32-bit stack layout after __wine_call_to_16() */
180typedef struct _STACK32FRAME
181{
182 DWORD restore_addr; /* 00 return address for restoring code selector */
183 DWORD codeselector; /* 04 code selector to restore */
184 EXCEPTION_REGISTRATION_RECORD frame; /* 08 Exception frame */
185 SEGPTR frame16; /* 10 16-bit frame from last CallFrom16() */
186 DWORD edi; /* 14 saved registers */
187 DWORD esi; /* 18 */
188 DWORD ebx; /* 1c */
189 DWORD ebp; /* 20 saved 32-bit frame pointer */
190 DWORD retaddr; /* 24 return address */
191 DWORD target; /* 28 target address / CONTEXT86 pointer */
192 DWORD nb_args; /* 2c number of 16-bit argument bytes */
193} STACK32FRAME;
194
195/* 16-bit stack layout after __wine_call_from_16() */
196typedef struct _STACK16FRAME
197{
198 STACK32FRAME *frame32; /* 00 32-bit frame from last CallTo16() */
199 DWORD edx; /* 04 saved registers */
200 DWORD ecx; /* 08 */
201 DWORD ebp; /* 0c */
202 WORD ds; /* 10 */
203 WORD es; /* 12 */
204 WORD fs; /* 14 */
205 WORD gs; /* 16 */
206 DWORD callfrom_ip; /* 18 callfrom tail IP */
207 DWORD module_cs; /* 1c module code segment */
208 DWORD relay; /* 20 relay function address */
209 WORD entry_ip; /* 22 entry point IP */
210 DWORD entry_point; /* 26 API entry point to call, reused as mutex count */
211 WORD bp; /* 2a 16-bit stack frame chain */
212 WORD ip; /* 2c return address */
213 WORD cs; /* 2e */
214} STACK16FRAME;
215
216/* argument type flags for relay debugging */
217enum arg_types
218{
219 ARG_NONE = 0, /* indicates end of arg list */
220 ARG_WORD, /* unsigned word */
221 ARG_SWORD, /* signed word */
222 ARG_LONG, /* long or segmented pointer */
223 ARG_PTR, /* linear pointer */
224 ARG_STR, /* linear pointer to null-terminated string */
225 ARG_SEGSTR, /* segmented pointer to null-terminated string */
226 ARG_VARARG /* start of varargs */
227};
228
229#include <poppack.h>
230
231#define INVALID_HANDLE_VALUE16 ((HANDLE16) -1)
232#define INFINITE16 0xFFFF
233
234typedef struct {
235 DWORD dwOSVersionInfoSize;
236 DWORD dwMajorVersion;
237 DWORD dwMinorVersion;
238 DWORD dwBuildNumber;
239 DWORD dwPlatformId;
240 CHAR szCSDVersion[128];
241} OSVERSIONINFO16;
242
243
244/*
245 * NE Header FORMAT FLAGS
246 */
247#define NE_FFLAGS_SINGLEDATA 0x0001
248#define NE_FFLAGS_MULTIPLEDATA 0x0002
249#define NE_FFLAGS_WIN32 0x0010
250#define NE_FFLAGS_BUILTIN 0x0020 /* Wine built-in module */
251#define NE_FFLAGS_FRAMEBUF 0x0100 /* OS/2 fullscreen app */
252#define NE_FFLAGS_CONSOLE 0x0200 /* OS/2 console app */
253#define NE_FFLAGS_GUI 0x0300 /* right, (NE_FFLAGS_FRAMEBUF | NE_FFLAGS_CONSOLE) */
254#define NE_FFLAGS_SELFLOAD 0x0800
255#define NE_FFLAGS_LINKERROR 0x2000
256#define NE_FFLAGS_CALLWEP 0x4000
257#define NE_FFLAGS_LIBMODULE 0x8000
258
259/*
260 * NE Header OPERATING SYSTEM
261 */
262#define NE_OSFLAGS_UNKNOWN 0x00
263#define NE_OSFLAGS_OS2 0x01
264#define NE_OSFLAGS_WINDOWS 0x02
265
266/*
267 * NE Header ADDITIONAL FLAGS
268 */
269#define NE_AFLAGS_WIN2_PROTMODE 0x02
270#define NE_AFLAGS_WIN2_PROFONTS 0x04
271#define NE_AFLAGS_FASTLOAD 0x08
272
273/*
274 * Segment Flags
275 */
276#define NE_SEGFLAGS_DATA 0x0001
277#define NE_SEGFLAGS_ALLOCATED 0x0002
278#define NE_SEGFLAGS_LOADED 0x0004
279#define NE_SEGFLAGS_ITERATED 0x0008
280#define NE_SEGFLAGS_MOVEABLE 0x0010
281#define NE_SEGFLAGS_SHAREABLE 0x0020
282#define NE_SEGFLAGS_PRELOAD 0x0040
283#define NE_SEGFLAGS_EXECUTEONLY 0x0080
284#define NE_SEGFLAGS_READONLY 0x0080
285#define NE_SEGFLAGS_RELOC_DATA 0x0100
286#define NE_SEGFLAGS_SELFLOAD 0x0800
287#define NE_SEGFLAGS_DISCARDABLE 0x1000
288#define NE_SEGFLAGS_32BIT 0x2000
289
290/*
291 * Resource table structures.
292 */
293typedef struct
294{
295 WORD offset;
296 WORD length;
297 WORD flags;
298 WORD id;
299 HANDLE16 handle;
300 WORD usage;
301} NE_NAMEINFO;
302
303typedef struct
304{
305 WORD type_id; /* Type identifier */
306 WORD count; /* Number of resources of this type */
307 FARPROC16 resloader; /* SetResourceHandler() */
308 /*
309 * Name info array.
310 */
311} NE_TYPEINFO;
312
313#define NE_RSCTYPE_CURSOR 0x8001
314#define NE_RSCTYPE_BITMAP 0x8002
315#define NE_RSCTYPE_ICON 0x8003
316#define NE_RSCTYPE_MENU 0x8004
317#define NE_RSCTYPE_DIALOG 0x8005
318#define NE_RSCTYPE_STRING 0x8006
319#define NE_RSCTYPE_FONTDIR 0x8007
320#define NE_RSCTYPE_FONT 0x8008
321#define NE_RSCTYPE_ACCELERATOR 0x8009
322#define NE_RSCTYPE_RCDATA 0x800a
323#define NE_RSCTYPE_GROUP_CURSOR 0x800c
324#define NE_RSCTYPE_GROUP_ICON 0x800e
325#define NE_RSCTYPE_SCALABLE_FONTPATH 0x80cc /* Resource found in .fot files */
326
327
328#define __AHSHIFT 3 /* don't change! */
329#define __AHINCR (1 << __AHSHIFT)
330
331/* undocumented functions */
332
333typedef struct tagSYSLEVEL
334{
335 CRITICAL_SECTION crst;
336 INT level;
337} SYSLEVEL;
338
339/* [GS]etProcessDword offsets */
340#define GPD_APP_COMPAT_FLAGS (-56)
341#define GPD_LOAD_DONE_EVENT (-52)
342#define GPD_HINSTANCE16 (-48)
343#define GPD_WINDOWS_VERSION (-44)
344#define GPD_THDB (-40)
345#define GPD_PDB (-36)
346#define GPD_STARTF_SHELLDATA (-32)
347#define GPD_STARTF_HOTKEY (-28)
348#define GPD_STARTF_SHOWWINDOW (-24)
349#define GPD_STARTF_SIZE (-20)
350#define GPD_STARTF_POSITION (-16)
351#define GPD_STARTF_FLAGS (-12)
352#define GPD_PARENT (- 8)
353#define GPD_FLAGS (- 4)
354#define GPD_USERDATA ( 0)
355
356WORD WINAPI AllocCStoDSAlias16(WORD);
357WORD WINAPI AllocDStoCSAlias16(WORD);
358HGLOBAL16 WINAPI AllocResource16(HINSTANCE16,HRSRC16,DWORD);
359WORD WINAPI AllocSelector16(WORD);
360WORD WINAPI AllocSelectorArray16(WORD);
361VOID WINAPI DirectedYield16(HTASK16);
362HGLOBAL16 WINAPI DirectResAlloc16(HINSTANCE16,WORD,UINT16);
363void WINAPI DisposeLZ32Handle(HANDLE);
364HANDLE WINAPI DosFileHandleToWin32Handle(HFILE);
365HANDLE16 WINAPI FarGetOwner16(HGLOBAL16);
366VOID WINAPI FarSetOwner16(HGLOBAL16,HANDLE16);
367FARPROC16 WINAPI FileCDR16(FARPROC16);
368WORD WINAPI FreeSelector16(WORD);
369HANDLE16 WINAPI GetAtomHandle16(ATOM);
370HANDLE16 WINAPI GetCodeHandle16(FARPROC16);
371BOOL16 WINAPI GetCodeInfo16(FARPROC16,SEGINFO*);
372DWORD WINAPI GetCurrentPDB16(void);
373HTASK16 WINAPI GetCurrentTask(void);
374SEGPTR WINAPI GetDOSEnvironment16(void);
375HMODULE16 WINAPI GetExePtr(HANDLE16);
376WORD WINAPI GetExeVersion16(void);
377WORD WINAPI GetExpWinVer16(HMODULE16);
378HQUEUE16 WINAPI GetFastQueue16(void);
379DWORD WINAPI GetHeapSpaces16(HMODULE16);
380INT16 WINAPI GetInstanceData16(HINSTANCE16,WORD,INT16);
381BOOL16 WINAPI GetModuleName16(HINSTANCE16,LPSTR,INT16);
382INT16 WINAPI GetModuleUsage16(HINSTANCE16);
383UINT16 WINAPI GetNumTasks16(void);
384VOID WINAPI GetpWin16Lock(SYSLEVEL**);
385SEGPTR WINAPI GetpWin16Lock16(void);
386DWORD WINAPI GetProcessDword(DWORD,INT);
387DWORD WINAPI GetSelectorLimit16(WORD);
388FARPROC16 WINAPI GetSetKernelDOSProc16(FARPROC16 DosProc);
389HINSTANCE16 WINAPI GetTaskDS16(void);
390HQUEUE16 WINAPI GetTaskQueue16(HTASK16);
391HQUEUE16 WINAPI GetThreadQueue16(DWORD);
392DWORD WINAPI GetWinFlags16(void);
393DWORD WINAPI GlobalDOSAlloc16(DWORD);
394WORD WINAPI GlobalDOSFree16(WORD);
395void WINAPI GlobalFreeAll16(HGLOBAL16);
396DWORD WINAPI GlobalHandleNoRIP16(WORD);
397WORD WINAPI GlobalHandleToSel16(HGLOBAL16);
398HGLOBAL16 WINAPI GlobalLRUNewest16(HGLOBAL16);
399HGLOBAL16 WINAPI GlobalLRUOldest16(HGLOBAL16);
400VOID WINAPI GlobalNotify16(FARPROC16);
401WORD WINAPI GlobalPageLock16(HGLOBAL16);
402WORD WINAPI GlobalPageUnlock16(HGLOBAL16);
403SEGPTR WINAPI HasGPHandler16(SEGPTR);
404BOOL16 WINAPI IsSharedSelector16(HANDLE16);
405BOOL16 WINAPI IsTask16(HTASK16);
406HTASK16 WINAPI IsTaskLocked16(void);
407VOID WINAPI LogError16(UINT16, LPVOID);
408VOID WINAPI LogParamError16(UINT16,FARPROC16,LPVOID);
409WORD WINAPI LocalCountFree16(void);
410WORD WINAPI LocalHandleDelta16(WORD);
411WORD WINAPI LocalHeapSize16(void);
412BOOL16 WINAPI LocalInit16(HANDLE16,WORD,WORD);
413FARPROC16 WINAPI LocalNotify16(FARPROC16);
414HTASK16 WINAPI LockCurrentTask16(BOOL16);
415DWORD WINAPI MapLS(LPCVOID);
416LPVOID WINAPI MapSL(DWORD);
417VOID WINAPI OldYield16(void);
418VOID WINAPI WIN32_OldYield16(void);
419VOID WINAPI PostEvent16(HTASK16);
420WORD WINAPI PrestoChangoSelector16(WORD,WORD);
421VOID WINAPI ReleaseThunkLock(DWORD*);
422VOID WINAPI RestoreThunkLock(DWORD);
423WORD WINAPI SelectorAccessRights16(WORD,WORD,WORD);
424void WINAPI SetFastQueue16(DWORD,HQUEUE16);
425VOID WINAPI SetPriority16(HTASK16,INT16);
426FARPROC16 WINAPI SetResourceHandler16(HINSTANCE16,LPCSTR,FARPROC16);
427WORD WINAPI SetSelectorLimit16(WORD,DWORD);
428HQUEUE16 WINAPI SetTaskQueue16(HTASK16,HQUEUE16);
429HQUEUE16 WINAPI SetThreadQueue16(DWORD,HQUEUE16);
430VOID WINAPI SwitchStackTo16(WORD,WORD,WORD);
431VOID WINAPI UnMapLS(DWORD);
432BOOL16 WINAPI WaitEvent16(HTASK16);
433HFILE WINAPI Win32HandleToDosFileHandle(HANDLE);
434VOID WINAPI WriteOutProfiles16(void);
435VOID WINAPI hmemcpy16(LPVOID,LPCVOID,LONG);
436VOID WINAPI _CheckNotSysLevel(SYSLEVEL *lock);
437DWORD WINAPI _ConfirmSysLevel(SYSLEVEL*);
438DWORD WINAPI _ConfirmWin16Lock(void);
439VOID WINAPI _CreateSysLevel(SYSLEVEL*,INT);
440VOID WINAPI _EnterSysLevel(SYSLEVEL*);
441VOID WINAPI _EnterWin16Lock(void);
442VOID WINAPI _LeaveSysLevel(SYSLEVEL*);
443VOID WINAPI _LeaveWin16Lock(void);
444
445
446INT16 WINAPI AccessResource16(HINSTANCE16,HRSRC16);
447ATOM WINAPI AddAtom16(LPCSTR);
448UINT16 WINAPI CompareString16(DWORD,DWORD,LPCSTR,DWORD,LPCSTR,DWORD);
449BOOL16 WINAPI CreateDirectory16(LPCSTR,LPVOID);
450BOOL16 WINAPI DefineHandleTable16(WORD);
451ATOM WINAPI DeleteAtom16(ATOM);
452BOOL16 WINAPI DeleteFile16(LPCSTR);
453void WINAPI ExitKernel16(void);
454void WINAPI FatalAppExit16(UINT16,LPCSTR);
455ATOM WINAPI FindAtom16(LPCSTR);
456BOOL16 WINAPI FindClose16(HANDLE16);
457VOID WINAPI FreeLibrary16(HINSTANCE16);
458HANDLE16 WINAPI FindFirstFile16(LPCSTR,LPWIN32_FIND_DATAA);
459BOOL16 WINAPI FindNextFile16(HANDLE16,LPWIN32_FIND_DATAA);
460HRSRC16 WINAPI FindResource16(HINSTANCE16,LPCSTR,LPCSTR);
461BOOL16 WINAPI FreeModule16(HMODULE16);
462void WINAPI FreeProcInstance16(FARPROC16);
463BOOL16 WINAPI FreeResource16(HGLOBAL16);
464UINT16 WINAPI GetAtomName16(ATOM,LPSTR,INT16);
465UINT16 WINAPI GetCurrentDirectory16(UINT16,LPSTR);
466BOOL16 WINAPI GetDiskFreeSpace16(LPCSTR,LPDWORD,LPDWORD,LPDWORD,LPDWORD);
467UINT16 WINAPI GetDriveType16(UINT16); /* yes, the arguments differ */
468INT16 WINAPI GetLocaleInfo16(LCID,LCTYPE,LPSTR,INT16);
469DWORD WINAPI GetFileAttributes16(LPCSTR);
470DWORD WINAPI GetFreeSpace16(UINT16);
471INT16 WINAPI GetModuleFileName16(HINSTANCE16,LPSTR,INT16);
472HMODULE16 WINAPI GetModuleHandle16(LPCSTR);
473UINT16 WINAPI GetPrivateProfileInt16(LPCSTR,LPCSTR,INT16,LPCSTR);
474INT16 WINAPI GetPrivateProfileSection16(LPCSTR,LPSTR,UINT16,LPCSTR);
475WORD WINAPI GetPrivateProfileSectionNames16(LPSTR,UINT16,LPCSTR);
476INT16 WINAPI GetPrivateProfileString16(LPCSTR,LPCSTR,LPCSTR,LPSTR,UINT16,LPCSTR);
477BOOL16 WINAPI GetPrivateProfileStruct16(LPCSTR,LPCSTR,LPVOID,UINT16,LPCSTR);
478FARPROC16 WINAPI GetProcAddress16(HMODULE16,LPCSTR);
479UINT16 WINAPI GetProfileInt16(LPCSTR,LPCSTR,INT16);
480INT16 WINAPI GetProfileSection16(LPCSTR,LPSTR,UINT16);
481WORD WINAPI GetProfileSectionNames16(LPSTR,WORD);
482INT16 WINAPI GetProfileString16(LPCSTR,LPCSTR,LPCSTR,LPSTR,UINT16);
483DWORD WINAPI GetSelectorBase(WORD);
484BOOL16 WINAPI GetStringType16(LCID,DWORD,LPCSTR,INT16,LPWORD);
485UINT16 WINAPI GetSystemDirectory16(LPSTR,UINT16);
486UINT16 WINAPI GetTempFileName16(BYTE,LPCSTR,UINT16,LPSTR);
487DWORD WINAPI GetVersion16(void);
488BOOL16 WINAPI GetVersionEx16(OSVERSIONINFO16*);
489BOOL16 WINAPI GetWinDebugInfo16(LPWINDEBUGINFO16,UINT16);
490UINT16 WINAPI GetWindowsDirectory16(LPSTR,UINT16);
491HGLOBAL16 WINAPI GlobalAlloc16(UINT16,DWORD);
492DWORD WINAPI GlobalCompact16(DWORD);
493LPVOID WINAPI GlobalLock16(HGLOBAL16);
494WORD WINAPI GlobalFix16(HGLOBAL16);
495UINT16 WINAPI GlobalFlags16(HGLOBAL16);
496HGLOBAL16 WINAPI GlobalFree16(HGLOBAL16);
497DWORD WINAPI GlobalHandle16(WORD);
498HGLOBAL16 WINAPI GlobalReAlloc16(HGLOBAL16,DWORD,UINT16);
499DWORD WINAPI GlobalSize16(HGLOBAL16);
500VOID WINAPI GlobalUnfix16(HGLOBAL16);
501BOOL16 WINAPI GlobalUnlock16(HGLOBAL16);
502BOOL16 WINAPI GlobalUnWire16(HGLOBAL16);
503SEGPTR WINAPI GlobalWire16(HGLOBAL16);
504WORD WINAPI InitAtomTable16(WORD);
505void WINAPI InitTask16(CONTEXT86*);
506BOOL16 WINAPI IsBadCodePtr16(SEGPTR);
507BOOL16 WINAPI IsBadHugeReadPtr16(SEGPTR,DWORD);
508BOOL16 WINAPI IsBadHugeWritePtr16(SEGPTR,DWORD);
509BOOL16 WINAPI IsBadReadPtr16(SEGPTR,UINT16);
510BOOL16 WINAPI IsBadStringPtr16(SEGPTR,UINT16);
511BOOL16 WINAPI IsBadWritePtr16(SEGPTR,UINT16);
512BOOL16 WINAPI IsDBCSLeadByte16(BYTE);
513HINSTANCE16 WINAPI LoadLibrary16(LPCSTR);
514HINSTANCE16 WINAPI LoadModule16(LPCSTR,LPVOID);
515HGLOBAL16 WINAPI LoadResource16(HINSTANCE16,HRSRC16);
516HLOCAL16 WINAPI LocalAlloc16(UINT16,WORD);
517UINT16 WINAPI LocalCompact16(UINT16);
518UINT16 WINAPI LocalFlags16(HLOCAL16);
519HLOCAL16 WINAPI LocalFree16(HLOCAL16);
520HLOCAL16 WINAPI LocalHandle16(WORD);
521SEGPTR WINAPI LocalLock16(HLOCAL16);
522HLOCAL16 WINAPI LocalReAlloc16(HLOCAL16,WORD,UINT16);
523UINT16 WINAPI LocalShrink16(HGLOBAL16,UINT16);
524UINT16 WINAPI LocalSize16(HLOCAL16);
525BOOL16 WINAPI LocalUnlock16(HLOCAL16);
526LPVOID WINAPI LockResource16(HGLOBAL16);
527HGLOBAL16 WINAPI LockSegment16(HGLOBAL16);
528FARPROC16 WINAPI MakeProcInstance16(FARPROC16,HANDLE16);
529HFILE16 WINAPI OpenFile16(LPCSTR,OFSTRUCT*,UINT16);
530DWORD WINAPI RegCloseKey16(HKEY);
531DWORD WINAPI RegCreateKey16(HKEY,LPCSTR,PHKEY);
532DWORD WINAPI RegDeleteKey16(HKEY,LPCSTR);
533DWORD WINAPI RegDeleteValue16(HKEY,LPSTR);
534DWORD WINAPI RegEnumKey16(HKEY,DWORD,LPSTR,DWORD);
535DWORD WINAPI RegEnumValue16(HKEY,DWORD,LPSTR,LPDWORD,LPDWORD,LPDWORD,LPBYTE,LPDWORD);
536DWORD WINAPI RegOpenKey16(HKEY,LPCSTR,PHKEY);
537DWORD WINAPI RegQueryValue16(HKEY,LPCSTR,LPSTR,LPDWORD);
538DWORD WINAPI RegQueryValueEx16(HKEY,LPCSTR,LPDWORD,LPDWORD,LPBYTE,LPDWORD);
539DWORD WINAPI RegSetValue16(HKEY,LPCSTR,DWORD,LPCSTR,DWORD);
540DWORD WINAPI RegSetValueEx16(HKEY,LPCSTR,DWORD,DWORD,CONST BYTE*,DWORD);
541BOOL16 WINAPI RemoveDirectory16(LPCSTR);
542BOOL16 WINAPI SetCurrentDirectory16(LPCSTR);
543UINT16 WINAPI SetErrorMode16(UINT16);
544BOOL16 WINAPI SetFileAttributes16(LPCSTR,DWORD);
545UINT16 WINAPI SetHandleCount16(UINT16);
546WORD WINAPI SetSelectorBase(WORD,DWORD);
547LONG WINAPI SetSwapAreaSize16(WORD);
548BOOL16 WINAPI SetWinDebugInfo16(LPWINDEBUGINFO16);
549DWORD WINAPI SizeofResource16(HMODULE16,HRSRC16);
550void WINAPI UnlockSegment16(HGLOBAL16);
551BOOL16 WINAPI WritePrivateProfileString16(LPCSTR,LPCSTR,LPCSTR,LPCSTR);
552BOOL16 WINAPI WriteProfileString16(LPCSTR,LPCSTR,LPCSTR);
553/* Yield16 will only be available from kernel module, use WOWYield instead */
554VOID WINAPI Yield16(void);
555SEGPTR WINAPI lstrcat16(SEGPTR,LPCSTR);
556SEGPTR WINAPI lstrcatn16(SEGPTR,LPCSTR,INT16);
557SEGPTR WINAPI lstrcpy16(SEGPTR,LPCSTR);
558SEGPTR WINAPI lstrcpyn16(SEGPTR,LPCSTR,INT16);
559INT16 WINAPI lstrlen16(LPCSTR);
560HINSTANCE16 WINAPI WinExec16(LPCSTR,UINT16);
561LONG WINAPI _hread16(HFILE16,LPVOID,LONG);
562LONG WINAPI _hwrite16(HFILE16,LPCSTR,LONG);
563HFILE16 WINAPI _lcreat16(LPCSTR,INT16);
564HFILE16 WINAPI _lclose16(HFILE16);
565LONG WINAPI _llseek16(HFILE16,LONG,INT16);
566HFILE16 WINAPI _lopen16(LPCSTR,INT16);
567UINT16 WINAPI _lread16(HFILE16,LPVOID,UINT16);
568UINT16 WINAPI _lwrite16(HFILE16,LPCSTR,UINT16);
569BOOL16 WINAPI WritePrivateProfileSection16(LPCSTR,LPCSTR,LPCSTR);
570BOOL16 WINAPI WritePrivateProfileStruct16(LPCSTR,LPCSTR,LPVOID,UINT16,LPCSTR);
571BOOL16 WINAPI WriteProfileSection16(LPCSTR,LPCSTR);
572
573#endif /* __WINE_WINE_WINBASE16_H */
注意: 瀏覽 TracBrowser 來幫助您使用儲存庫瀏覽器

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette