Arbitrary DOS device name

danman at danman.eu danman at danman.eu
Tue Feb 1 13:25:33 CST 2022


On 2022-02-01 18:47, Zebediah Figura wrote:
> On 2/1/22 11:39, danman at danman.eu wrote:
>> On 2022-02-01 18:14, Zebediah Figura (she/her) wrote:
>>> 
>>> That's because "wine" is symlinked to 32-bit wine, which redirects
>>> system32 to syswow64. "wine64" will work.
>> 
>> The result is the same with wine64
>> 
>> $ wine64 ~/.wine/drive_c/windows/system32/dpinst64.exe
>> 0009:err:module:__wine_process_init
>> L"C:\\windows\\system32\\dpinst64.exe" not found
>> 
>> 
>>> 
>>> Note though that dpinst needs to be called with specific arguments,
>>> which is part of the reason I asked to rerun the installer.
>> 
>> I rerun the installer but nothing has changed.
>> 
>>> 
>>> One other thing I forgot to mention—you'll need to override
>>> dpinst64.exe as "builtin,native", since the default for the main EXE
>>> is native,builtin when loaded with an exact path.
>> 
>> How do I do this?
> 
> Generally, open winecfg, and in the "Libraries" tab type in
> "dpinst64.exe", then set the override to "builtin,native".
> 
> You can also use the environment variable 
> "WINEDLLOVERRIDES=dpinst64.exe=b,n".
> 
>> And more generally, how do I correctly install the
>> compiled binary?
>> I just copied the exe to system32 as you can see above but I cannot 
>> run
>> make install because I am using wine from distribution install (apt
>> get).
> 
> Okay, my guess is that you're trying to use the system wine executable
> instead of wine from the build tree, and that wine is trying to look
> for builtin dpinst64.exe in /usr/lib/ as a result.
> 
> Note that to manually ensure things are installed into a prefix, you
> can usually use "wine wineboot -u".

I checked with strace:

openat(AT_FDCWD, 
"/usr/lib/wine/../x86_64-linux-gnu/wine/dpinst64.exe.so", O_RDONLY) = -1 
ENOENT (No such file or directory)
write(2, "0009:err:module:__wine_process_i"..., 
850009:err:module:__wine_process_init 
L"C:\\windows\\system32\\dpinst64.exe" not found
) = 85

copied the lib:
sudo cp programs/dpinst64/dpinst64.exe.so 
/usr/lib/x86_64-linux-gnu/wine/

now I am getting:

$ wine64 ~/.wine/drive_c/windows/system32/dpinst64.exe
002b:err:module:__wine_process_init 
L"C:\\windows\\system32\\dpinst64.exe" not supported on this system

The same with setup.exe:

$ WINEDLLOVERRIDES=dpinst64.exe=b,n WINEDEBUG=dpinst+trace wine64 
Setup.EXE
0032:fixme:shell:SHChangeNotify ignoring unsupported flags: 2001
0040:err:module:__wine_process_init L"C:\\Program Files 
(x86)\\Hantek6000\\Bin\\dpinst64.exe" not supported on this system
0042:err:module:__wine_process_init L"C:\\Program Files 
(x86)\\Hantek6000\\Bin\\dpinst64.exe" not supported on this system




More information about the wine-devel mailing list