Smart Device Programming with Visual Studio .NET 2003 (September 13, 2005)

Please Note: Portions of this chat have been edited for clarity.

Introductions

mikefos_msft (Moderator):
We are pleased to welcome our Experts for today’s chat. I will have them introduce themselves now.

Paulha_MSFT (Expert):
Hi, Paul Hamilton here. I'm the test manager for the NETCF QA team.

Arun [MSFT] (Expert):
Hi. I am Arun Mehta. I work in the SQL Mobile team of Microsoft.

davidkl_MSFT (Expert):
Hi, I'm David Kline and I am a test developer on the .NET Compact Framework team.

markpre_ms (Expert):
I’m a Program Manager on the .NET Compact Framework team.

Sravanth_MSFT (Expert):
Hi, I am Sravanth. I'm working as a Software Design Engineer in Test with the SQL Mobile team at Microsoft. Feel free to pour in your queries.

baladutt_MSFT (Expert):
Hi, I'm a developer in SQL Mobile

sergeyk_MS (Expert):
I’m a SDE/T on the .NET Compact Framework team working with Winforms and Drawing.

Sachin_MSFT (Expert):
Hi I am Sachin Sinha, Working as Program Manager in SQL Mobile team.

JAbraham_MSFT (Expert):
Hi, I'm Jeff Abraham and I'm a developer on the VSCore team, and I also work on the Visual C++ for Devices feature in VS 2005.

mikefos_msft (Moderator):
Let’s begin the chat. We welcome you to begin submitting your questions for our Experts!

Start of Chat

mikefos_msft (Moderator):
Q: Why does the device date & time always reset to March 21, 2003? Is there a way to allow the device to maintain the current date and time?
A: I believe that that is the date that the OS image was placed on the device. After a reset, it'll default back to that date.

davidkl_MSFT (Expert):
Q: well, I don't have a question about devices. I just need to know how to get IIS because it did NOT come with XP Prof like they say it does? (should I go elsewhere?)
A: Roger, you can install IIS on Windows XP Professional from the Control Panel's Add or Remove Programs applet. Once you launch Add or Remove Programs, select Add/Remove Windows Components from the column of icons on the left. This will bring up the Windows Components Wizard. Internet Information Services (IIS) is available there.

markpre_ms (Expert):
Q: I have a kiosk application that accepts input from serial (no keyboard, touch screen, or mouse). I'm thinking about converting the serial data I have into keyboard events with SendKeyboardString in the OpenNETCF library.
A: I'm not sure what question your asking here, can you be more specific?

markpre_ms (Expert):
Q: Each form in my application will watch for keypress events. I was wondering if you guys had any advice before I pursue this route?
A: It sounds like your receiving your keyboard data through a serial device which does not fire keyboard events. .NET Compact Framework v2 does include serial libraries which will help you retrieve your data from your serial device. From there it’s up to you to fire the needed events.

baladutt_MSFT (Expert):
Q: Is it possible to get some sort of feedback on the percentage complete while an async replication process is going? The replication is between SQL Mobile on the device and SQL Server 2000. I don't get percentage during the table upload/download.
A: The Replication Status Reporting (ISSCEStatusReporting) interface is an extension of the Replication interface that lets the user to consume synchronization notifications. The following table lists the methods of the Status Reporting interface.

Sravanth_MSFT (Expert):
Q: Is there a way to make the device retain the current date?
A: Will, Windows CE Devices have the time stored in the RAM, which is volatile without battery support. You cannot do that. Better to keep the battery up and going!

Sravanth_MSFT (Expert):
Q: Is there any notification when a device goes out of coverage?
A: Balch, this would depend on the device you are using. Pocket PC Phones/Smartphones both have a coverage indicator which would indicate this!

mikefos_msft (Moderator):

Q: Is there a solution for using Pocket Notes to take notes (ones that include text, drawing, and sound) transfer them to a PC or tablet PC and still have everything in tact?
A:
A:
Is this the notes application built into the device? Or the third party product? If the former, you can choose to sync notes to Outlook, or not to sync them and they can appear in your MyDocs folder on your desktop if you import them. I'm not sure what conversion happens with each of these options. Have you tried both?

markpre_ms (Expert):
Q: Is there a way to write a custom attachment handler for Pocket Outlook using CF? (Custom MIME type?)
A: Windows Mobile 5.0 will include a managed Pocket Outlook object model.

Arun [MSFT] (Expert):
Q: I'm looking at building an app that syncs with Project Server ( sql2000 ) to enable updates to timesheets etc, I see 2 obvious ways of doing this, 1. SQL Mobile syncing and 2. Using an xml file on the PPC, any advice ? ie pro's and con's of either
A: SQL Mobile supports replication with a SQL Server 2000 database. SQL Mobile exposes a programming interface for this replication. You can use this to replicate data between your device and the desktop database.

baladutt_MSFT (Expert):
Q: "The Replication Status Reporting (ISSCEStatusReporting) interface is an extension of the Replication interface that lets the user to consume synchronization notifications. The following table lists the methods of the Status Reporting interface." Table???
A: OnStartTableUpload Method (Replication) OnSynchronization Method (Replication) OnStartTableDownload Method (Replication)

