This site is no longer active and is available for archival purposes only. Registration and login is disabled.

How to get WCE OS version without GetVersionEx function?


How to get WCE OS version without GetVersionEx function?

Postby Broken Sword » Mar 15, 2006 @ 9:29pm

Broken Sword
pm Member
 
Posts: 5
Joined: Mar 9, 2006 @ 8:52pm


Postby fast_rx » Mar 16, 2006 @ 12:22am

User avatar
fast_rx
pm Member
 
Posts: 660
Joined: Jun 10, 2003 @ 4:24pm


Postby Broken Sword » Mar 20, 2006 @ 11:12am

Broken Sword
pm Member
 
Posts: 5
Joined: Mar 9, 2006 @ 8:52pm


Postby mamaich » Mar 21, 2006 @ 2:27am

You can check the version of coredll.dll in its PE-header in ROM (e32_rom.e32_subsysmajor and e32_subsysminor). It is 5.0 for WM5, 4.21 for WM2003SE, 4.20 for 2003 first edition. I have not checked older OSes.
But module structure has changed in WM5 and e32 field is 4 bytes shifted. For some hell MS added "calledfunc" field in its middle. Good programmers never do such things.
It is easy to determine whether you need to shift or not. For example by checking "baseptr", or "startip" field positions, if it is shifted - you have WM5. Or you can use any other heuristic.
The other method is checking for presence of some functions in coredll. For example "GetDllVersion" appeared in 5.0.
mamaich
pm Member
 
Posts: 53
Joined: Dec 14, 2004 @ 3:16am


Postby Broken Sword » Mar 21, 2006 @ 11:12am

Broken Sword
pm Member
 
Posts: 5
Joined: Mar 9, 2006 @ 8:52pm


Postby Broken Sword » Mar 23, 2006 @ 1:07am

Broken Sword
pm Member
 
Posts: 5
Joined: Mar 9, 2006 @ 8:52pm


Return to Windows Mobile


Sort


Forum Description

A discussion forum for mobile device developers on the Windows Mobile platform. Any platform specific topics are welcome.

Moderators:

Dan East, sponge, Digby, David Horn, Kevin Gelso, RICoder

Forum permissions

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

cron