[Toc][Index]

DosMkDir2


Bindings:  C, MASM 

This call creates a subdirectory that has extended attributes associated 
with it. 
 DosMkDir2    (DirName, EABuf, Reserved) 
 
 DirName (PSZ) - input 
    Address of the ASCIIZ directory path name, which may or may not 
    contain a drive specification. If no drive is specified, the current 
    drive is assumed. 
    DosQSysInfo is called by an application during initialization to 
    determine the maximum path length allowed by OS/2. 
 EABuf (PEAOP) - input/output 
    Address of the extended attribute buffer, which contains an EAOP 
    structure. An EAOP structure has the following format: 
    fpGEAList (PGEALIST) 
       Address of GEAList. GEAList is a packed array of variable length 
       "get EA" structures, each containing an EA name and the length of 
       the name. 
    fpFEAList (PFEALIST) 
       Address of FEAList. FEAList is a packed array of variable length 
       "full EA" structures, each containing an EA name and its 
       corresponding value, as well as the lengths of the name and the 
       value. 
    oError (ULONG) 
       Offset into structure where error has occurred. 
       On input, the fpGEAList field and oError fields are ignored.  The 
       EA setting operation is performed on the information contained in 
       FEAList. If extended attributes are not to be defined or modified, 
       then EABuf must be set to null.  Following is the FEAList format: 
    cbList (ULONG) 
       Length of the FEA list, including the length itself. 
    list (FEA) 
       List of FEA structures.  An FEA structure has the following format: 
       
       Flags (BYTE) 
          Bit indicator describing the characteristics of the EA being 
          defined. 
          Bit       Description 
          7         Critical EA. 
          6-0       Reserved and must be set to zero. 
         
          If bit 7 is set to 1, this indicates a critical EA.  If bit 7 is 
          0, this means the EA is noncritical; that is, the EA is not 
          essential to the intended use by an application of the file with 
          which it is associated. 
       cbName (BYTE) 
          Length of EA ASCIIZ name, which does not include the null 
          character. 
       cbValue (USHORT) 
          Length of EA value, which cannot exceed 64KB. 
       szName (PSZ) 
          Address of the ASCIIZ name of EA. 
       aValue (PSZ) 
          Address of the free-format value of EA. 
       Note: 
          The szName and aValue fields are not included as part of header 
          or include files.  Because of their variable lengths, these 
          entries must be built manually. 
         
          On output, fpGEAList is unchanged.  fpFEAList is unchanged as is 
          the area pointed to by fpFEAList.  If an error occurred during 
          the set, oError is the offset of the FEA where the error 
          occurred.  The API return code is the error code corresponding 
          to the condition generating the error.  If no error occurred, 
          oError is undefined. 
         
          If EABuf is 0x00000000, then no extended attributes are defined 
          for the directory. 
 Reserved (ULONG) - input 
    Reserved and must be set to zero. 
 rc (USHORT) - return 
    Return code descriptions are: 
    0         NO_ERROR 
    3         ERROR_PATH_NOT_FOUND 
    5         ERROR_ACCESS_DENIED 
    26        ERROR_NOT_DOS_DISK 
    87        ERROR_INVALID_PARAMETER 
    108       ERROR_DRIVE_LOCKED 
    206       ERROR_FILENAME_EXCED_RANGE 
    254       ERROR_INVALID_EA_NAME 
    255       ERROR_EA_LIST_INCONSISTENT 
 
 Remarks 
 DosMkDir2 allows an application to define extended attributes for a 
 subdirectory at the time of its creation. 
 If any subdirectory names in the path do not exist, the subdirectory is 
 not created. Upon return, a subdirectory is created at the end of the 
 specified path. 
 DosQSysInfo must be used by an application to determine the maximum path 
 length supported by OS/2.  The returned value should be used to 
 dynamically allocate buffers that are to be used to store paths. 
 If a program  running with the NEWFILES bit set tries to create a 
 directory with blanks immediately preceding the dot on a FAT drive, the 
 system rejects the name.  For example, if c: is a FAT drive, the name 
 "file .txt" is rejected and the name "file.txt" is accepted. 

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