IoCreateSymbolicLink on Win 98 SE?

Hi,

Doesn’t the function IoCreateSymbolicLink use the convention
“\DosDevices\B:” as in Win NT and create a new drive on Windows 98 SE?
Or is the convention meant only for WinNT systems?

If then, how else can we create new drive on Windows 98 SE using WDM
drivers?

Regards,
Ram

It is called writing a VXD. The IO stack on Windows 98, 98SE, & 95 are all
VXDs.

----- Original Message -----
From: “Ram Kumar”
Newsgroups: ntfsd
To: “File Systems Developers”
Sent: Thursday, April 03, 2003 12:02 AM
Subject: [ntfsd] IoCreateSymbolicLink on Win 98 SE?

> Hi,
>
> Doesn’t the function IoCreateSymbolicLink use the convention
> “\DosDevices\B:” as in Win NT and create a new drive on Windows 98 SE?
> Or is the convention meant only for WinNT systems?
>
> If then, how else can we create new drive on Windows 98 SE using WDM
> drivers?
>
> Regards,
> Ram
>
>
>
> —
> You are currently subscribed to ntfsd as: xxxxx@yoshimuni.com
> To unsubscribe send a blank email to xxxxx@lists.osr.com
>

In Windows 98/98SE/Me there is WDMFS.SYS driver which is initialized during
system startup. This driver simply translates all WDM file operations
(NtCreateFile(), NtReadFile() etc.) to IFSMgr_Ring0_FileIO VXD service
calls.
So this driver during its initialization creates device objects with names
“\Devices\WDMFS_%c” and also creates symbolic links for these objects with
names “\DosDevices\%c:” (where %c is a drive letter) FOR ALL 26 POSSIBLE
DRIVE LETTERS!!! WDMFS.SYS also creates two useful symbolic links:
\SystemRoot" and “\DosDevices\SystemRoot” which connected with Windows
System Directory path.

P.S.
By the way, that’s why file operation calls in WDM drivers loaded before
IFSMGR.VXD module fail (simply NTKERN.VXD (NtXXXFile() functions reside in
this module) calls WDMFS.SYS driver (via IoCallDriver() function) which in
turn calls VXD services from VXD module that is not loaded yet). This
problem and its solution is
perfectly described by Walter Oney in his book or some article (excuse me I
don’t remember).

Konstantin Manurin
Programmer
Nival Interactive
mailto:xxxxx@nival.com

10a bld. 5, 1st Volokolamsky proezd
Moscow 123060 Russia
Tel: +7 (095) 363-9630
Fax: +7 (095) 363-9631
http://www.nival.com
http://www.etherlords.com
http://www.evil-islands.com

> If then, how else can we create new drive on Windows 98 SE using WDM

drivers?

You cannot. Win9x does not support WDM drivers in a storage stack.

Max

Thanks for the information.

Can you please let me know the bare minimum things required to write a VXD
as a network redirector?

I have the Microsoft latest DDK CD.

Could you suggest some better compilers, if any?
Any debugger which would be helpful?

Thanks & Regards,
Ram.

“Konstantin Manurin” wrote in message
news:xxxxx@ntfsd…
>
> In Windows 98/98SE/Me there is WDMFS.SYS driver which is initialized
during
> system startup. This driver simply translates all WDM file operations
> (NtCreateFile(), NtReadFile() etc.) to IFSMgr_Ring0_FileIO VXD service
> calls.
> So this driver during its initialization creates device objects with names
> “\Devices\WDMFS_%c” and also creates symbolic links for these objects
with
> names “\DosDevices\%c:” (where %c is a drive letter) FOR ALL 26 POSSIBLE
> DRIVE LETTERS!!! WDMFS.SYS also creates two useful symbolic links:
> \SystemRoot" and “\DosDevices\SystemRoot” which connected with Windows
> System Directory path.
>
> P.S.
> By the way, that’s why file operation calls in WDM drivers loaded before
> IFSMGR.VXD module fail (simply NTKERN.VXD (NtXXXFile() functions reside in
> this module) calls WDMFS.SYS driver (via IoCallDriver() function) which in
> turn calls VXD services from VXD module that is not loaded yet). This
> problem and its solution is
> perfectly described by Walter Oney in his book or some article (excuse me
I
> don’t remember).
>
>
> Konstantin Manurin
> Programmer
> Nival Interactive
> mailto:xxxxx@nival.com
>
> 10a bld. 5, 1st Volokolamsky proezd
> Moscow 123060 Russia
> Tel: +7 (095) 363-9630
> Fax: +7 (095) 363-9631
> http://www.nival.com
> http://www.etherlords.com
> http://www.evil-islands.com

“Ram Kumar” wrote in message
news:xxxxx@ntfsd…
>
> Hi,
>
> Doesn’t the function IoCreateSymbolicLink use the convention
> “\DosDevices\B:” as in Win NT and create a new drive on Windows 98 SE?
> Or is the convention meant only for WinNT systems?
>
> If then, how else can we create new drive on Windows 98 SE using WDM
> drivers?
>
> Regards,
> Ram
>
>
>
>