Hello everybody.

I've a problem with Platform Builder v4.2

I've made a project under windows C.E 4.0, that worked correctly.
Now, I've upgraded to Windows C.E 4.2, and something happened... the
mouse doesn't work anymore.

In my project, I've writtent my own shell. In 4.0, this shell was able
to receive WM_MOUSEMOVE, WM_L(R)BUTTONUP(DOWN) events. Since I'm under
v4.2, this doesn't work anymore.

My platform is a headless device, with every features needed (minimal
GDI configuration, minimal Event notifications, etc...). In order to
add the mouse, I had to manually add the SYSGEN_CURSOR variable to my
platform. Then, it added the mouse in Features\Shell and user
interface\User interface\Mouse. But, I already have a folder named
"shell and user interface" under this root : Features\Custom device
[headless device]\Shell and user interface. (here I have "Graphics
windowing and events, with minimal GDI configuration, minimal GWES
configuration, minimal input configuration, minimal notifications
configuration, minimal window manager configuration).

The main window of my shell does not receive WM_MOUSEMOVE event. I
can't get cursor position with GetCursorPos(&mousePoint); .

I've also noticed that in my Release Directory, I cannot found a file
"kbdmouse.dll". WM_KEYDOWN and WM_KEYUP events are not received.

Can anyone help me to correctly build the mouse/keyboard feature in a
headless device in order to read my cursor position?

Thanks in advance.

Re: Mouse problem with Headless Device by Steve

Steve
Wed Jun 23 16:46:42 CDT 2004

Can you check your platform.bib to see why kbdmouse.dll is not being
included in your image?

--
Steve Schrock
Windows CE Device Drivers

This posting is provided "AS IS" with no warranties, and confers no rights.

"Auslander" <tanguy.courquin@laposte.net> wrote in message
news:a8d8c215.0406230152.3dab2621@posting.google.com...
> Hello everybody.
>
> I've a problem with Platform Builder v4.2
>
> I've made a project under windows C.E 4.0, that worked correctly.
> Now, I've upgraded to Windows C.E 4.2, and something happened... the
> mouse doesn't work anymore.
>
> In my project, I've writtent my own shell. In 4.0, this shell was able
> to receive WM_MOUSEMOVE, WM_L(R)BUTTONUP(DOWN) events. Since I'm under
> v4.2, this doesn't work anymore.
>
> My platform is a headless device, with every features needed (minimal
> GDI configuration, minimal Event notifications, etc...). In order to
> add the mouse, I had to manually add the SYSGEN_CURSOR variable to my
> platform. Then, it added the mouse in Features\Shell and user
> interface\User interface\Mouse. But, I already have a folder named
> "shell and user interface" under this root : Features\Custom device
> [headless device]\Shell and user interface. (here I have "Graphics
> windowing and events, with minimal GDI configuration, minimal GWES
> configuration, minimal input configuration, minimal notifications
> configuration, minimal window manager configuration).
>
> The main window of my shell does not receive WM_MOUSEMOVE event. I
> can't get cursor position with GetCursorPos(&mousePoint); .
>
> I've also noticed that in my Release Directory, I cannot found a file
> "kbdmouse.dll". WM_KEYDOWN and WM_KEYUP events are not received.
>
> Can anyone help me to correctly build the mouse/keyboard feature in a
> headless device in order to read my cursor position?
>
> Thanks in advance.



Re: Mouse problem with Headless Device by tanguy

tanguy
Thu Jun 24 04:50:57 CDT 2004

Here is what I have in my platform.bib file concerning kbdmouse.dll...

