Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

How to install SIP

59 views
Skip to first unread message

johnlim

unread,
Sep 18, 2009, 4:10:15 AM9/18/09
to
Hi,
I am working with Visual C++ 2005 Windows CE armV4i. I am following the SIP example from Doug Boling's book Programming Windows CE.NET and have managed to compile the code successfully. However, how do I "install" this SIP into my Win CE device?

Thanks.

Regards,
John

EggHeadCafe - Software Developer Portal of Choice
WCF Workflow Services Using External Data Exchange
http://www.eggheadcafe.com/tutorials/aspnet/3d49fa0d-a120-4977-842a-6dafb17b6d74/wcf-workflow-services-usi.aspx

G. Tobey [eMVP]@discussions.microsoft.com Paul G. Tobey [eMVP]

unread,
Sep 18, 2009, 11:59:02 AM9/18/09
to

John,

I'm surprised that there aren't instructions in the book...

You need to make suitable entries in the registry for your SIP and you need
to restart the Windows CE machine. If that doesn't do it, you need to tell
us more about what device you're running this on (like does the operating
system have SIP support in it; if not, you can't do anything about that other
than generate a new OS for the device that does have SIP support).

Paul T.

Dexton

unread,
Sep 19, 2009, 12:47:41 AM9/19/09
to
Hi Paul,

Thank you for your reply. I must confess I havent read the entire book
but i have checked the relevant chapters and it doesnt mention how i
can "install" it. There is a sample chapter on this SIP example
located here: http://www.microsoft.com/mspress/books/sampchap/5461b.aspx.
I have compiled the code successfully and have the corresponding .dll
and .lib files but do not know what to do with it. Do i have to use
cabwiz to make it into a cabinet file and then install it into my
wince device?

I have included SIP support for my OS and my hardware is an
AT91SAM9261EK board (an evaluation board from Atmel).

I do also believe the book should have some instructions in the book
and it could have been staring at me in the face but i failed to see
it. Therefore I was hoping that someone who's been through this
process could point me in the right direction.

Thanks once again for your kind assistance.

Regards,
John


On Sep 18, 11:59 pm, Paul G. Tobey [eMVP] <Paul G. Tobey [eMVP]

> >http://www.eggheadcafe.com/tutorials/aspnet/3d49fa0d-a120-4977-842a-6...- Hide quoted text -
>
> - Show quoted text -

Paul G. Tobey [ eMVP ]

unread,
Sep 21, 2009, 2:03:02 PM9/21/09
to
The crucial thing is not how you get the DLL file copied to the device
(that's the only file you should need), but how you get the REGISTRY ENTRIES
for the SIP into the device registry. That's where the SIP driver looks, on
startup, for the installed SIPs so it can build the list of SIPs to display
in the user interface. Perhaps there's a REG file that Doug has provided?
Perhaps there's a list of REG entries to be made into the project.reg or
platform.reg file of the operating system build?

Paul T.

johnlim

unread,
Sep 29, 2009, 11:19:28 PM9/29/09
to
Hi Paul,

Thank you for replying. You are right, its all about getting the registry entries to be registered.

Christopher Fairbairn pointed (see http://www.eggheadcafe.com/software/aspnet/29846546/why-do-custom-input-metho.aspx) the need to set the "Register Output" option within the Deployment section in VS2005 to register the DLL. After doing that the example now can be deployed successfully.

I can no finally dig deeper into the code to see how it all works. :)

Cheers,
John

Paul G. Tobey [eMVP] wrote:

Re: How to install SIP
21-Sep-09

Paul T.

"Dexton" wrote:

WPF DataGrid Custom Paging and Sorting
http://www.eggheadcafe.com/tutorials/aspnet/8a2ea78b-f1e3-45b4-93ef-32b2d802ae17/wpf-datagrid-custom-pagin.aspx

Paul G. Tobey [eMVP]

unread,
Sep 30, 2009, 10:41:54 PM9/30/09
to
Thanks for posting back. Nice pointer Christopher.

Paul T.

<John Lim> wrote in message news:2009929231...@pciltd.com.sg...

John

unread,
Oct 2, 2009, 4:56:02 AM10/2/09
to
Hi Paul,

Can you please advise how I can debug (i.e. set break points, watch etc) the
SIP from VS2005? Thanks. :)

Regards,

Paul G. Tobey [eMVP]

unread,
Oct 2, 2009, 10:42:57 PM10/2/09
to
You can't, as far as I know. You'd need a kernel debugger running on the
target device, not an application debugger. I guess you could try attaching
the debugger to device.exe and trying to find the SIP, but I wouldn't be
very confident of your chance of success.

Paul T.

"John" <Jo...@discussions.microsoft.com> wrote in message
news:252AA380-37E5-409A...@microsoft.com...

John

unread,
Oct 16, 2009, 6:09:01 AM10/16/09
to
Hi Paul,

