Jump to content

DosRmDir: Difference between revisions

From EDM2
Ak120 (talk | contribs)
mNo edit summary
Ak120 (talk | contribs)
mNo edit summary
 
(2 intermediate revisions by one other user not shown)
Line 1: Line 1:
This call removes a subdirectory from the specified disk.
This call removes a subdirectory from the specified disk.
This function has been renamed to "[[DosDeleteDir]]".


==Syntax==
==Syntax==
Line 11: Line 9:


==Return Code==
==Return Code==
rc (USHORT) - return
;rc (USHORT) - return:Return code descriptions are:
Return code descriptions are:
* 0 NO_ERROR
* 0       NO_ERROR  
* 2 ERROR_FILE_NOT_FOUND
* 2       ERROR_FILE_NOT_FOUND  
* 3 ERROR_PATH_NOT_FOUND
* 3       ERROR_PATH_NOT_FOUND  
* 5 ERROR_ACCESS_DENIED
* 5       ERROR_ACCESS_DENIED  
* 16 ERROR_CURRENT_DIRECTORY
* 16       ERROR_CURRENT_DIRECTORY  
* 26 ERROR_NOT_DOS_DISK
* 26       ERROR_NOT_DOS_DISK  
* 87 ERROR_INVALID_PARAMETER
* 87       ERROR_INVALID_PARAMETER  
*108 ERROR_DRIVE_LOCKED
* 108     ERROR_DRIVE_LOCKED  
*206 ERROR_FILENAME_EXCED_RANGE
* 206     ERROR_FILENAME_EXCED_RANGE


==Remarks==
==Remarks==
Line 28: Line 25:
The root directory and current directory cannot be removed.  
The root directory and current directory cannot be removed.  


==Example Code==
==Bindings==
=== C Binding===
===C===
<PRE>
<PRE>
#define INCL_DOSFILEMGR
#define INCL_DOSFILEMGR
Line 35: Line 32:
USHORT  rc = DosRmDir(DirName, Reserved);
USHORT  rc = DosRmDir(DirName, Reserved);


PSZ             DirName;      /* Directory name string */
PSZ     DirName;      /* Directory name string */
ULONG           0;            /* Reserved (must be zero) */
ULONG   0;            /* Reserved (must be zero) */


USHORT           rc;            /* return code */
USHORT rc;            /* return code */
</PRE>
</PRE>


===MASM Binding===
===MASM===
<PRE>
<PRE>
EXTRN  DosRmDir:FAR
EXTRN  DosRmDir:FAR
Line 53: Line 50:
</PRE>
</PRE>


==Related Functions==
[[Category:Dos16]]
* [[DosDelete]]
 
[[Category:Dos]]

Latest revision as of 06:36, 26 January 2020

This call removes a subdirectory from the specified disk.

Syntax

DosRmDir (DirName, Reserved)

Parameters

DirName (PSZ) - input
Address of the fully qualified path name of the subdirectory being removed.
Reserved (ULONG) - input
Reserved must be set to zero.

Return Code

rc (USHORT) - return
Return code descriptions are:
  • 0 NO_ERROR
  • 2 ERROR_FILE_NOT_FOUND
  • 3 ERROR_PATH_NOT_FOUND
  • 5 ERROR_ACCESS_DENIED
  • 16 ERROR_CURRENT_DIRECTORY
  • 26 ERROR_NOT_DOS_DISK
  • 87 ERROR_INVALID_PARAMETER
  • 108 ERROR_DRIVE_LOCKED
  • 206 ERROR_FILENAME_EXCED_RANGE

Remarks

The subdirectory must be empty, which means it cannot contain hidden files or directory entries other than the "." and ".." entries. Files can be deleted with DosDelete.

The root directory and current directory cannot be removed.

Bindings

C

#define INCL_DOSFILEMGR

USHORT  rc = DosRmDir(DirName, Reserved);

PSZ     DirName;       /* Directory name string */
ULONG   0;             /* Reserved (must be zero) */

USHORT  rc;            /* return code */

MASM

EXTRN  DosRmDir:FAR
INCL_DOSFILEMGR     EQU 1

PUSH@  ASCIIZ  DirName       ;Directory name string
PUSH   DWORD   0             ;Reserved (must be zero)
CALL   DosRmDir

Returns WORD