16-bit shell seperation
Eric Pouech
eric.pouech at wanadoo.fr
Tue Oct 29 09:56:05 CST 2002
> The only place that there is 16-bit stuff in the 32-bit version is
> WinExec16 in SHELL_ExecuteA. Is it ok to simply call CreateProcess here?
no CreateProcess will no allow running 16 bit execs (while WinExec16
does)
> Probably not because that whould have been done already. So I dont see
> how this could be done without some code duplication. Mabey ifdef the
> WinExec16?
a way to do it is to replace the is32 boolean in most functions with a
function pointer to the actual process creation implementation
it's signature would be HINSTANCE (*fn)(char *lpCmd, LPSHELLEXECUTEINFOA
sei, BOOL shWait) and would be passed to ShellExecuteExA32
from a 32 bit function, code would the 32 bit part of SHELL_ExecuteA
from a 16 bit function, code would the 16 bit part of SHELL_ExecuteA
(this part should all be moved to 16 bit code)
A+
More information about the wine-devel
mailing list