; @CESYSGEN IF CE_MODULES_KEYBD || CE_MODULES_POINTER
IF LOCALE=0411 !
IF LOCALE=0412 !
IF BSP_KEYBD_NOP
; @CESYSGEN IF CE_MODULES_NOPKEYBOARD
kbdmouse.dll $(_FLATRELEASEDIR)\KbdNopUS.dll NK SH
; @CESYSGEN ENDIF CE_MODULES_NOPKEYBOARD
ENDIF ; BSP_KEYBD_NOP
IF BSP_KEYBD_NOP !
; @CESYSGEN IF CE_MODULES_8042KEYBOARD
kbdmouse.dll $(_FLATRELEASEDIR)\Kbd8042US.dll NK SH
; @CESYSGEN ENDIF CE_MODULES_8042KEYBOARD
ENDIF ; BSP_KEYBD_NOP
ENDIF ; LOCALE != 0412
ENDIF ; LOCALE != 0411
IF LOCALE=0411
IF BSP_KEYBD_JPN1
IF BSP_KEYBD_NOP
; @CESYSGEN IF CE_MODULES_NOPKEYBOARD
kbdmouse.dll $(_FLATRELEASEDIR)\KbdNopJpn1.dll NK SH
; @CESYSGEN ENDIF CE_MODULES_NOPKEYBOARD
ENDIF ; BSP_KEYBD_NOP
IF BSP_KEYBD_NOP !
; @CESYSGEN IF CE_MODULES_8042KEYBOARD
kbdmouse.dll $(_FLATRELEASEDIR)\Kbd8042Jpn1.dll NK SH
; @CESYSGEN ENDIF CE_MODULES_8042KEYBOARD
ENDIF ; BSP_KEYBD_NOP
ENDIF ; BSP_KEYBD_JPN1
IF BSP_KEYBD_JPN1 !
IF BSP_KEYBD_NOP
; @CESYSGEN IF CE_MODULES_NOPKEYBOARD
kbdmouse.dll $(_FLATRELEASEDIR)\KbdNopJpn2.dll NK SH
; @CESYSGEN ENDIF CE_MODULES_NOPKEYBOARD
ENDIF ; BSP_KEYBD_NOP
IF BSP_KEYBD_NOP !
; @CESYSGEN IF CE_MODULES_8042KEYBOARD
kbdmouse.dll $(_FLATRELEASEDIR)\Kbd8042Jpn2.dll NK SH
; @CESYSGEN ENDIF CE_MODULES_8042KEYBOARD
ENDIF ; BSP_KEYBD_NOP
ENDIF ; BSP_KEYBD_JPN1
ENDIF ; LOCALE == 0411
IF LOCALE=0412
IF BSP_KEYBD_NOP
; @CESYSGEN IF CE_MODULES_NOPKEYBOARD
kbdmouse.dll $(_FLATRELEASEDIR)\KbdNopKor.dll NK SH
; @CESYSGEN ENDIF CE_MODULES_NOPKEYBOARD
ENDIF ; BSP_KEYBD_NOP
IF BSP_KEYBD_NOP !
; @CESYSGEN IF CE_MODULES_8042KEYBOARD
kbdmouse.dll $(_FLATRELEASEDIR)\Kbd8042Kor.dll NK SH
; @CESYSGEN ENDIF CE_MODULES_8042KEYBOARD
ENDIF ; BSP_KEYBD_NOP
ENDIF ; LOCALE == 0412
; @CESYSGEN ENDIF CE_MODULES_KEYBD || CE_MODULES_POINTER

I didn't modified it since I've installed CE 4.2 .
May I have problems with Locales ??(LOCALE != 0411 etc ... ?)
THanks for your answer


"Steve Schrock [MS]" <sschrock@online.microsoft.com> wrote in message news:<eDZMXuWWEHA.2816@TK2MSFTNGP11.phx.gbl>...
> Can you check your platform.bib to see why kbdmouse.dll is not being
> included in your image?
>
> --
> Steve Schrock
> Windows CE Device Drivers
>
> This posting is provided "AS IS" with no warranties, and confers no rights.
>

Re: Mouse problem with Headless Device by Steve

Steve
Thu Jun 24 17:30:41 CDT 2004

You should get Kbd8042US.dll if your locale is not 0411 or 0412. Please
check your environment variables with all those that are listed.
Specifically, make sure BSP_KEYBD_NOP is not set. Also, run "sysgen files"
and verify that "8042KEYBOARD" and ("keybd" or "pointer") are listed in the
CE_MODULES section.

--
Steve Schrock
Windows CE Device Drivers

This posting is provided "AS IS" with no warranties, and confers no rights.

