[Bug 51264] New: GUI exe receives invalid StdOutput HANDLE if launched via ShellExecuteEx
WineHQ Bugzilla
wine-bugs at winehq.org
Sat Jun 12 03:28:03 CDT 2021
https://bugs.winehq.org/show_bug.cgi?id=51264
Bug ID: 51264
Summary: GUI exe receives invalid StdOutput HANDLE if launched
via ShellExecuteEx
Product: Wine
Version: 6.3
Hardware: x86-64
OS: Linux
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: -unknown
Assignee: wine-bugs at winehq.org
Reporter: brendan at redmandi.com
Distribution: ---
Created attachment 70142
--> https://bugs.winehq.org/attachment.cgi?id=70142
Source code for the primary exe to recreate the issue
It is possible for a child process to inherit an invalid hStdOutput HANDLE if
the PE header has the subsystem value of IMAGE_SUBSYSTEM_WINDOWS_GUI and it is
launched via ShellExecuteEx.
It also requires the primary process to be launched via:
- 'wine' if it is a PE32+ executable; or
- 'wine64' if it is a PE32 executable
Attached are two source files that can be used to recreate the issue:
1. main.c (the primary process); and
2. child.c (the child process)
Compile with:
x86_64-w64-mingw32-gcc -o main.exe main.c
x86_64-w64-mingw32-gcc -o child.exe child.c -mwindows
and run with:
wine main.exe
The child.exe creates a file called 'stdout.log' that dumps the
STD_OUTPUT_HANDLE value and its FileType. Under wine, this is:
StdOutput: 14, Type: 1
and under Windows, it is:
StdOutput: 0, Type: 0
I first ran in this this issue when running Elite Dangerous from Proton 6.3
(i.e. wine version 6.3) - but my investigations show this still occurs with git
commit 6b277dc89d55.
--
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.
More information about the wine-bugs
mailing list