So what I have done:
The most important thing is to remove the dependency to aygshell.dll.
modify the unit WinCEWSMenus this way:
Add a definition
comment the reference to aygshell out
{$ifndef win32}{aygshell,}{$endif}
in the procedure CeSetMenu make the following change:
{$IFNDEF WINCE7}
mbi: SHMENUBARINFO;
{$ENDIF}
and out comment the whole procedure:
begin
(*
{$ifdef VerboseWinCEMenu}
...
//DrawMenuBar(wnd);
*)
end;
In the file wincecallback.inc change as follow:
Add again a definition of
modify around line 207
{$ifndef win32}
{$IFNDEF WINCE7}
Info: SHRGINFO; // used by SHRecognizeGesture in WM_LBUTTONDOWN
{$endif}
{$endif}
also around line 257
if PopupMenu <> nil then //processing popup menu
begin
WindowInfo^.PopupMenu := nil;
// LOWORD(WParam) = MENUITEM_ID
Result := PopupMenu.FindItem(LOWORD(WParam), fkCommand);
end;
{$ifndef win32}
{$ifndef WinCE7}
if Result = nil then //if Result is still nil, process main menu
begin
MainMenuHandle := SHFindMenuBar(Window);
and
WM_LBUTTONDOWN:
begin
{$ifndef win32}
{$IFNDEF WINCE7}
// Gesture recognition process to enable popup menus.
if (lWinControl.PopupMenu <> nil) then
begin
close the $IFNDEF WINCE7 with
whre the win32 ifndef ends....
cause Win7Embedded Compact is similar to Win32
That's it. I don't know if all is perfect, but it work's at the moment. Also Graphic32 is running. I will continue testing.... pls inform me if you have additional informations!
good luck and happy testing