"Auslander" <tanguy.courquin@laposte.net> wrote in message
news:a8d8c215.0406240150.61d3cf76@posting.google.com...
> Here is what I have in my platform.bib file concerning kbdmouse.dll...
>
> ; @CESYSGEN IF CE_MODULES_KEYBD || CE_MODULES_POINTER
> IF LOCALE=0411 !
> IF LOCALE=0412 !
> IF BSP_KEYBD_NOP
> ; @CESYSGEN IF CE_MODULES_NOPKEYBOARD
> kbdmouse.dll $(_FLATRELEASEDIR)\KbdNopUS.dll NK SH
> ; @CESYSGEN ENDIF CE_MODULES_NOPKEYBOARD
> ENDIF ; BSP_KEYBD_NOP
> IF BSP_KEYBD_NOP !
> ; @CESYSGEN IF CE_MODULES_8042KEYBOARD
> kbdmouse.dll $(_FLATRELEASEDIR)\Kbd8042US.dll NK SH
> ; @CESYSGEN ENDIF CE_MODULES_8042KEYBOARD
> ENDIF ; BSP_KEYBD_NOP
> ENDIF ; LOCALE != 0412
> ENDIF ; LOCALE != 0411
> IF LOCALE=0411
> IF BSP_KEYBD_JPN1
> IF BSP_KEYBD_NOP
> ; @CESYSGEN IF CE_MODULES_NOPKEYBOARD
> kbdmouse.dll $(_FLATRELEASEDIR)\KbdNopJpn1.dll NK SH
> ; @CESYSGEN ENDIF CE_MODULES_NOPKEYBOARD
> ENDIF ; BSP_KEYBD_NOP
> IF BSP_KEYBD_NOP !
> ; @CESYSGEN IF CE_MODULES_8042KEYBOARD
> kbdmouse.dll $(_FLATRELEASEDIR)\Kbd8042Jpn1.dll NK SH
> ; @CESYSGEN ENDIF CE_MODULES_8042KEYBOARD
> ENDIF ; BSP_KEYBD_NOP
> ENDIF ; BSP_KEYBD_JPN1
> IF BSP_KEYBD_JPN1 !
> IF BSP_KEYBD_NOP
> ; @CESYSGEN IF CE_MODULES_NOPKEYBOARD
> kbdmouse.dll $(_FLATRELEASEDIR)\KbdNopJpn2.dll NK SH
> ; @CESYSGEN ENDIF CE_MODULES_NOPKEYBOARD
> ENDIF ; BSP_KEYBD_NOP
> IF BSP_KEYBD_NOP !
> ; @CESYSGEN IF CE_MODULES_8042KEYBOARD
> kbdmouse.dll $(_FLATRELEASEDIR)\Kbd8042Jpn2.dll NK SH
> ; @CESYSGEN ENDIF CE_MODULES_8042KEYBOARD
> ENDIF ; BSP_KEYBD_NOP
> ENDIF ; BSP_KEYBD_JPN1
> ENDIF ; LOCALE == 0411
> IF LOCALE=0412
> IF BSP_KEYBD_NOP
> ; @CESYSGEN IF CE_MODULES_NOPKEYBOARD
> kbdmouse.dll $(_FLATRELEASEDIR)\KbdNopKor.dll NK SH
> ; @CESYSGEN ENDIF CE_MODULES_NOPKEYBOARD
> ENDIF ; BSP_KEYBD_NOP
> IF BSP_KEYBD_NOP !
> ; @CESYSGEN IF CE_MODULES_8042KEYBOARD
> kbdmouse.dll $(_FLATRELEASEDIR)\Kbd8042Kor.dll NK SH
> ; @CESYSGEN ENDIF CE_MODULES_8042KEYBOARD
> ENDIF ; BSP_KEYBD_NOP
> ENDIF ; LOCALE == 0412
> ; @CESYSGEN ENDIF CE_MODULES_KEYBD || CE_MODULES_POINTER
>
> I didn't modified it since I've installed CE 4.2 .
> May I have problems with Locales ??(LOCALE != 0411 etc ... ?)
> THanks for your answer
>
>
> "Steve Schrock [MS]" <sschrock@online.microsoft.com> wrote in message
> news:<eDZMXuWWEHA.2816@TK2MSFTNGP11.phx.gbl>...
>> Can you check your platform.bib to see why kbdmouse.dll is not being
>> included in your image?
>>
>> --
>> Steve Schrock
>> Windows CE Device Drivers
>>
>> This posting is provided "AS IS" with no warranties, and confers no
>> rights.
>>



Re: Mouse problem with Headless Device by tanguy

tanguy
Fri Jun 25 02:32:57 CDT 2004

This was my idea. I've manually modified the "cesysgen.bat" file found
in "sysgen\oak\misc" and added "set ce_modules = %ce_modules%
8042keyboard nopkeyboard". Now this is working...

So, another problem like that: what are all the features I must add in
a headless device to have DirectDraw librairies??? I've manually added
:
OLE32_COMPONENTS=mcombase mcommem mcomstr mcommon mcomlib ole232
docfile msf exp mcomguid
DCOM_MODULES= uuid ole32 oleaut32 atl

but the build fails with the error "undefined reference to
_CreateBitmapFromPointer"...

Could you tell me what are the missing modules ?

