[ros-kernel] WinCE application support for WINE and ReactOS

Steven Edwards steven_ed4153 at yahoo.com
Thu Mar 4 12:16:43 CET 2004

Hello All,
This is all very experimental. I am working on in the ReactOS tree and
it might not even work for larger apps but I am happy with the results
so far.

I was thinking the other day that ReactOS and WINE/Linux might get a
big boost if we can push support in the embedded enviroment so I
started taking a look at WinCE and Microsoft Embedded Visual C++ 4.0
.BTW: Its a free download now. 

I started looking at WinCE and thought it would be nice if we could be
source compatible with WinCE apps and binary compatbile on x86. Well it
seems that WinCE apps dont differ much from standard Win32 apps execpt
the subsystem ID is differnt. If you attempt to run a WinCE application
on Windows it will say that its not able to run. Ok no problem, we just
run "editbin /subsystem:windows blah.exe" and check it out. Now the app
is looking for coredll.dll. No problem there I have created a stub
coredll.dll that just forwards all calls to the proper Win32 dlls such
as user32, kernel32, etc.....

.....and check it out. My little messagebox test works on Windows. Ok
soon then I go and run the same test on ReactOS but this time I run a
copy of messagebox without changing the subsystem ID...Hey what do you
know. It works =). I talked with Alexandre about it a bit and he said
that WINE like ReactOS also shouldnt care about the subsystem ID so if
someone is interested in testing just drop the messagebox programs and
coredll.dll in to a directory and give it a shot.

I am having trouble getting more complex apps (hello world) to work atm
so I think i am just going to take a break and clear my head for a few
days. Some of the WinCE API and Win32 is not 100% compatible so we cant
just forward all parts to the Win32 implementation but I think we can
do it for most of it. If anyone is interested in helping out the source
is in the ROS CVS tree and attached to this email......

messagebox.exe - wince messagebox program
msgbox.exe - wince messagebox program with subsystem id changed to
wincehel.exe - Hello World WinCE app
wincehelw.exe - Hello World WinCE app with subsystem id changed to
coredll.dll - WinCE Win32 API
commctl.dll - WInCE common controls API.

coredll - dummy forwarder dll
commctl - dummy stub dll for common controls


Do you Yahoo!?
Yahoo! Search - Find what you’re looking for faster
-------------- next part --------------
A non-text attachment was scrubbed...
Name: source.zip
Type: application/x-zip-compressed
Size: 29081 bytes
Desc: source.zip
Url : http://reactos.com:8080/pipermail/ros-kernel/attachments/20040304/43b29648/source-0003.bin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: binary.zip
Type: application/x-zip-compressed
Size: 15753 bytes
Desc: binary.zip
Url : http://reactos.com:8080/pipermail/ros-kernel/attachments/20040304/43b29648/binary-0003.bin

More information about the Ros-kernel mailing list