Int 21H [3.1] Function 44H (68) Subfunction 09H IOCTL: check if block device is remote

Checks whether the specified block device is local (attached to the computer running the program) or remote (redirected to a network server).

Call with:

AH = 44H

AL = 09H

BL = drive number (0 = default, 1 = A, 2 = B, etc.)

Returns:

If function successful

Carry flag = clear

DX = device attribute word

bit 12 = 0 if drive is local

1 if drive is remote

If function unsuccessful

Carry flag = set

AX = error code

Note:

Use of this subfunction should be avoided. Application programs should not distinguish between files on local and remote devices.

Example:

Check whether drive D is mounted on the machine running the program or is a network drive.

.

.

.

mov ax,4409h ; function & subfunction

mov bl,4 ; drive 4 = D

int 21h ; transfer to MS-DOS

jc error ; jump if function failed

and dx,1000h ; test local/remote bit

jnz remote ; jump if network drive

.

.

.