[Back to DOS SWAG index] [Back to Main SWAG index] [Original]
{ Can one one post some code to check this please.}
{--------------------------------------------------------- Share loaded ? ---}
{ BAS VAN GAALEN }
function share_loaded : boolean; assembler; asm
mov ax,01000h; int 02fh; xor ah,ah; and al,0ffh; end;
{----------------------------------------------------------------------------}
{ ANDREW EIGUS
INT 2F - SHARE - INSTALLATION CHECK
AX = 1000h
Return: AL = 00h not installed, OK to install
01h not installed, not OK to install
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
function will return True here and it should not. So this one will work:
}
Function ShareDetected : boolean; assembler;
Asm
MOV AX,1000h
INT 2Fh
CMP AL,0FFh
JE @@1
MOV AL,False
JMP @@2
@@1:
MOV AL,True
@@2:
End; { ShareDetected }
{----------------------------------------------------------------------------}
{IAN LIN}
const
noshareinstall=0;
nosharenoinstall=1;
shareinstalled=$ff;
function shareloaded:byte;
assembler; asm
mov ax,$1000
int $2f
end;
INT 2F - SHARE - INSTALLATION CHECK
AX = 1000h
Return: AL = 00h not installed, OK to install
01h not installed, not OK to install
FFh installed
BUGS: values of AL other than 00h put DOS 3.x SHARE into an infinite loop
(08E9: OR AL,AL
08EB: JNZ 08EB) <- the buggy instruction (DOS 3.3)
values of AL other than described here put PC-DOS 4.00 into the same
loop (the buggy instructions are the same)
Notes: supported by OS/2 v1.3+ compatibility box, which always returns AL=FFh
if DOS 4.01 SHARE was automatically loaded, file sharing is in an
inactive state (due to the undocumented /NC flag used by the autoload
code) until this call is made
DOS 5+ chains to the previous handler if AL <> 00h on entry
Windows Enhanced mode hooks this call and reports that SHARE is
installed even when it is not
SeeAlso: AX=1080h,INT 21/AH=52h
[Back to DOS SWAG index] [Back to Main SWAG index] [Original]