[Toc][Index]

DosCreateCSAlias


Bindings:  C, MASM 

This call creates a code segment alias descriptor for a data segment 
passed as input. 
 DosCreateCSAlias     (DataSelector, CodeSelector) 
 
 DataSelector (SEL) - input 
    Data segment selector. 
 CodeSelector (PSEL) - output 
    Address where the selector of the code segment alias descriptor is 
    returned. 
 rc (USHORT) - return 
    Return code descriptions are: 
    0         NO_ERROR 
    5         ERROR_ACCESS_DENIED 
 
 Remarks 
 A selector returned by a call to DosAllocSeg with no sharing options 
 specified can be used as the data segment specified with 
 DosCreateCSAlias.  However, to be CS alias, the segment must be a 
 privilege level 2 or privilege level 3 non-shared segment. 
 A CS alias segment must be exclusively accessible by the process and 
 cannot be a huge segment.  Selectors of shared memory segments and 
 dynamically linked global data segments cannot be used as input for 
 DosCreateCSAlias. 
 The code segment selector returned by DosCreateCSAlias is valid for CS. 
 If a procedure is stored in the data segment, it can be called using the 
 CS alias.  The procedure may be called from privilege level 3 or I/O 
 privilege level. 
 Use DosFreeSeg to free a CS alias selector created with DosCreateCSAlias. 
  Procedures in the segment can continue to be referenced if the data 
 selector for the aliased segment is passed to DosFreeSeg, because the CS 
 alias selector is not affected. Once both selectors have been passed to 
 DosFreeSeg, the segment is deallocated. 
 
 Family API Considerations 
 The returned selector is the segment address of the allocated memory. 
 When the returned selector or the original selector is freed, OS/2 
 immediately deallocates the block of memory. 

Created using Inf-PHP v.2 (c) 2003 Yuri Prokushev
Created using Inf-HTML v.0.9b (c) 1995 Peter Childs