delorie.com/djgpp/doc/libc/libc_171.html   search  
libc.a reference

[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

_dos_getfileattr

Syntax

 
#include <dos.h>

unsigned int _dos_getfileattr(const char *filename,
                              unsigned int *p_attr);

Description

This function determines the attributes of given file and fills attr with it. Use the following constans (in DOS.H) to check this value.

_A_NORMAL (0x00)

Normal file (no read/write restrictions)

_A_RDONLY (0x01)

Read only file

_A_HIDDEN (0x02)

Hidden file

_A_SYSTEM (0x04)

System file

_A_VOLID (0x08)

Volume ID file

_A_SUBDIR (0x10)

Subdirectory

_A_ARCH (0x20)

Archive file

See section _dos_setfileattr.

This function does not support long filenames, even on systems where the LFN API (see section LFN) is available. For LFN-aware functions with similar functionality see _chmod. Also see chmod, access, and stat, which are Posix-standard.

Return Value

Returns with 0 if successful and DOS error value on error (and sets errno=ENOENT).

Portability

ANSI/ISO C No
POSIX No

Example

 
unsigned int attr;

if ( !_dos_getfileattr("FOO.DAT", &attr) )
{
  puts("FOO.DAT attributes are:");
  if ( attr & _A_ARCH )   puts("Archive");
  if ( attr & _A_RDONLY ) puts("Read only");
  if ( attr & _A_HIDDEN ) puts("Hidden");
  if ( attr & _A_SYSTEM ) puts("Is it part of DOS ?");
  if ( attr & _A_VOLID )  puts("Volume ID");
  if ( attr & _A_SUBDIR ) puts("Directory");
}
else
  puts("Unable to get FOO.DAT attributes.");

  webmaster     delorie software   privacy  
  Copyright © 2004     Updated Apr 2004