MsgBox FAQ
Where is the most up-to-date information about MsgBox ?On the MsgBox home page: www.msgbox.info (also located at http://www.mpegtv.com/wince/msgbox).
here: www.msgbox.info/bin
MsgBox shareware library is a drop-in compatible replacement for the standard MessageBox routine on Pocket PC 2003 and 2003 Second Edition.
Just include msgboxlib.h and link with the msgbox .lib file (you need to copy the msgbox dll on the device, too). Call MsgBox instead of MessageBox, and you are all set! The package also contains a version for the Pocket PC 2003 emulator, in addition to the ARM version.
MsgBox has the exact same API and functionnality as MessageBox (both with Win32 C/C++ and with .Net CF).
MsgBox is brought to you by the authors of PocketTV and by Romuald TISSERAND.
There are several problems with the standard MessageBox routine, especially with Pocket PC 2003 Second Edition. MsgBox corrects all those problems while keeping the exact same API:
On Pocket PC 2003 Second Edition, when in Landscape orientation, MessageBox does not use the full width of the display, so you
messages usually get truncated, and in some cases the buttons get truncated or totally hidden. The only workaround is to reduce the size of your
messages, which may be a problem with localized applications. MsgBox can use the full width of the display in Landscape orientation, so
you can see longer messages. This is especially useful in applications localized in other languages.
MessageBox just truncates the text if it is too long to be entirely displayed. Sometimes, MessageBox even displays the
buttons outside of the screen, making the dialog completely un-usable. MsgBox makes text scrollable if text is
too long to be entirely displayed (like on Smartphone). This is very useful, especially on the new square-screen Pocket PC 2003 Second Edition
devices. A vertical scroll-bar or the UP/DOWN D-pad buttons can be used to scroll the text when it is scrollable.
MessageBox does not handle the SIP correctly. For example, if the SIP is up, MessageBox sometimes display a dialog with the OK/Cancel buttons hidden under the SIP. This can be very confusing to average users, and it also violates MSFT's own guidelines for Logo-certified applications. MsgBox handles the SIP correctly, and it automatically lowers the SIP when it activates.
MsgBox uses the correct Button strings (i.e. Yes/No, OK/Cancel etc) on localized systems. MsgBox uses the same
localized strings that are use by MessageBox, so MsgBox can be safely used on localized devices.
The MsgBox library can be linked with applications compiled for Pocket PC 2000 (ARM), 2002 and 2003/2003SE. However,
when running on Pocket PC 2000 or 2002, it will just call the standard MessageBox. The improved MsgBox dialogs will only be used on Pocket PC 2003 and
2003 Second Edition.
The LEFT/RIGHT D-pad buttons and the Action button can be used to select a button, just like with the standard MessageBox.
UP/DOWN D-pad buttons can be used to scroll the text when text is scrollable.
As far as we know, MsgBox is fully compatible with MessageBox (as far as API and functionalities are concerned). It also works well with Hi-res aware applications (on Hi-res and Low-res devices).
MsgBox is a Shareware. It is free to download it and try it. There is no nag-screen and no demo version.
If you like MsgBox and decide to use it in one of your Pocket PC applications, all we ask is that you make a small donation using
one of the Paypal buttons below (available soon):
<MsgBox $20 donation> <MsgBox $50 donation> <MsgBox $100 donation>
You determine the amount of your donation according to how useful MsgBox is to your project.
You can choose to keep using the Standard MessageBox, but in this case you need to shorten all your messages and make sure they
will not be truncated in Landscape mode. This can be quite a problem when you have localized applications, as you may have to re-translate
several strings.
You can also decide to re-write your own replacement for MessageBox (which is what we did with MsgBox). But you will
probably spend several days just on that, including all the testing and debugging. MsgBox is well tested already.
So, using MsgBox should save you time and money. And since you can try it for free, there is no risk!
Currently only the binary is available. Source code will probably be available only to people making a certain level of donation.
The include folder contains the msgboxlib.h file that you need to include.
The ARMRel folder contains the .lib and .dll files for ARM (can be used with Pocket PC 2000, 2002, 2003 and 2003 Second
Edition).
The emulatorRel folder contains the .lib and .dll files for the x86 Pocket PC 2003 and Pocket PC 2003 SE emulator.
The wrapper .Net folder it only for .Net CF users. It contains the .dll and .gac files for the .Net wrapper on
Pocket PC 2003 and Pocket PC 2003 SE.
We recommend to place the msgbox dll in the home folder of your application (i.e. where your .exe resides), although you can
also place it in the \Windows folder.
The .lib and .dll file names contain the MsgBox library version number (e.g. msgbox17.lib and msgbox17.dll for version 1.7). This is to avoid problems caused by incompatibility between different versions of the dll. That's because on WinCE, there is no support for different versions of the same dll being loaded at the same time.
Yes! You need to install the files located in the "wrapper .Net" folder of the distribution. The .Net CF API is 100% identical to that of MessageBox. If you have any questions about the .Net wrapper, please contact Romuald TISSERAND.
No VB wrapper is available yet, sorry!
MsgBox is provided as-is, without any support. Naturally, if you find a bug or have a suggestion, we'd like to hear about it. You can use the MpegTV Contact form.
Not that we know of.
Version 1.7: Improved support for localized Pocket PC's. MsgBox now uses the correct strings in all cases, and button size is
increased to accomodate larger localized strings, if needed. Fixed a bug related to determining the system font from the Registry. Removed
public API to MsgBoxInit (not necessary now that MsgBox uses the correct Button strings in all cases). Added .Net wrapper.
Version 1.6: This version was considered stable enough to be included in PocketTV 0.14.6. From now on, PocketTV will use MsgBox.
MsgBox library is © 2004 by MpegTV LLC, all rights reserved. The .Net wrapper is © 2004 by Romuald TISSERAND, all rights reserved.
You are allowed to redistribute the MsgBox library as part of a linked binary application. You are not otherwise
allowed to redistribute the MsgBox library package itself, or any of its component.
Disclaimer of Warranty:
The MsgBox library package (MsgBox) is available to the user on an "as is" basis. Copyright-holder(s) disclaims any and all warranties, whether express,
implied, or statuary, including any implied warranties or merchantability or of fitness for a particular purpose. In no event shall the
copyright-holder(s) be liable for any incidental, punitive, or consequential damages of any kind whatsoever arising from the use of this file.
This disclaimer of warranty extends to the user of MsgBox and user's customers, employees, agents, transferees, successors, and assigns.