2005-08-12 20:55:07 +00:00
|
|
|
/* $Id$
|
2002-09-04 22:19:47 +00:00
|
|
|
*/
|
|
|
|
/*
|
|
|
|
*
|
|
|
|
* COPYRIGHT: See COPYING in the top level directory
|
|
|
|
* PROJECT: ReactOS OS/2 sub system
|
|
|
|
* PART: doscalls.dll
|
|
|
|
* FILE: directory.cpp
|
|
|
|
* PURPOSE: Kernelservices for OS/2 apps
|
|
|
|
* CONTAINS: Directory related CP-functions.
|
|
|
|
* PROGRAMMER: Robert K. nonvolatil@yahoo.de
|
|
|
|
* REVISION HISTORY:
|
|
|
|
* 10-11-2002 Created
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
|
|
#define INCL_DOSFILEMGR
|
|
|
|
#define INCL_DOSERRORS
|
|
|
|
#include "ros2.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/******************************************
|
|
|
|
DosDelete removes a file name from a
|
|
|
|
directory. The deleted file may be
|
|
|
|
recoverable.
|
|
|
|
|
|
|
|
pszFile (PSZ) - input
|
|
|
|
Address of the name of the file to be deleted.
|
|
|
|
|
|
|
|
ulrc (APIRET) - returns
|
|
|
|
Return Code.
|
|
|
|
|
|
|
|
DosDelete returns one of the following values:
|
|
|
|
0 NO_ERROR
|
|
|
|
2 ERROR_FILE_NOT_FOUND
|
|
|
|
3 ERROR_PATH_NOT_FOUND
|
|
|
|
5 ERROR_ACCESS_DENIED
|
|
|
|
26 ERROR_NOT_DOS_DISK
|
|
|
|
32 ERROR_SHARING_VIOLATION
|
|
|
|
36 ERROR_SHARING_BUFFER_EXCEEDED
|
|
|
|
87 ERROR_INVALID_PARAMETER
|
|
|
|
206 ERROR_FILENAME_EXCED_RANGE
|
|
|
|
*******************************************/
|
|
|
|
APIRET DosDelete(PSZ pszFile)
|
|
|
|
{
|
|
|
|
return ERROR_CALL_NOT_IMPLEMENTED;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/******************************************
|
|
|
|
DosDeleteDir removes a subdirectory
|
|
|
|
from the specified disk.
|
|
|
|
|
|
|
|
pszDir (PSZ) - input
|
|
|
|
Address of the fully qualified path name of the subdirectory to be removed.
|
|
|
|
|
|
|
|
ulrc (APIRET) - returns
|
|
|
|
Return Code.
|
|
|
|
|
|
|
|
DosDeleteDir returns one of the following values:
|
|
|
|
|
|
|
|
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
|
|
|
|
******************************************/
|
|
|
|
APIRET DosDeleteDir(PSZ pszDir)
|
|
|
|
{
|
|
|
|
return ERROR_CALL_NOT_IMPLEMENTED;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/*******************************************
|
|
|
|
DosCopy copies the source file or
|
|
|
|
subdirectory to the destination file or
|
|
|
|
subdirectory.
|
|
|
|
|
|
|
|
pszOld (PSZ) - input
|
|
|
|
Address of the ASCIIZ path name of the source file,
|
|
|
|
subdirectory, or character device.
|
|
|
|
|
|
|
|
Global file-name characters are not allowed.
|
|
|
|
|
|
|
|
pszNew (PSZ) - input
|
|
|
|
Address of the ASCIIZ path name of the target file,
|
|
|
|
subdirectory, or character device.
|
|
|
|
|
|
|
|
Global file-name characters are not allowed.
|
|
|
|
|
|
|
|
option (ULONG) - input
|
|
|
|
ULONG bit flags that define how the DosCopy
|
|
|
|
function is done.
|
|
|
|
|
|
|
|
|
|
|
|
Bit Description
|
|
|
|
|
|
|
|
31-3 Reserved. These bits must be set to
|
|
|
|
zero.
|
|
|
|
|
|
|
|
2 DCPY_FAILEAS (0x00000004)
|
|
|
|
Discard the EAs if the source file
|
|
|
|
contains EAs and the destination file
|
|
|
|
system does not support EAs.
|
|
|
|
|
|
|
|
0 Discard the EAs (extended attributes) if
|
|
|
|
the destination file system does not
|
|
|
|
support EAs.
|
|
|
|
|
|
|
|
1 Fail the copy if the destination file
|
|
|
|
system does not support EAs.
|
|
|
|
|
|
|
|
1 DCPY_APPEND (x00000002)
|
|
|
|
Append the source file to the target
|
|
|
|
file's end of data.
|
|
|
|
|
|
|
|
0 Replace the target file with the source
|
|
|
|
file.
|
|
|
|
1 Append the source file to the target file's
|
|
|
|
end of data.
|
|
|
|
|
|
|
|
This is ignored when copying a
|
|
|
|
directory, or if the target file does not
|
|
|
|
exist.
|
|
|
|
|
|
|
|
0 DCPY_EXISTING (0x00000001)
|
|
|
|
Existing Target File Disposition.
|
|
|
|
|
|
|
|
0 Do not copy the source file to the target
|
|
|
|
if the file name already exists within the
|
|
|
|
target directory. If a single file is being
|
|
|
|
copied and the target already exists, an
|
|
|
|
error is returned.
|
|
|
|
|
|
|
|
1 Copy the source file to the target even if
|
|
|
|
the file name already exists within the
|
|
|
|
target directory.
|
|
|
|
|
|
|
|
Bit flag DCPY_FAILEAS can be used in
|
|
|
|
combination with bit flag DCPY_APPEND or
|
|
|
|
DCPY_EXISTING.
|
|
|
|
|
|
|
|
ulrc (APIRET) - returns
|
|
|
|
Return Code.
|
|
|
|
|
|
|
|
DosCopy returns one of the following values:
|
|
|
|
|
|
|
|
0 NO_ERROR
|
|
|
|
2 ERROR_FILE_NOT_FOUND
|
|
|
|
3 ERROR_PATH_NOT_FOUND
|
|
|
|
5 ERROR_ACCESS_DENIED
|
|
|
|
26 ERROR_NOT_DOS_DISK
|
|
|
|
32 ERROR_SHARING_VIOLATION
|
|
|
|
36 ERROR_SHARING_BUFFER_EXCEEDED
|
|
|
|
87 ERROR_INVALID_PARAMETER
|
|
|
|
108 ERROR_DRIVE_LOCKED
|
|
|
|
112 ERROR_DISK_FULL
|
|
|
|
206 ERROR_FILENAME_EXCED_RANGE
|
|
|
|
267 ERROR_DIRECTORY
|
|
|
|
282 ERROR_EAS_NOT_SUPPORTED
|
|
|
|
283 ERROR_NEED_EAS_FOUND
|
|
|
|
*******************************************/
|
|
|
|
APIRET DosCopy(PSZ pszOld,PSZ pszNew, ULONG option)
|
|
|
|
{
|
|
|
|
return ERROR_CALL_NOT_IMPLEMENTED;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/* EOF */
|