mikefos_msft (Moderator):

Q: Where can I get documentation on the PWI file format?
A: I'm not sure that this is something that is public information. I can follow up after the chat and append to the transcript if I find that we have something. Otherwise, you might want to post to the microsoft.public.pocketpc newsgroup on this one. We don't have representatives from that team here today.

Sravanth_MSFT (Expert):
Q: Can I access the coverage indicator programmatically in C#?
A: Windows Mobile 5.0 introduces a new and very powerful facility called the State and Notification Broker API. The State and Notification Broker API provides a unified mechanism for storing device, application, and system-state information. New state and notification broker API allows applications to easily track system activities such as changes in network status, receipt of a short message service (SMS) message, or an incoming telephone call. I hope that answers your question!

baladutt_MSFT (Expert):
Q: Thanks for the SQL Mobile Async reply.....but I am using those methods now and I do not get any feedback when a table is in the Upload or Download process. Why? Is this not possible? The OnSynchronization method only returns % when I first connect.
A: No, there is no exposed interface for same.

mikefos_msft (Moderator):

Q: This is my first joining the Chat Room. Where can I go for the transcript afterwards.
A: Thanks for coming. Transcripts will be posted here: https://msdn.microsoft.com/chats/transcripts/default.aspx

markpre_ms (Expert):
Q: of this DLL. How can I work with OCX of WinCE in C#.NET?
A: OpenNETCF.org provides a ocx hosting sample. Check out www.opennetcf.org

Sravanth_MSFT (Expert):
Q: can any expert help on enabling/disabling network device programmatically please!
A: Windows Mobile 5.0 introduces a new and very powerful facility called the State and Notification Broker API. The State and Notification Broker API provides a unified mechanism for storing device, application, and system-state information. Beyond simply being a unified store, it provides a centralized notification architecture, allowing applications to easily register for notification, optionally starting an application in the event that a value of interest should change. Windows Mobile 5.0 devices ship with well over one hundred different state values available through the State and Notification Broker. This interface can help you!

markpre_ms (Expert):
Q: Hello I want to communicate with USB port in C#.NET for working on mass storage. How can I do it? I want to communicate with winscard.dll in C#.NET to transfer data between smartcard reader and Win CE.NET, please tell me how I can work with functions
A: There are no managed USB interfaces. NETCF v2 includes better p/invoke and com interop facilities. Have you tried either?

Arun [MSFT] (Expert):
Q: I know that, I've been playing with VS2005 and SQL Mobile 2005 and am very impressed, with how easy it is, but was wondering about which way to go sql or xml/web service type idea, as in pro's or cons for either, looking at a high number of clients 10,000+
A: Gareth, there are many advantages in using the SQL Mobile replication option. SQL Mobile replication supports many features which can come in very handy for your application like download-only articles, conflict detection and resolution, etc. Going through the xml/web service way, you'd have to implement the logic for this in your code. With SQL Mobile option, these things would be taken care of by SQL Mobile. Moreover, maintaining the SQL Mobile based solution would be easier than maintaining the XML/web services.

baladutt_MSFT (Expert):
Q: Follow-up to the SQL Mobile reply - "No, there is no exposed interface for same." One, any ideas on how I can provide some feedback to my users when a large table is downloading? Two, if not....is this a future plan?
A: We have taken the feedback.

Markih_MSFT (Expert):
Q: What Server and Client APIs can I use to push data from a web server to a specific device?
A:Q: What Server and Client APIs can I use to push data from a web server to a specific device?

Sravanth_MSFT (Expert):
Q: Is there a way to tell what type of storage card is installed in the device from the desktop? How can you tell if it is a CF or SD card installed, when the only indication it gives you is "Storage Card" or "Storage Card1"?
A: Both are taken in as "Storage Card" and in case of multiple cards the name is suffixed with an integer "Storage Card1".

Markih_MSFT (Expert):
Q: What Server and Client APIs can I use to push data from a web server to a specific device?
A: Use TCP/IP (Socket communications) if the device is reliably connected. If one or both are intermittently connected, then you should consider using MSMQ

markpre_ms (Expert):
Q: I need to be able to transfer any pwi file from the device to a PC/Tablet and be able to view all contents of the file. Any suggestions?
A: I may be wrong here but I believe the pwi file out of RichInk does is only readable from the device. You may have to capture the image in a bmp. You might want to look at the NETCF team blog at http:/blogs.msdn.com/netcfteam/> . There is an article describing how to wrap native controls and it uses RichInk as its example

Sravanth_MSFT (Expert):
Q: Is there a way to tell what type of storage card is installed in the device from the desktop? How can you tell if it is a CF or SD card installed, when the only indication it gives you is "Storage Card" or "Storage Card1"?
A: Depends on the platform will... In case of Windows Mobile it is "Storage Card".