Thanks.

"Steve Schrock [MS]" <sschrock@online.microsoft.com> wrote in message news:<#apAjrjWEHA.3528@TK2MSFTNGP10.phx.gbl>...
> You should get Kbd8042US.dll if your locale is not 0411 or 0412. Please
> check your environment variables with all those that are listed.
> Specifically, make sure BSP_KEYBD_NOP is not set. Also, run "sysgen files"
> and verify that "8042KEYBOARD" and ("keybd" or "pointer") are listed in the
> CE_MODULES section.
>
> --
> Steve Schrock
> Windows CE Device Drivers
>
> This posting is provided "AS IS" with no warranties, and confers no rights.

Re: Mouse problem with Headless Device by Steve

Steve
Fri Jun 25 06:34:24 CDT 2004

Umm, What exactly are you calling a headless device. Normally that means no
display. However since you are talking about a mouse and DirectDraw clearly
that isn't the case.
--
Steve Maillet (eMVP)
EmbeddedFusion
smaillet_AT_EmbeddedFusion_DOT_com



Re: Mouse problem with Headless Device by tanguy

tanguy
Tue Jun 29 02:30:59 CDT 2004

"Steve Maillet \(eMVP\)" <nospam1@EntelechyConsulting.com> wrote in message news:<uNPGhhqWEHA.3120@TK2MSFTNGP12.phx.gbl>...

> Umm, What exactly are you calling a headless device. Normally that means no
> display. However since you are talking about a mouse and DirectDraw clearly
> that isn't the case.

Well, I've built a Headless device that CAN display something. What I
want is a device without the shell, because I've written mine. So, a
headless device with display support and a .EXE file that create a
window with ClassName "DesktopExplorerWindow" does display something
on the screen. (Else, if you choose graphical device, you can only
choose beetween two shells that are Microsoft properties). Now, I need
DirectDraw, and I can't compile it. :/ That's the probleM. What should
I do?

Re: Mouse problem with Headless Device by Dean

Dean
Tue Jun 29 10:49:20 CDT 2004

You don't want a headless device. You want a regular headed, IABASE device
with a custom shell. Search on Creating a Custom Shell in the PB help.

--
Dean Ramsier - eMVP


"Auslander" <tanguy.courquin@laposte.net> wrote in message
news:a8d8c215.0406282330.256e0228@posting.google.com...
> "Steve Maillet \(eMVP\)" <nospam1@EntelechyConsulting.com> wrote in
message news:<uNPGhhqWEHA.3120@TK2MSFTNGP12.phx.gbl>...
>
> > Umm, What exactly are you calling a headless device. Normally that means
no
> > display. However since you are talking about a mouse and DirectDraw
clearly
> > that isn't the case.
>
> Well, I've built a Headless device that CAN display something. What I
> want is a device without the shell, because I've written mine. So, a
> headless device with display support and a .EXE file that create a
> window with ClassName "DesktopExplorerWindow" does display something
> on the screen. (Else, if you choose graphical device, you can only
> choose beetween two shells that are Microsoft properties). Now, I need
> DirectDraw, and I can't compile it. :/ That's the probleM. What should
> I do?



Re: Mouse problem with Headless Device [became : shell problem] by tanguy

tanguy
Wed Jun 30 09:08:14 CDT 2004

"Dean Ramsier" <ramsiernospam@nospam.com> wrote in message news:<#reMnCfXEHA.2364@TK2MSFTNGP12.phx.gbl>...
> You don't want a headless device. You want a regular headed, IABASE device
> with a custom shell. Search on Creating a Custom Shell in the PB help.
>
> --
> Dean Ramsier - eMVP
Thanks for your answer. I've tried to do as it's told in the help, but
it failed. So, I'm lost :

I've put a "myShell" Directory in %ceroot%\public\shell\oak with my
sources
I've modified the dirs file in %ceroot%\public\shell\oak
I've added a line in the registry under \local machine\init to launch
myShell.exe
I've added a BUILD_OPTIONS=myShell to my environnements variables
I've enabled deptree build.
I've waited sooooo long before everything was compiled...

It didn't worked.

I'm not sure, but maybe my "sources" file is not correct.

The only file needed to compile my shell is a file named project.cpp
My "source" file look like this :

TARGETNAME=myShell
RELEASETYPE=PROGRAM
WINCEOEM=1

SOURCES= project.cpp


Is it wrong? May I have a sample of "source" file that makes the right
.exe file? Or better, a full sample of what to do to add my own shell
in the building process of a platform?