Page 1
Page 2
Page 3
We are told that GetTickCount is a member
of IDSSAPI.Core, that it is a function that takes no parameters,
returns a value of type Long, and that its purpose is to
determine how many milliseconds have passed by since the
WinCE started. As you can see, the object browser is a great
tool to use in understanding what could otherwise be considered
ambiguous.
Rather than include sample projects
with this article, I point you towards the IDSS web site
which has samples demonstrating most of the features. But
I do want to stress the simplicity that IDSSAPI provides.
Want to make your form appear in full-screen?
That's just another three lines of code:
Dim IDSSAPIWinHelp As IDSSAPI.WindowHelper
Set IDSSAPIWinHelp = CreateObject("IDSSAPI.WindowHelper")
IDSSAPIWinHelp.MakeFullScreen Me.hWnd
It couldn't be any easier than
that! But there are fallbacks - IDSSAPI gives us access
to things we were not meant to have access to. And for that
reason, it is imperfect. For example, programs such as WisBar
remain visible at the top of the screen regardless of what
calls you make to IDSSAPI's WindowHelper class. Another
error is that while calls to MakeFullScreen succeed (with
the above exception) from within the Form_Load event, calls
to HideMenu (which is intended to hide the SIP menu at the
bottom right corner of the screen) from within Form_Load
have no result. To be fair, it should be noted that this
is not a flaw in IDSSAPI but rather the same problem developers
have been unable to get around even when interacting directly
with the WinCE API. Unfortunately, many of these issues
will only be discovered on a trial-and-error basis - but
I have no doubt that a little bit of creative programming
will allow a way around them.
An important thing to note about IDSSAPI
is that it isn't free. The $25 price is more than reasonable
given the features that it provides and the time it can
potentially save for professional developers, but, of course,
the recreational developer may not be willing or able to
pay for this product. IDSSAPI does a lot - and its good
and what it does - but for those people who are discouraged
by the price, IDSS has generously posted an extensive listing
of sample code that demonstrates how to achieve portions
of the IDSSAPI functionality by directly accessing the WinCE
API on
their website [http://www.innovativedss.com/resource.asp].
This article is the first in a series
of three. In the next, we will discuss the process of installing
IDSSAPI on your development system as well as the emulator
and how to package IDSSAPI for deployment to end users.
Finally, we will take a look at a series of example cases
where the proper use of IDSSAPI revolutionizes the capabilities
of eVB developers. In the mean time, IDSS is continuing
to expand their own collection of sample code demonstrating
the key features of their product and we encourage you to
take a look and begin evaluating whether or not it can suit
your own development needs.
The final thing I would like
to point out is that the evaluation version of IDSSAPI is
for the emulator only (allowing you to create and test programs,
but not install them on an actual PocketPC) and certain
IDSSAPI functions are inherently incompatible with the emulator
such as the Memory class, the SoftReset function, and the
PowerOffDevice function. This is certainly something to
keep in mind when evaluating IDSSAPI and debugging your
code.
Previous Page