markpre_ms (Expert):
Q: I've read that the VS2005 will have a wrapper for the RichInk Edit Control, will that only be in the final release and will it be fully functional where you can drag and drop the control onto a form?
A: NETCF v2 will not be offering a managed RichInk control. We do however show the user how to create a custom wrapper in the NETCF team blog. See wrapping native controls article on http:/blogs.msdn.com/netcfteam/>

Sravanth_MSFT (Expert):
Q: ....And....is it possible to know in advance what the Storage Card name is on each device? I have seen "Storage Card', "SD Card", "SDMMC Disk"...why no consistency?
A: Windows Mobile devices would have the name as "Storage Card". The variations are across various platforms...

Sachin_MSFT (Expert):
Q: How can I make the "Publisher" property of the SqlCeReplication object dynamic? In other words, what if our primary server fails and we failover to another server that has a different Server/Publisher name? How can we solve that problem? Thanks.
A: We can have multiple publisher on different servers, and then programmatically we can handle to failover by reinitializing a different subscription on different server.

mikefos_msft (Moderator):

Q: I can't find the NDIS Power key to deal with adapters in the registry
A: Thanks for your question. I'm not sure that any of the folks online today know the answer to this without doing some research. Your best bet might be to post this one to the newsgroups: microsoft.public.windowsce.platbuilder, perhaps?

JAbraham_MSFT (Expert):
Q: Will Windows Mobile support native C++ in the future or is the plan to only support .NET CF?
A: Windows Mobile will continue to support native C++ for the forseeable future.

Sravanth_MSFT (Expert):
Q: Yes, I know they are both given the name "Storage Card", but what I want to know is how to find out what "Storage Card" means...a CF card or an SD card.
A: A turn around i can see, is to programmatically use the State and Notification Broker API to retrieve system information. Usual PDA's support compact flash via an expansion pack. The expansion pack indicator can be used to distinguish between an SD Card and a CF Card. I hope that would help you !

markpre_ms (Expert):
Q: Can any formats besides PWI be exported by the RichInk control? The only thing I have seen is a byte[] that you feed to a file stream...any other way to save that data?
A: I believe this is a limitation of the control, you will need to do the work manually to save the file from the stream in another format.

Arun [MSFT] (Expert):
Q: I know that, I've been playing with VS2005 and mobileSQL 2005 and am very impressed, with how easy it is, but was wondering about which way to go sql or xml/web service type idea, as in pro's or cons for either, looking at a high number of clients 10,000+
A: Gareth, there are many advantages in using the SQL Mobile replication option. SQL Mobile replication supports many features which can come in very handy for your application like download-only articles, conflict detection and resolution, etc. Going through the xml/web service way, you'd have to implement the logic for this in your code. With SQL Mobile option, these things would be taken care of by SQL Mobile. Moreover, maintaining the SQL Mobile based solution would be easier than maintaining the XML/web services.

durgag_MSFT (Expert):
Q: I'm looking at building an app that syncs with Project Server ( sql2000 ) to enable updates to timesheets etc, I see 2 obvious ways of doing this, 1. SQL Mobile syncing and 2. Using an xml file on the PPC, any advice ? ie pro's and con's of either
A: I can comment on the SQL 2000 (server) to SQL Mobile (on the device): you have two ways: Merge Replication and RDA. If you have large set of devices that need to sync to a central database I suggest to use Merge Replication. You can also use Remote Data Synchronization if the device application wants to control the synchronization logic.

Sravanth_MSFT (Expert):
Q: In Windows Mobile 5.0 Pocket Outlook object module, will I get an event when an attachment is opened? (did not see one in MSDN docs)

A: No! The only notifications you get are PIM_ITEM_CREATED_LOCAL This process created a PIM item. PIM_ITEM_DELETED_LOCAL This process deleted a PIM item. PIM_ITEM_CHANGED_LOCAL This process changed a PIM item. PIM_ITEM_CREATED_REMOTE Another process created a PIM item. PIM_ITEM_DELETED_REMOTE Another process deleted a PIM item. PIM_ITEM_CHANGED_REMOTE Another process changed a PIM item.

Sravanth_MSFT (Expert):
Q: I'm looking at building an app that syncs with Project Server ( sql2000 ) to enable updates to timesheets etc, I see 2 obvious ways of doing this, 1. SQL Mobile syncing and 2. Using an xml file on the PPC, any advice ? ie pro's and con's of either
A: SQL Mobile supports replication with a SQL Server 2000 database. SQL Mobile exposes a programming interface for this replication. You can use this to replicate data between your device and the desktop database.

Sravanth_MSFT (Expert):
Q: Is there a way to associate a file extension with my app and get notified when a user clicks on the file in Windows Mobile?
A: You can do that by modifying the registry key and associating your file name to that.

mikefos_msft (Moderator):

Thank you for joining us today for our chat concerning Smart Device Programming with Visual Studio .NET 2003. A few of our experts will be hanging out for a few more minutes to try to respond to pending questions. We responded to as many questions as possible, but acknowledge that we didn't get them all. For further assistance, we'd recommend visiting the Microsoft public newsgroups or the MSDN forums

Top of pageTop of page