I built a WinCE 6 OS and its corresponding SDK using the Device Emulator:
ARMV4I BSP provided in Platform Builder for CE 6.0 (VS2005). I am running
into compilation errors when I try to build the SIP example for the ARMV4I
device emulator. I have not encountered this compilation error when I built
it for the PocketPC 2003 emulator (i.e. it builds successfully).

The error encountered is "C:\Program Files\Microsoft Visual Studio
8\VC\ce\include/crtdefs.h(100) : error RC2188: C:\Program Files\Microsoft
Visual Studio 8\VC\ce\include/crtdefs.h(246) : fatal error RC1015: cannot
open include file 'vadefs.h'".

I traced it to the crtdefs.h file where _WIN32_WCE is not defined which
results in including the vadefs.h file. However, in my preprocessor
definitions i saw that _WIN32_WCE=$(CEVER) is being declared.

Can you please advise what I should do here so that I can compile it
successfully?

Thank you.

Paul G. Tobey [eMVP]

unread,
Oct 16, 2009, 9:57:02 AM10/16/09
to
The target OS has to have SIP support in order for the SDK to have it. I
would guess that the OS configuration you built, targeted at the emulator,
did not have that.

Paul T.

"John" <Jo...@discussions.microsoft.com> wrote in message

news:FF1E78B5-7943-453B...@microsoft.com...

Dexton

unread,
Oct 18, 2009, 11:40:58 PM10/18/09
to
Hi Paul,

Thank you for responding. The SIP support was included so that was not
the cause. I have managed to compile it successfully after 2 days but
I do not know what was causing the compilation failures. I simply
copied a fresh set of source files into a different directory and
opened them in VS2005 (i.e. as a different solution project) and now
the SIP example compiles successfully for the new OS configuration
(emulator). Any idea if this is a VS2005 bug?

Regards,
John

Paul G. Tobey [eMVP]

unread,
Oct 19, 2009, 12:06:51 AM10/19/09
to
I think a bug is unlikely, particularly one so specific. You may have
targeted the wrong SDK or something like that, but without the code in front
of me and the ability to fool around with it, I can't guess any better than
that.

Paul T.

"Dexton" <dexton...@gmail.com> wrote in message
news:f2ec9f69-d8b7-4e53...@f18g2000prf.googlegroups.com...

John

unread,
Oct 27, 2009, 4:01:01 AM10/27/09
to
Hi Paul,

I have a question regarding resizing the SIP. I do not have a problem
resizing it, but it just seems that the input method (child) window is
automatically resized to the size of the input panel (parent) window,
irregardless of the parameters i use in CreateWindowEx (creating the input
method (child) window) and reporting it in the::GetInfo method. Please pardon
the length of this message for clarity.

Please correct me if I am wrong but after days of mucking around with the
SIP, my understanding of the SIP is as follows:

1) The SIP is composed of two main components - the input panel and the
input method.
2) The input panel is supplied by the system.
3) The input method is the installable portion of the SIP and is a child
window of input panel window.
4) As the input method is a child window of the input panel window,
understandably, any attempt to resize this child window such that its larger
than the input panel window (parent window) results in the input method
(child) window being restricted to the size of the input panel (parent)
window.
5) However, when I try to make the input method (child) window smaller than
the input panel (parent) window, the input method (child) window is
automatically resized to the input panel (parent) window.

It therefore seems that the parameters nWidth and nHeight used in
CreateWindowsEx are redundant since inputting them as zero still resulted in
creating the Input method window equal to the size of the Input panel. This
also applies to the rcSipRect.right and rcSipRect.bottom parameters which i
set to zero when the ::GetInfo routine is called. It seems that WinCE is
resizing the input method automatically. Am i correct in assuming this?

Thank you for your precious time in looking through this.

Regards,
John

John

unread,
Oct 27, 2009, 4:33:01 AM10/27/09
to
Hi Paul,

Sorry, but i just noticed another call in the SIP example source code that
resizes the input method window which explains why the input method window
was always scaled to the input panel size.

Thanks once again for you time.

Regards,
John

John

unread,
Oct 28, 2009, 11:48:01 PM10/28/09
to
Hi Paul,

When i set the registry key value for ControlPanel/Sip/DragStyle to zero,
the default software input panels will obscure the entire x axis (within the
height of the software input panel) - the areas outside of the input method
(i.e. keyboard bitmap) is painted white. I have a screen shot of it which
explains better but how do i attach it here so that you can understand what i
mean.

Can you please advise why this is so and how i can display the SIP correctly
(with dragstyle set to 0)?

Thanks.

Regards,
John

John

unread,
Oct 29, 2009, 3:05:01 AM10/29/09
to
Hi Paul,

The intention was to remove the title bar in the SIP. I managed to google a
thread in which you advised the person (who wanted to remove the title bar in
the SIP) to use SetWindowLong to modify the window style. I tried that and
now it works. :)

Obviously, modifying the DragStyle value in the registy is not the way to go.

Thanks for your help ( albeit it was before i even asked it ;) )

Cheers,
John

0 new messages