DosSizeSeg

This call returns the size of a segment.

Syntax
DosSizeSeg (Selector, Size)

Parameters

 * Selector (SEL) - input : Selector/segment of the segment for which size is to be determined. This must be the base selector in the case of a huge segment.
 * Size (PULONG) - output : Address of the returned segment size. For non-huge segments, size is in the range 0 through 64KB. For huge segments, size equals (NUMSEG << 16) + ASIZE where NUMSEG and ASIZE are the last values passed successfully to DosAllocHuge or DosReallocHuge for this huge segment.

Return Code

 * rc (USHORT) - return:Return code description is:
 * 0 NO_ERROR

Remarks
This function provides compatibility for family applications that must run in DOS or OS/2 mode. DosSizeSeg returns the actual size of memory allocated by a DosAllocSeg or DosAllocHuge request and is intended for use when the application is running in DOS mode, where allocations are rounded up to the next paragraph.

C

 * 1) define INCL_DOSMEMMGR

USHORT rc = DosSizeSeg(Selector, Size);

SEL    Selector;      /* Selector/Segment */ PULONG Size;          /* Size of segment (returned) */

USHORT rc;            /* return code */ 

MASM
 EXTRN DosSizeSeg:FAR INCL_DOSMEMMGR     EQU 1

PUSH  WORD    Selector      ;Selector/Segment PUSH@ DWORD   Size          ;Size of segment (returned) CALL  DosSizeSeg

Returns WORD 