Discussion:
how to call setupapi / wine.inf
Marcus Meissner
2004-03-11 09:40:21 UTC
Permalink
Hi,

I am trying to setup wine with wine.inf, with the following call:

/usr/bin/rundll32 setupapi.dll,InstallHinfSection DefaultInstall 128 /usr/share/wine/wine.inf

However, the /usr/share/wine/wine.inf path does not seem to be translated correctly.

0009:Call kernel32.GetFullPathNameW(406efb6e L"/usr/share/wine/wine.inf",00000000,00000000,00
000000) ret=40c8333c
0009:Ret kernel32.GetFullPathNameW() retval=0000001b ret=40c8333c
0009:Call ntdll.RtlAllocateHeap(40360000,00000000,00000036) ret=40c83542
0009:Ret ntdll.RtlAllocateHeap() retval=4039a0e0 ret=40c83542
0009:Call kernel32.GetFullPathNameW(406efb6e L"/usr/share/wine/wine.inf",0000001b,4039a0e0,00
000000) ret=40c83571
0009:Ret kernel32.GetFullPathNameW() retval=0000001a ret=40c83571
0009:Call kernel32.CreateFileW(4039a0e0 L"Y:\\usr\\share\\wine\\wine.inf",80000000,00000001,0
0000000,00000003,00000000,00000000) ret=40c835af
0009:Ret kernel32.CreateFileW() retval=ffffffff ret=40c835af

The config script has:

[Drive Y]
"Type" = "network"
"Path" = "%HOME%"

[Drive Z]
"Type" = "network"
"Path" = "/"

So it should have been using Z:\\

Is this a problem in GetFullPathName or should I better use:

/usr/bin/rundll32 setupapi.dll,InstallHinfSection DefaultInstall 128 z:\\usr\\share\\wine\\wine.inf

?

Ciao, Marcus
Alexandre Julliard
2004-03-11 19:10:57 UTC
Permalink
Post by Marcus Meissner
So it should have been using Z:\\
/usr/bin/rundll32 setupapi.dll,InstallHinfSection DefaultInstall 128 z:\\usr\\share\\wine\\wine.inf
?
It is a bug in GetFullPathName I think. But the best approach for
wine.inf is IMO to copy it to the system dir like wineinstall does, so
that it can be found without specifying the path at all. Having it in
the system dir will also make it easier to use it for other things
later on.
--
Alexandre Julliard
***@winehq.org
Boaz Harrosh
2004-03-11 19:31:34 UTC
Permalink
Post by Alexandre Julliard
It is a bug in GetFullPathName I think. But the best approach for
wine.inf is IMO to copy it to the system dir like wineinstall does, so
that it can be found without specifying the path at all. Having it in
the system dir will also make it easier to use it for other things
later on.
Both windows have the \windows\inf folder for that. I now some setup
programs like to put it there manually.
Should we not do the same?
Alexandre Julliard
2004-03-11 19:49:11 UTC
Permalink
Post by Boaz Harrosh
Both windows have the \windows\inf folder for that. I now some setup
programs like to put it there manually.
Should we not do the same?
We can do it that way too, it doesn't really matter setupapi looks in
both locations.
--
Alexandre Julliard
***@winehq.org
Dmitry Timoshkov
2004-03-16 13:33:36 UTC
Permalink
Post by Alexandre Julliard
Post by Marcus Meissner
/usr/bin/rundll32 setupapi.dll,InstallHinfSection DefaultInstall 128 z:\\usr\\share\\wine\\wine.inf
?
It is a bug in GetFullPathName I think.
Actually GetFullPathName was never able to handle unix path names,
while Get[Long|Short]PathName can do it.
--
Dmitry.
Loading...