Hi All,
I have been fighting some more with the problem I have the ImagePath
parameter in the registry.
It seems to me it is not possible to set ImagePath to a directory that is
not a subdirectory of the
SystemRoot.
I tried to to set ImagePath to something like C:\MyDir\MyDriver.sys (With
and wihtout quotes, no spaces in name etc). When I enable Boot Log I see the
following in NtBtLog.Txt:
Can’t load driver \SystemRoot\C:\MyDir\MyDriver.sys
To me this confirms that all pathnames must be a subdirectory of SystemRoot.
Is this correct ? I don’t see any of this mentioned in the DDK although some
text in the DDK hint at this.
Can any of the experts please confirm and/or tell me why this is so
Thx a bunch,
Jos
This is probably the case when the name does not begin
with backslash. You may find that in many cases there is
only “system32\drivers\something.sys” as the ImagePath.
However when the name begins with backslash it should be
uses as is. So you have to specify ??\C:\MyDir\MyDriver.sys.
Paul
-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com]On Behalf Of Jos Scherders
Sent: Saturday, March 09, 2002 10:28 PM
To: NT Developers Interest List
Subject: [ntdev] ImagePath again
Hi All,
I have been fighting some more with the problem I have the ImagePath
parameter in the registry.
It seems to me it is not possible to set ImagePath to a directory that is
not a subdirectory of the
SystemRoot.
I tried to to set ImagePath to something like C:\MyDir\MyDriver.sys (With
and wihtout quotes, no spaces in name etc). When I enable Boot Log I see the
following in NtBtLog.Txt:
Can’t load driver \SystemRoot\C:\MyDir\MyDriver.sys
To me this confirms that all pathnames must be a subdirectory of SystemRoot.
Is this correct ? I don’t see any of this mentioned in the DDK although some
text in the DDK hint at this.
Can any of the experts please confirm and/or tell me why this is so
Thx a bunch,
Jos
You are currently subscribed to ntdev as: xxxxx@compelson.com
To unsubscribe send a blank email to %%email.unsub%%
> Can’t load driver \SystemRoot\C:\MyDir\MyDriver.sys
Is the driver - the boot one? Then yes, only the SystemRoot is accessible.
Max
At 22.27 09/03/2002, you wrote:
I have been fighting some more with the problem I have the ImagePath
parameter in the registry.
It seems to me it is not possible to set ImagePath to a directory that is
not a subdirectory of the SystemRoot.
I tried to to set ImagePath to something like C:\MyDir\MyDriver.sys (With
and wihtout quotes, no spaces in name etc).
You are using a Win32 path, don’t expect the kernel to interpret them for
you. The only logic the kernel applies is: if path begins with '', it’s an
absolute path, use it verbatim, else it’s relative to \SystemRoot, prepend
"\SystemRoot". Try ??\C:\MyDir\MyDriver.sys
Since there’s a small but non-null chance that a machine doesn’t even
*have* drive letters, and a bigger chance that a certain drive letter is
user-specific (so the corresponding symlink isn’t created until logon, and
not inside ??), you shouldn’t expect Win32 paths to work at all either,
even if pre-interpreted. Better use physical paths:
\Device\Harddisk0\Partition1\MyDir\MyDriver.sys
\ArcName\multi(0)disk(0)rdisk(0)partition(1)\MyDir\MyDriver
Hi,
> Can’t load driver \SystemRoot\C:\MyDir\MyDriver.sys
Is the driver - the boot one? Then yes, only the SystemRoot is accessible.
The driver is SERVICE_SYSTEM_START. Is this SystemRoot accessible also ?
If I scan through the registry all drivers seem to load relative to
SystemRoot, no
example there.
Someone else suggested a pathname like ??|C:\Dir\dir. I havent tried that
but will
do coming monday.
Jos
No, you cannot use c: since the object manager is not
fully functional, instead use something like:
\Device\Hardisk0\Partition1\MyDir\MyDriver.sys.
Don Burn
Windows NT/2000/XP Filesystem and Device Driver Consulting
----- Original Message -----
From: “Jos Scherders”
To: “NT Developers Interest List”
Sent: Sunday, March 10, 2002 4:42 PM
Subject: [ntdev] Re: ImagePath again
> Hi,
>
> > > Can’t load driver \SystemRoot\C:\MyDir\MyDriver.sys
> >
> > Is the driver - the boot one? Then yes, only the SystemRoot is
accessible.
>
> The driver is SERVICE_SYSTEM_START. Is this SystemRoot accessible also ?
> If I scan through the registry all drivers seem to load relative to
> SystemRoot, no
> example there.
>
> Someone else suggested a pathname like ??|C:\Dir\dir. I havent tried that
> but will
> do coming monday.
>
> Jos
>
>
>
> —
> You are currently subscribed to ntdev as: xxxxx@acm.org
> To unsubscribe send a blank email to %%email.unsub%%
> The driver is SERVICE_SYSTEM_START. Is this SystemRoot accessible also ?
If I scan through the registry all drivers seem to load relative to
SystemRoot, no
example there.
A great solution is to put the binary to system32\drivers and forget about ImagePath forever 
Max