WinCopyAccelTable
Appearance
This function is used to get the accelerator-table data corresponding to an accelerator-table handle, or to determine the size of the accelerator-table data.
Syntax
WinCopyAccelTable(hAccel, pacctAccelTable, ulCopyMax);
Parameters
- hAccel (HACCEL) - input
- Accelerator-table handle.
- pacctAccelTable (PACCELTABLE) - in/out
- Accelerator-table data area.
- NULL
- Return the size, in bytes, of the complete accelerator table, and ignore the ulCopyMax parameter.
- Other
- Copy up to ulCopyMax bytes of the accelerator table into this data area.
- ulCopyMax (ULONG) - input
- Maximum data area size.
- ulCopied (ULONG) - returns
- Amount copied or size required.
- Other
- Amount of data copied into the data area, or the size of data area required for the complete accelerator table.
- 0
- Error occurred.
Returns
- ulCopied (ULONG) - returns
- Amount copied or size required.
- Other
- Amount of data copied into the data area, or the size of data area required for the complete accelerator table.
- 0
- Error occurred.
Error
Possible returns from WinGetLastError
- PMERR_INVALID_HACCEL (0x101A)
- An invalid accelerator-table handle was specified.
Remarks
Example Code
This example gets the accelerator-table data corresponding to an accelerator-table handle returned by WinCreateAccelTable or WinLoadAccelTable and assigns the accelerator table code page to a variable.
#define INCL_WINACCELERATORS /* Window Accelerator Functions */ #include <os2.h> ULONG ulCopied; /* bytes copied */ HACCEL hAccel; /* Accelerator-table handle */ ACCELTABLE pacctAccelTable;/* Accelerator-table data area */ ULONG ulCopyMax; /* Maximum data area size */ ULONG ulAccelCP; /* code page */ ulCopyMax = sizeof(pacctAccelTable); if (hAccel) ulCopied = WinCopyAccelTable(hAccel, &pacctAccelTable, ulCopyMax); if (ulCopied) ulAccelCP = pacctAccelTable.codepage;
Definition
#define INCL_WINACCELERATORS /* Or use INCL_WIN, INCL_PM, */ #include <os2.h> HACCEL hAccel; /* Accelerator-table handle. */ PACCELTABLE pacctAccelTable; /* Accelerator-table data area. */ ULONG ulCopyMax; /* Maximum data area size. */ ULONG ulCopied; /* Amount copied or size required. */ ulCopied = WinCopyAccelTable(hAccel, pacctAccelTable, ulCopyMax);
Related Functions
- WinCreateAccelTable
- WinDestroyAccelTable
- WinLoadAccelTable
- WinQueryAccelTable
- WinSetAccelTable
- WinTranslateAccel