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