en:docs:fapi:dosmkdir

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
en:docs:fapi:dosmkdir [2018/08/28 02:11] prokusheven:docs:fapi:dosmkdir [2025/07/12 16:23] (current) prokushev
Line 1: Line 1:
-{{logos:os2.gif?35x35}} {{logos:dos.gif?35x35}}+{{page>en:templates:fapiint}} 
 ====== DosMkDir ====== ====== DosMkDir ======
  
 This call creates a subdirectory. This call creates a subdirectory.
  
-==Syntax== +===== Syntax =====
- DosMkDir (DirName, Reserved)+
  
-==Parameters== +<code c> 
-;DirName (PSZ) - input : Address of the ASCIIZ directory path name, which may or may not include a drive specification. If no drive is specified, the current drive is assumed. +DosMkDir (DirName, Reserved) 
-:DosQSysInfo is called by an application during initialization to determine the maximum path length allowed by OS/2+</code> 
-Reserved (ULONG) - input : Reserved and must be set to zero.+ 
 +===== Parameters ===== 
 + 
 + 
 +  DirName ([[PSZ]]) - input : Address of the ASCIIZ directory path name, which may or may not include 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. 
 + 
 +  *Reserved ([[ULONG]]) - input : Reserved and must be set to zero. 
 + 
 +===== Return Code ===== 
 + 
 +rc ([[USHORT]]) - return
  
-==Return Code== 
- rc (USHORT) - return 
 Return code descriptions are: 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 
  
-==Remarks==+  * 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 
 + 
 +===== Remarks ===== 
 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. 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.+[[DosQSysInfo]] must be used by an application to determine the maximum path length supported by OS. 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.  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. 
  
-==Example Code== +===== Example Code =====
-=== C Binding=== +
-<PRE> +
-#define INCL_DOSFILEMGR+
  
-USHORT  rc DosMkDir(DirName, Reserved);+==== C Binding ====
  
-PSZ              DirName;       /* New directory string name */ +<code c> 
-ULONG            0;             /* Reserved (must be zero) */+  #define INCL_DOSFILEMGR 
 +   
 +  USHORT  rc = DosMkDir(DirName, Reserved); 
 +   
 +  PSZ              DirName;       /* New directory string name */ 
 +  ULONG            0;             /* Reserved (must be zero) */ 
 +   
 +  USHORT           rc;            /* return code */ 
 +</code>
  
-USHORT           rc;            /* return code */ +==== MASM Binding ====
-</PRE>+
  
-===MASM Binding=== +<code asm
-<PRE+  EXTRN  DosMkDir:FAR 
-EXTRN  DosMkDir:FAR +  INCL_DOSFILEMGR     EQU 1 
-INCL_DOSFILEMGR     EQU 1 +   
- +  PUSH@  ASCIIZ  DirName       ;New directory name string 
-PUSH@  ASCIIZ  DirName       ;New directory name string +  PUSH   DWORD               ;Reserved (must be zero) 
-PUSH   DWORD               ;Reserved (must be zero) +  CALL   DosMkDir 
-CALL   DosMkDir+</code>
  
 Returns WORD Returns WORD
-</PRE> 
  
-=== Note ===+===== Note ===== 
  
 Text based on http://www.edm2.com/index.php/DosMkDir Text based on http://www.edm2.com/index.php/DosMkDir