ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

winbase16.h
Go to the documentation of this file.
00001 /*
00002  * Copyright (C) the Wine project
00003  *
00004  * This library is free software; you can redistribute it and/or
00005  * modify it under the terms of the GNU Lesser General Public
00006  * License as published by the Free Software Foundation; either
00007  * version 2.1 of the License, or (at your option) any later version.
00008  *
00009  * This library is distributed in the hope that it will be useful,
00010  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00011  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00012  * Lesser General Public License for more details.
00013  *
00014  * You should have received a copy of the GNU Lesser General Public
00015  * License along with this library; if not, write to the Free Software
00016  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
00017  */
00018 
00019 #ifndef __WINE_WINE_WINBASE16_H
00020 #define __WINE_WINE_WINBASE16_H
00021 
00022 #include <stdarg.h>
00023 #include <windef.h>
00024 #include <winbase.h>
00025 #include <winnls.h>
00026 #include <wine/windef16.h>
00027 #include <wine/library.h>
00028 
00029 #include <pshpack1.h>
00030 
00031 /* Process database (i.e. a normal DOS PSP) */
00032 typedef struct
00033 {
00034     WORD      int20;            /* 00 int 20h instruction */
00035     WORD      nextParagraph;    /* 02 Segment of next paragraph */
00036     BYTE      reserved1;
00037     BYTE      dispatcher[5];    /* 05 Long call to DOS */
00038     FARPROC16 savedint22;       /* 0a Saved int 22h handler */
00039     FARPROC16 savedint23;       /* 0e Saved int 23h handler */
00040     FARPROC16 savedint24;       /* 12 Saved int 24h handler */
00041     WORD      parentPSP;        /* 16 Selector of parent PSP */
00042     BYTE      fileHandles[20];  /* 18 Open file handles */
00043     HANDLE16  environment;      /* 2c Selector of environment */
00044     DWORD     saveStack;        /* 2e SS:SP on last int21 call */
00045     WORD      nbFiles;          /* 32 Number of file handles */
00046     SEGPTR    fileHandlesPtr;   /* 34 Pointer to file handle table */
00047     HANDLE16  hFileHandles;     /* 38 Handle to fileHandlesPtr */
00048     WORD      reserved3[17];
00049     BYTE      fcb1[16];         /* 5c First FCB */
00050     BYTE      fcb2[20];         /* 6c Second FCB */
00051     BYTE      cmdLine[128];     /* 80 Command-line (first byte is len)*/
00052     BYTE      padding[16];      /* Some apps access beyond the end of the cmd line */
00053 } PDB16;
00054 
00055 /* Task database. See 'Windows Internals' p. 226.
00056  * Note that 16-bit OLE 2 libs like to read it directly
00057  * so we have to keep entry offsets as they are.
00058  */
00059 typedef struct _TDB
00060 {
00061     HTASK16   hNext;              /* 00 Selector of next TDB */
00062     DWORD     ss_sp;              /* 02 Stack pointer of task */
00063     WORD      nEvents;            /* 06 Events for this task */
00064     INT16     priority;           /* 08 Task priority, -32..15 */
00065     WORD      unused1;            /* 0a */
00066     HTASK16   hSelf;              /* 0c Selector of this TDB */
00067     HANDLE16  hPrevInstance;      /* 0e Previous instance of module */
00068     DWORD     unused2;            /* 10 */
00069     WORD      ctrlword8087;       /* 14 80x87 control word */
00070     WORD      flags;              /* 16 Task flags */
00071     UINT16    error_mode;         /* 18 Error mode (see SetErrorMode)*/
00072     WORD      version;            /* 1a Expected Windows version */
00073     HANDLE16  hInstance;          /* 1c Instance handle for task */
00074     HMODULE16 hModule;            /* 1e Module handle */
00075     HQUEUE16  hQueue;             /* 20 Selector of task queue */
00076     HTASK16   hParent;            /* 22 Selector of TDB of parent */
00077     WORD      signal_flags;       /* 24 Flags for signal handler */
00078     FARPROC16 sighandler;         /* 26 Signal handler */
00079     FARPROC16 userhandler;        /* 2a USER signal handler */
00080     FARPROC16 discardhandler;     /* 2e Handler for GlobalNotify() */
00081     FARPROC16 int0;               /* 32 int 0 (divide by 0) handler */
00082     FARPROC16 int2;               /* 36 int 2 (NMI) handler */
00083     FARPROC16 int4;               /* 3a int 4 (INTO) handler */
00084     FARPROC16 int6;               /* 3e int 6 (invalid opc) handler */
00085     FARPROC16 int7;               /* 42 int 7 (coprocessor) handler */
00086     FARPROC16 int3e;              /* 46 int 3e (80x87 emu) handler */
00087     FARPROC16 int75;              /* 4a int 75 (80x87 error) handler */
00088     DWORD     compat_flags;       /* 4e Compatibility flags */
00089     BYTE      unused4[2];         /* 52 */
00090     struct _TEB *teb;             /* 54 Pointer to thread database */
00091     BYTE      unused5[8];         /* 58 */
00092     HANDLE16  hPDB;               /* 60 Selector of PDB (i.e. PSP) */
00093     SEGPTR    dta;                /* 62 Current DTA */
00094     BYTE      curdrive;           /* 66 Current drive */
00095     CHAR      curdir[65];         /* 67 Current directory */
00096     WORD      nCmdShow;           /* a8 cmdShow parameter to WinMain */
00097     HTASK16   hYieldTo;           /* aa Next task to schedule */
00098     DWORD     dlls_to_init;       /* ac Ptr to DLLs to initialize */
00099     HANDLE16  hCSAlias;           /* b0 Code segment for this TDB */
00100     WORD      thunks[8*4];        /* b2 Make proc instance thunks */
00101     CHAR      module_name[8];     /* f2 Module name for task */
00102     WORD      magic;              /* fa TDB signature */
00103     HANDLE    hEvent;             /* fc scheduler event handle */
00104     PDB16     pdb;                /* 100 PDB for this task */
00105 } TDB;
00106 
00107 /* TDB flags */
00108 #define TDBF_WINOLDAP   0x0001
00109 #define TDBF_OS2APP     0x0008
00110 #define TDBF_WIN32      0x0010
00111 
00112 /* Windows 3.1 USER signals */
00113 #define USIG16_TERMINATION      0x0020
00114 #define USIG16_DLL_LOAD         0x0040
00115 #define USIG16_DLL_UNLOAD       0x0080
00116 #define USIG16_GPF              0x0666
00117 
00118 typedef struct _SEGINFO {
00119     UINT16    offSegment;
00120     UINT16    cbSegment;
00121     UINT16    flags;
00122     UINT16    cbAlloc;
00123     HGLOBAL16 h;
00124     UINT16    alignShift;
00125     UINT16    reserved[2];
00126 } SEGINFO;
00127 
00128 /* GetWinFlags */
00129 
00130 #define WF_PMODE    0x0001
00131 #define WF_CPU286   0x0002
00132 #define WF_CPU386   0x0004
00133 #define WF_CPU486   0x0008
00134 #define WF_STANDARD 0x0010
00135 #define WF_WIN286   0x0010
00136 #define WF_ENHANCED 0x0020
00137 #define WF_WIN386   0x0020
00138 #define WF_CPU086   0x0040
00139 #define WF_CPU186   0x0080
00140 #define WF_LARGEFRAME   0x0100
00141 #define WF_SMALLFRAME   0x0200
00142 #define WF_80x87    0x0400
00143 #define WF_PAGING   0x0800
00144 #define WF_HASCPUID     0x2000
00145 #define WF_WIN32WOW     0x4000  /* undoc */
00146 #define WF_WLO          0x8000
00147 
00148 /* Parameters for LoadModule() */
00149 typedef struct
00150 {
00151     HGLOBAL16 hEnvironment; /* Environment segment */
00152     SEGPTR    cmdLine;      /* Command-line */
00153     SEGPTR    showCmd;      /* Code for ShowWindow() */
00154     SEGPTR    reserved;
00155 } LOADPARAMS16;
00156 
00157 /* Debugging support (DEBUG SYSTEM ONLY) */
00158 typedef struct
00159 {
00160     WORD    flags;
00161     DWORD   dwOptions;
00162     DWORD   dwFilter;
00163     CHAR    achAllocModule[8];
00164     DWORD   dwAllocBreak;
00165     DWORD   dwAllocCount;
00166 } WINDEBUGINFO16, *LPWINDEBUGINFO16;
00167 
00168 /* definitions specific to Wine 16-bit relaying support */
00169 
00170 /* 32-bit stack layout after __wine_call_to_16() */
00171 typedef struct _STACK32FRAME
00172 {
00173     DWORD   restore_addr;   /* 00 return address for restoring code selector */
00174     DWORD   codeselector;   /* 04 code selector to restore */
00175     EXCEPTION_REGISTRATION_RECORD frame;  /* 08 Exception frame */
00176     SEGPTR  frame16;        /* 10 16-bit frame from last CallFrom16() */
00177     DWORD   edi;            /* 14 saved registers */
00178     DWORD   esi;            /* 18 */
00179     DWORD   ebx;            /* 1c */
00180     DWORD   ebp;            /* 20 saved 32-bit frame pointer */
00181     DWORD   retaddr;        /* 24 return address */
00182     DWORD   target;         /* 28 target address / CONTEXT86 pointer */
00183     DWORD   nb_args;        /* 2c number of 16-bit argument bytes */
00184 } STACK32FRAME;
00185 
00186 /* 16-bit stack layout after __wine_call_from_16() */
00187 typedef struct _STACK16FRAME
00188 {
00189     STACK32FRAME *frame32;        /* 00 32-bit frame from last CallTo16() */
00190     DWORD         edx;            /* 04 saved registers */
00191     DWORD         ecx;            /* 08 */
00192     DWORD         ebp;            /* 0c */
00193     WORD          ds;             /* 10 */
00194     WORD          es;             /* 12 */
00195     WORD          fs;             /* 14 */
00196     WORD          gs;             /* 16 */
00197     DWORD         callfrom_ip;    /* 18 callfrom tail IP */
00198     DWORD         module_cs;      /* 1c module code segment */
00199     DWORD         relay;          /* 20 relay function address */
00200     WORD          entry_ip;       /* 22 entry point IP */
00201     DWORD         entry_point;    /* 26 API entry point to call, reused as mutex count */
00202     WORD          bp;             /* 2a 16-bit stack frame chain */
00203     WORD          ip;             /* 2c return address */
00204     WORD          cs;             /* 2e */
00205 } STACK16FRAME;
00206 
00207 /* argument type flags for relay debugging */
00208 enum arg_types
00209 {
00210     ARG_NONE = 0, /* indicates end of arg list */
00211     ARG_WORD,     /* unsigned word */
00212     ARG_SWORD,    /* signed word */
00213     ARG_LONG,     /* long or segmented pointer */
00214     ARG_PTR,      /* linear pointer */
00215     ARG_STR,      /* linear pointer to null-terminated string */
00216     ARG_SEGSTR,   /* segmented pointer to null-terminated string */
00217     ARG_VARARG    /* start of varargs */
00218 };
00219 
00220 #include <poppack.h>
00221 
00222 #define INVALID_HANDLE_VALUE16  ((HANDLE16) -1)
00223 #define INFINITE16      0xFFFF
00224 
00225 typedef struct {
00226         DWORD dwOSVersionInfoSize;
00227         DWORD dwMajorVersion;
00228         DWORD dwMinorVersion;
00229         DWORD dwBuildNumber;
00230         DWORD dwPlatformId;
00231         CHAR szCSDVersion[128];
00232 } OSVERSIONINFO16;
00233 
00234 
00235 /*
00236  * NE Header FORMAT FLAGS
00237  */
00238 #define NE_FFLAGS_SINGLEDATA    0x0001
00239 #define NE_FFLAGS_MULTIPLEDATA  0x0002
00240 #define NE_FFLAGS_WIN32         0x0010
00241 #define NE_FFLAGS_BUILTIN       0x0020  /* Wine built-in module */
00242 #define NE_FFLAGS_FRAMEBUF      0x0100  /* OS/2 fullscreen app */
00243 #define NE_FFLAGS_CONSOLE       0x0200  /* OS/2 console app */
00244 #define NE_FFLAGS_GUI           0x0300  /* right, (NE_FFLAGS_FRAMEBUF | NE_FFLAGS_CONSOLE) */
00245 #define NE_FFLAGS_SELFLOAD      0x0800
00246 #define NE_FFLAGS_LINKERROR     0x2000
00247 #define NE_FFLAGS_CALLWEP       0x4000
00248 #define NE_FFLAGS_LIBMODULE     0x8000
00249 
00250 /*
00251  * NE Header OPERATING SYSTEM
00252  */
00253 #define NE_OSFLAGS_UNKNOWN      0x01
00254 #define NE_OSFLAGS_WINDOWS      0x04
00255 
00256 /*
00257  * NE Header ADDITIONAL FLAGS
00258  */
00259 #define NE_AFLAGS_WIN2_PROTMODE 0x02
00260 #define NE_AFLAGS_WIN2_PROFONTS 0x04
00261 #define NE_AFLAGS_FASTLOAD      0x08
00262 
00263 /*
00264  * Segment Flags
00265  */
00266 #define NE_SEGFLAGS_DATA        0x0001
00267 #define NE_SEGFLAGS_ALLOCATED   0x0002
00268 #define NE_SEGFLAGS_LOADED      0x0004
00269 #define NE_SEGFLAGS_ITERATED    0x0008
00270 #define NE_SEGFLAGS_MOVEABLE    0x0010
00271 #define NE_SEGFLAGS_SHAREABLE   0x0020
00272 #define NE_SEGFLAGS_PRELOAD     0x0040
00273 #define NE_SEGFLAGS_EXECUTEONLY 0x0080
00274 #define NE_SEGFLAGS_READONLY    0x0080
00275 #define NE_SEGFLAGS_RELOC_DATA  0x0100
00276 #define NE_SEGFLAGS_SELFLOAD    0x0800
00277 #define NE_SEGFLAGS_DISCARDABLE 0x1000
00278 #define NE_SEGFLAGS_32BIT       0x2000
00279 
00280 /*
00281  * Resource table structures.
00282  */
00283 typedef struct
00284 {
00285     WORD     offset;
00286     WORD     length;
00287     WORD     flags;
00288     WORD     id;
00289     HANDLE16 handle;
00290     WORD     usage;
00291 } NE_NAMEINFO;
00292 
00293 typedef struct
00294 {
00295     WORD        type_id;   /* Type identifier */
00296     WORD        count;     /* Number of resources of this type */
00297     FARPROC16   resloader; /* SetResourceHandler() */
00298     /*
00299      * Name info array.
00300      */
00301 } NE_TYPEINFO;
00302 
00303 #define NE_RSCTYPE_CURSOR         0x8001
00304 #define NE_RSCTYPE_BITMAP         0x8002
00305 #define NE_RSCTYPE_ICON           0x8003
00306 #define NE_RSCTYPE_MENU           0x8004
00307 #define NE_RSCTYPE_DIALOG         0x8005
00308 #define NE_RSCTYPE_STRING         0x8006
00309 #define NE_RSCTYPE_FONTDIR        0x8007
00310 #define NE_RSCTYPE_FONT           0x8008
00311 #define NE_RSCTYPE_ACCELERATOR    0x8009
00312 #define NE_RSCTYPE_RCDATA         0x800a
00313 #define NE_RSCTYPE_GROUP_CURSOR   0x800c
00314 #define NE_RSCTYPE_GROUP_ICON     0x800e
00315 
00316 
00317 #define __AHSHIFT  3  /* don't change! */
00318 #define __AHINCR   (1 << __AHSHIFT)
00319 
00320 
00321 typedef struct tagSYSLEVEL
00322 {
00323     CRITICAL_SECTION crst;
00324     INT              level;
00325 } SYSLEVEL;
00326 
00327 /* undocumented functions */
00328 WORD        WINAPI AllocCStoDSAlias16(WORD);
00329 WORD        WINAPI AllocDStoCSAlias16(WORD);
00330 HGLOBAL16   WINAPI AllocResource16(HINSTANCE16,HRSRC16,DWORD);
00331 WORD        WINAPI AllocSelector16(WORD);
00332 WORD        WINAPI AllocSelectorArray16(WORD);
00333 VOID        WINAPI DirectedYield16(HTASK16);
00334 HGLOBAL16   WINAPI DirectResAlloc16(HINSTANCE16,WORD,UINT16);
00335 HANDLE16    WINAPI FarGetOwner16(HGLOBAL16);
00336 VOID        WINAPI FarSetOwner16(HGLOBAL16,HANDLE16);
00337 FARPROC16   WINAPI FileCDR16(FARPROC16);
00338 WORD        WINAPI FreeSelector16(WORD);
00339 HANDLE16    WINAPI GetAtomHandle16(ATOM);
00340 HANDLE16    WINAPI GetCodeHandle16(FARPROC16);
00341 BOOL16      WINAPI GetCodeInfo16(FARPROC16,SEGINFO*);
00342 DWORD       WINAPI GetCurrentPDB16(void);
00343 HTASK16     WINAPI GetCurrentTask(void);
00344 SEGPTR      WINAPI GetDOSEnvironment16(void);
00345 HMODULE16   WINAPI GetExePtr(HANDLE16);
00346 WORD        WINAPI GetExeVersion16(void);
00347 WORD        WINAPI GetExpWinVer16(HMODULE16);
00348 HQUEUE16    WINAPI GetFastQueue16(void);
00349 DWORD       WINAPI GetHeapSpaces16(HMODULE16);
00350 INT16       WINAPI GetInstanceData16(HINSTANCE16,WORD,INT16);
00351 BOOL16      WINAPI GetModuleName16(HINSTANCE16,LPSTR,INT16);
00352 INT16       WINAPI GetModuleUsage16(HINSTANCE16);
00353 UINT16      WINAPI GetNumTasks16(void);
00354 SEGPTR      WINAPI GetpWin16Lock16(void);
00355 DWORD       WINAPI GetSelectorLimit16(WORD);
00356 FARPROC16   WINAPI GetSetKernelDOSProc16(FARPROC16 DosProc);
00357 HINSTANCE16 WINAPI GetTaskDS16(void);
00358 HQUEUE16    WINAPI GetTaskQueue16(HTASK16);
00359 HQUEUE16    WINAPI GetThreadQueue16(DWORD);
00360 DWORD       WINAPI GetWinFlags16(void);
00361 DWORD       WINAPI GlobalDOSAlloc16(DWORD);
00362 WORD        WINAPI GlobalDOSFree16(WORD);
00363 void        WINAPI GlobalFreeAll16(HGLOBAL16);
00364 DWORD       WINAPI GlobalHandleNoRIP16(WORD);
00365 WORD        WINAPI GlobalHandleToSel16(HGLOBAL16);
00366 HGLOBAL16   WINAPI GlobalLRUNewest16(HGLOBAL16);
00367 HGLOBAL16   WINAPI GlobalLRUOldest16(HGLOBAL16);
00368 VOID        WINAPI GlobalNotify16(FARPROC16);
00369 WORD        WINAPI GlobalPageLock16(HGLOBAL16);
00370 WORD        WINAPI GlobalPageUnlock16(HGLOBAL16);
00371 SEGPTR      WINAPI HasGPHandler16(SEGPTR);
00372 BOOL16      WINAPI IsSharedSelector16(HANDLE16);
00373 BOOL16      WINAPI IsTask16(HTASK16);
00374 HTASK16     WINAPI IsTaskLocked16(void);
00375 VOID        WINAPI LogError16(UINT16, LPVOID);
00376 VOID        WINAPI LogParamError16(UINT16,FARPROC16,LPVOID);
00377 WORD        WINAPI LocalCountFree16(void);
00378 WORD        WINAPI LocalHandleDelta16(WORD);
00379 WORD        WINAPI LocalHeapSize16(void);
00380 BOOL16      WINAPI LocalInit16(HANDLE16,WORD,WORD);
00381 FARPROC16   WINAPI LocalNotify16(FARPROC16);
00382 HTASK16     WINAPI LockCurrentTask16(BOOL16);
00383 VOID        WINAPI OldYield16(void);
00384 VOID        WINAPI WIN32_OldYield16(void);
00385 VOID        WINAPI PostEvent16(HTASK16);
00386 WORD        WINAPI PrestoChangoSelector16(WORD,WORD);
00387 WORD        WINAPI SelectorAccessRights16(WORD,WORD,WORD);
00388 void        WINAPI SetFastQueue16(DWORD,HQUEUE16);
00389 VOID        WINAPI SetPriority16(HTASK16,INT16);
00390 FARPROC16   WINAPI SetResourceHandler16(HINSTANCE16,LPCSTR,FARPROC16);
00391 WORD        WINAPI SetSelectorLimit16(WORD,DWORD);
00392 HQUEUE16    WINAPI SetTaskQueue16(HTASK16,HQUEUE16);
00393 HQUEUE16    WINAPI SetThreadQueue16(DWORD,HQUEUE16);
00394 VOID        WINAPI SwitchStackTo16(WORD,WORD,WORD);
00395 BOOL16      WINAPI WaitEvent16(HTASK16);
00396 VOID        WINAPI WriteOutProfiles16(void);
00397 VOID        WINAPI hmemcpy16(LPVOID,LPCVOID,LONG);
00398 VOID        WINAPI _CreateSysLevel(SYSLEVEL*,INT);
00399 VOID        WINAPI _EnterWin16Lock(void);
00400 VOID        WINAPI _LeaveWin16Lock(void);
00401 
00402 
00403 INT16       WINAPI AccessResource16(HINSTANCE16,HRSRC16);
00404 ATOM        WINAPI AddAtom16(LPCSTR);
00405 UINT16      WINAPI CompareString16(DWORD,DWORD,LPCSTR,DWORD,LPCSTR,DWORD);
00406 BOOL16      WINAPI CreateDirectory16(LPCSTR,LPVOID);
00407 BOOL16      WINAPI DefineHandleTable16(WORD);
00408 ATOM        WINAPI DeleteAtom16(ATOM);
00409 BOOL16      WINAPI DeleteFile16(LPCSTR);
00410 void        WINAPI ExitKernel16(void);
00411 void        WINAPI FatalAppExit16(UINT16,LPCSTR);
00412 ATOM        WINAPI FindAtom16(LPCSTR);
00413 BOOL16      WINAPI FindClose16(HANDLE16);
00414 VOID        WINAPI FreeLibrary16(HINSTANCE16);
00415 HANDLE16    WINAPI FindFirstFile16(LPCSTR,LPWIN32_FIND_DATAA);
00416 BOOL16      WINAPI FindNextFile16(HANDLE16,LPWIN32_FIND_DATAA);
00417 HRSRC16     WINAPI FindResource16(HINSTANCE16,LPCSTR,LPCSTR);
00418 BOOL16      WINAPI FreeModule16(HMODULE16);
00419 void        WINAPI FreeProcInstance16(FARPROC16);
00420 BOOL16      WINAPI FreeResource16(HGLOBAL16);
00421 UINT16      WINAPI GetAtomName16(ATOM,LPSTR,INT16);
00422 UINT16      WINAPI GetCurrentDirectory16(UINT16,LPSTR);
00423 BOOL16      WINAPI GetDiskFreeSpace16(LPCSTR,LPDWORD,LPDWORD,LPDWORD,LPDWORD);
00424 UINT16      WINAPI GetDriveType16(UINT16); /* yes, the arguments differ */
00425 INT16       WINAPI GetLocaleInfo16(LCID,LCTYPE,LPSTR,INT16);
00426 DWORD       WINAPI GetFileAttributes16(LPCSTR);
00427 DWORD       WINAPI GetFreeSpace16(UINT16);
00428 INT16       WINAPI GetModuleFileName16(HINSTANCE16,LPSTR,INT16);
00429 HMODULE16   WINAPI GetModuleHandle16(LPCSTR);
00430 UINT16      WINAPI GetPrivateProfileInt16(LPCSTR,LPCSTR,INT16,LPCSTR);
00431 INT16       WINAPI GetPrivateProfileSection16(LPCSTR,LPSTR,UINT16,LPCSTR);
00432 WORD        WINAPI GetPrivateProfileSectionNames16(LPSTR,UINT16,LPCSTR);
00433 INT16       WINAPI GetPrivateProfileString16(LPCSTR,LPCSTR,LPCSTR,LPSTR,UINT16,LPCSTR);
00434 BOOL16      WINAPI GetPrivateProfileStruct16(LPCSTR,LPCSTR,LPVOID,UINT16,LPCSTR);
00435 FARPROC16   WINAPI GetProcAddress16(HMODULE16,LPCSTR);
00436 UINT16      WINAPI GetProfileInt16(LPCSTR,LPCSTR,INT16);
00437 INT16       WINAPI GetProfileSection16(LPCSTR,LPSTR,UINT16);
00438 WORD        WINAPI GetProfileSectionNames16(LPSTR,WORD);
00439 INT16       WINAPI GetProfileString16(LPCSTR,LPCSTR,LPCSTR,LPSTR,UINT16);
00440 DWORD       WINAPI GetSelectorBase(WORD);
00441 BOOL16      WINAPI GetStringType16(LCID,DWORD,LPCSTR,INT16,LPWORD);
00442 UINT16      WINAPI GetSystemDirectory16(LPSTR,UINT16);
00443 UINT16      WINAPI GetTempFileName16(BYTE,LPCSTR,UINT16,LPSTR);
00444 DWORD       WINAPI GetVersion16(void);
00445 BOOL16      WINAPI GetVersionEx16(OSVERSIONINFO16*);
00446 BOOL16      WINAPI GetWinDebugInfo16(LPWINDEBUGINFO16,UINT16);
00447 UINT16      WINAPI GetWindowsDirectory16(LPSTR,UINT16);
00448 HGLOBAL16   WINAPI GlobalAlloc16(UINT16,DWORD);
00449 DWORD       WINAPI GlobalCompact16(DWORD);
00450 LPVOID      WINAPI GlobalLock16(HGLOBAL16);
00451 WORD        WINAPI GlobalFix16(HGLOBAL16);
00452 UINT16      WINAPI GlobalFlags16(HGLOBAL16);
00453 HGLOBAL16   WINAPI GlobalFree16(HGLOBAL16);
00454 DWORD       WINAPI GlobalHandle16(WORD);
00455 HGLOBAL16   WINAPI GlobalReAlloc16(HGLOBAL16,DWORD,UINT16);
00456 DWORD       WINAPI GlobalSize16(HGLOBAL16);
00457 VOID        WINAPI GlobalUnfix16(HGLOBAL16);
00458 BOOL16      WINAPI GlobalUnlock16(HGLOBAL16);
00459 BOOL16      WINAPI GlobalUnWire16(HGLOBAL16);
00460 SEGPTR      WINAPI GlobalWire16(HGLOBAL16);
00461 WORD        WINAPI InitAtomTable16(WORD);
00462 BOOL16      WINAPI IsBadCodePtr16(SEGPTR);
00463 BOOL16      WINAPI IsBadHugeReadPtr16(SEGPTR,DWORD);
00464 BOOL16      WINAPI IsBadHugeWritePtr16(SEGPTR,DWORD);
00465 BOOL16      WINAPI IsBadReadPtr16(SEGPTR,UINT16);
00466 BOOL16      WINAPI IsBadStringPtr16(SEGPTR,UINT16);
00467 BOOL16      WINAPI IsBadWritePtr16(SEGPTR,UINT16);
00468 BOOL16      WINAPI IsDBCSLeadByte16(BYTE);
00469 HINSTANCE16 WINAPI LoadLibrary16(LPCSTR);
00470 HINSTANCE16 WINAPI LoadModule16(LPCSTR,LPVOID);
00471 HGLOBAL16   WINAPI LoadResource16(HINSTANCE16,HRSRC16);
00472 HLOCAL16    WINAPI LocalAlloc16(UINT16,WORD);
00473 UINT16      WINAPI LocalCompact16(UINT16);
00474 UINT16      WINAPI LocalFlags16(HLOCAL16);
00475 HLOCAL16    WINAPI LocalFree16(HLOCAL16);
00476 HLOCAL16    WINAPI LocalHandle16(WORD);
00477 SEGPTR      WINAPI LocalLock16(HLOCAL16);
00478 HLOCAL16    WINAPI LocalReAlloc16(HLOCAL16,WORD,UINT16);
00479 UINT16      WINAPI LocalShrink16(HGLOBAL16,UINT16);
00480 UINT16      WINAPI LocalSize16(HLOCAL16);
00481 BOOL16      WINAPI LocalUnlock16(HLOCAL16);
00482 LPVOID      WINAPI LockResource16(HGLOBAL16);
00483 HGLOBAL16   WINAPI LockSegment16(HGLOBAL16);
00484 FARPROC16   WINAPI MakeProcInstance16(FARPROC16,HANDLE16);
00485 HFILE16     WINAPI OpenFile16(LPCSTR,OFSTRUCT*,UINT16);
00486 DWORD       WINAPI RegCloseKey16(HKEY);
00487 DWORD       WINAPI RegCreateKey16(HKEY,LPCSTR,PHKEY);
00488 DWORD       WINAPI RegDeleteKey16(HKEY,LPCSTR);
00489 DWORD       WINAPI RegDeleteValue16(HKEY,LPSTR);
00490 DWORD       WINAPI RegEnumKey16(HKEY,DWORD,LPSTR,DWORD);
00491 DWORD       WINAPI RegEnumValue16(HKEY,DWORD,LPSTR,LPDWORD,LPDWORD,LPDWORD,LPBYTE,LPDWORD);
00492 DWORD       WINAPI RegOpenKey16(HKEY,LPCSTR,PHKEY);
00493 DWORD       WINAPI RegQueryValue16(HKEY,LPCSTR,LPSTR,LPDWORD);
00494 DWORD       WINAPI RegQueryValueEx16(HKEY,LPCSTR,LPDWORD,LPDWORD,LPBYTE,LPDWORD);
00495 DWORD       WINAPI RegSetValue16(HKEY,LPCSTR,DWORD,LPCSTR,DWORD);
00496 DWORD       WINAPI RegSetValueEx16(HKEY,LPCSTR,DWORD,DWORD,CONST BYTE*,DWORD);
00497 BOOL16      WINAPI RemoveDirectory16(LPCSTR);
00498 BOOL16      WINAPI SetCurrentDirectory16(LPCSTR);
00499 UINT16      WINAPI SetErrorMode16(UINT16);
00500 BOOL16      WINAPI SetFileAttributes16(LPCSTR,DWORD);
00501 UINT16      WINAPI SetHandleCount16(UINT16);
00502 WORD        WINAPI SetSelectorBase(WORD,DWORD);
00503 LONG        WINAPI SetSwapAreaSize16(WORD);
00504 BOOL16      WINAPI SetWinDebugInfo16(LPWINDEBUGINFO16);
00505 DWORD       WINAPI SizeofResource16(HMODULE16,HRSRC16);
00506 void        WINAPI UnlockSegment16(HGLOBAL16);
00507 BOOL16      WINAPI WritePrivateProfileString16(LPCSTR,LPCSTR,LPCSTR,LPCSTR);
00508 BOOL16      WINAPI WriteProfileString16(LPCSTR,LPCSTR,LPCSTR);
00509 /* Yield16 will only be available from kernel module, use WOWYield instead */
00510 VOID        WINAPI Yield16(void);
00511 SEGPTR      WINAPI lstrcat16(SEGPTR,LPCSTR);
00512 SEGPTR      WINAPI lstrcatn16(SEGPTR,LPCSTR,INT16);
00513 SEGPTR      WINAPI lstrcpy16(SEGPTR,LPCSTR);
00514 SEGPTR      WINAPI lstrcpyn16(SEGPTR,LPCSTR,INT16);
00515 INT16       WINAPI lstrlen16(LPCSTR);
00516 HINSTANCE16 WINAPI WinExec16(LPCSTR,UINT16);
00517 LONG        WINAPI _hread16(HFILE16,LPVOID,LONG);
00518 LONG        WINAPI _hwrite16(HFILE16,LPCSTR,LONG);
00519 HFILE16     WINAPI _lcreat16(LPCSTR,INT16);
00520 HFILE16     WINAPI _lclose16(HFILE16);
00521 LONG        WINAPI _llseek16(HFILE16,LONG,INT16);
00522 HFILE16     WINAPI _lopen16(LPCSTR,INT16);
00523 UINT16      WINAPI _lread16(HFILE16,LPVOID,UINT16);
00524 UINT16      WINAPI _lwrite16(HFILE16,LPCSTR,UINT16);
00525 BOOL16      WINAPI WritePrivateProfileSection16(LPCSTR,LPCSTR,LPCSTR);
00526 BOOL16      WINAPI WritePrivateProfileStruct16(LPCSTR,LPCSTR,LPVOID,UINT16,LPCSTR);
00527 BOOL16      WINAPI WriteProfileSection16(LPCSTR,LPCSTR);
00528 
00529 /* Some optimizations */
00530 static inline LPVOID WINAPI MapSL( SEGPTR segptr )
00531 {
00532     return (char *)wine_ldt_copy.base[SELECTOROF(segptr) >> __AHSHIFT] + OFFSETOF(segptr);
00533 }
00534 
00535 #endif /* __WINE_WINE_WINBASE16_H */

Generated on Fri May 25 2012 04:31:50 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.