Targeting PocketPCs With Mono? 90
That's What She Said writes "I am a long time Mac user and, as most people like me, I have some particular problems with Microsoft technologies. I need to develop applications for the PocketPC platform (Windows CE and Windows Mobile), some simple data collection applications for barcode-enabled portable data terminals. Every device manufacturer on the market offer SDK's for .NET, so I believe this is the way to go. I already tried Microsoft Visual Studio and I am having serious problems using the IDE. I simply don't understand it quite well. My programming experience comes from PHP and JavaScript, where all I needed was a simple text editor and to keep my work as tidy as I could. So, it seems that a full-fledged IDE is kind of scary to me or Visual Studio is not very good for beginners. I also want to keep my costs low and free alternatives are welcome." Read on for a bit more (below) on why TWSS is thinking about Mono as a development environment, and is seeking advice.
That's What She Said continues: "Through some research, I've found that my options are quite narrow. Rapid development environments are available, but cost way too much or have some terrible limitations. Also, I have not found many forums on PocketPC development that really have useful information. Google isn't helping. Some directions would be good.
I have been looking at Mono for some time and MonoDevelop seems a hell of a lot simpler to use. I even started playing with it. It runs fine on my Mac.
I tried Google again to find some information on writing .NET Compact Framework applications with MonoDevelop, but I didn't find anything. It seems Mono implements the Compact Framework, but there's not much more information about this. Except for one blog post from 2006, I didn't find anything else.
So, I ask: is it possible? Is anyone doing this with any success? Is there any problem I should know beforehand?"
Just Bite the Bullet (Score:3, Informative)
You can also find tutorials to help get you started here: http://netcf2.blogspot.com/ [blogspot.com]
The only issue using Sharpdevelop is that I don't believe that you can use the Microsoft PocketPC emulator which means you have to keep compiling, uploading, and remote debugging your code.
Visual Studio includes the emulator and would be a good tool for you to learn. The jump from using notepad to a full IDE programming suite can be intimidating at first but it will really help your career as a programmer.
Debugger (Score:2, Informative)
Head First C# best intro to Visual Studio book (Score:4, Informative)
http://www.oreilly.com/catalog/9780596514822/ [oreilly.com]
Best C#/Visual Studio book from what's in my opinion the best series of teaching books around right now.
Here's the link to free download of Visual C# Express.
http://www.microsoft.com/express/vcsharp/ [microsoft.com]
That's not a trial. It's a free reduced feature version of Visual Studio 2008.
Re:Head First C# best intro to Visual Studio book (Score:1, Informative)
Should be doable (Score:4, Informative)
I used a port of the DotGNU project as an on-board compiler [sourceforge.net], and I think that I used Mono on Linux. (It may have been DotGNU, I don't recall.)
I believe that I ripped the DLLs comprising the compact framework off the device, and then used that to compile when on Linux. I think that there was a switch to turn off linking against the system DLLs, and I just linked against the DLLs from the device. Once the exe was built, I was able to run it on Linux using mono (since they had implemented WinForms, I could just run it straight), or I would simply copy the exe to the device via an SD card and then I could run it from there.
I never finished developing the app, so I never got around to figuring out how to package a CAB, but that should be trivial. I know that there are Linux apps to create CAB files, so it should just be a question of finding one buildable on the Mac and figuring out what to put into the manifest.
Re:No (Score:3, Informative)
If you can fix it with a hard reset it's not a brick.
Re:Qt (Score:3, Informative)