A major player in our very, very late delivery of turned out to be problems with toolbox integration in Visual Studio 2008. The process of automating the install itself isn’t well documented, so it took a while to determine that we weren’t actually doing anything wrong, but instead that we were uncovering bugs and limitations in Visual Studio itself.There are two problems every CF developer needs to be aware of (and I really hope Microsoft will publish a KB article on these to help get the word out):. Controls built against CF 2.0 will not show up in the toolbox for CF 3.5 projects. There is absolutely no way to make them show up. So if you want your control to be available in the toolbox for CF 2.0 and CF 3.5 projects, you must build and deploy two versions of your control. This appears to be “by design,” though I’d argue a seriously flawed design.
![]()
To compound the problems caused by #1, there is a serious bug as well. If your control uses the Microsoft.WindowsCE.Forms assembly, then you cannot add it to the CF 3.5 toolbox. The toolbox accepts CF 2.0 controls using it, but CF 3.5 controls will always throw an exception in Studio. Even worse, if you have several controls in a single assembly and just one of them uses Microsoft.WindowsCE.Forms, then none of the controls in the assembly can be added to the Toolbox.So what does this mean to SDF users? Well nothing good. We first tried to work around “feature” #1 by building and deploying two SDF assemblies for our controls. It’s not very maintainable, and it’s painful, but we spent a good week getting our new automated build scripts to generate the necessary assemblies, CAB files and deployment manifests.
After all that, we found bug #2, so even though we had the 3.5 assembly, it was unusable.This means that, unless Microsoft releases changes to Visual Studio or we remove several controls from the SDF, you will not have Toolbox support for SDF controls with Compact Framework 3.5 projects in Studio 2008. We regret that fact and apologize to our users, but there’s simply nothing we can do about it at this point. What we may do (I’m not saying this.is. what will happen, only what we’re considering at this point) is split the OpenNETCF.Windows.Forms.dll assembly up to pull CF 3.5 Toolbox supportable controls out, but that’s going to break references and make deployment and nasty business.So if you’re an SDF user and you’d like to use the SDF Controls in your CF 3.5 toolbox we encourage you to not open a bug with us, but instead open a support case with Microsoft. Remember, if you open a case with them and it turns out to be a bug, the support incident is free. What it does, however, is give them some insight into the number of customers that the bugs actually affect, and hopefully will give them some incentive to release a fix for these problems before 2010.Note: One semi-kludgy way to get the Controls to show up is to start the project as a 2.0 project and drop them on the Form, then upgrade the project to 3.5.
Nov 26, 2008 OpenNetCF SDF 2.3 The Smart Device Framework is our award-winning framework that provides hundreds of classes and thousands of properties and methods to extend the behavior of the.NET Compact Framework. SDF 2.3 is finally available. The OpenNETCF SDF has a WebBrowser control under the OpenNETCF.Windows.Forms namespace. There have been some “issues” with the WebBrowser control and using it on a WindowsCE device using.NETCF 1.0. The WebBrowser control works on Pocket PC devices but does have limited functionality on Windows CE devices.
It seems that the designer itself can handle the objects, it’s just that the Toolbox can’t.Author Posted on Categories. So a few months ago we released our, and we decided to try out. Our thinking was that developers make their living – and typically a more comfortable living than flipping burgers – and that the would a) understand the value of code and time saved and b) be willing to compensate us for the SDK based on their perceived value of the product.We here we are a full four months later, and how is this experiment going? Well here’s a graph that says it all:What this says is that we’ve sold 51 “value units” to 37 customers, meaning that over 80% of you who bought it only paid $5. Now assuming you’re a low-paid, entry-level guy making only $40k a year that means you felt it’s worth just over 15 minutes of your time (and keep in mind this thing comes with full source code).What this tells me is that one of these must be the case:1) The SDK sucks and has no value2) People don’t understand “value-based” pricing3) Developers are cheap bastards who will pay as little as possible for somethingWell #1 is probably not true, as we’ve used it on a few projects and it works well. I think we descibed value-based pricing pretty clearly, and it’s not a tough concept. So all I can conclude is, well, #3 must be true.
Now we can’t really hold it against you, after all we did allow you to buy it for $5 and some people simply have low moral standards. I’m just surprised it’s so many of you.Will we change the pricing model? Well I have two thoughts on that.1) the current pricing includes zero support, so it’s no “work” for us to just leave it as-is2) moving it to fully open source might increase the number of people using itI’m inclined to go with #1, simply because moving it to open source requires a bit of work on our part. In short, we’ll keep it out there as an apparent $5 product because I’m too busy to do anything else with it, but the likelihood of it getting any additional features is pretty slim. It was an experiment that yielded data, and as such I’d say that it was valuable. It certainly shows that it’s a pricing model that can’t be used to support a business.
Author Posted on Categories. As with most developers, I have a large pool of code snippets from work, tests and investigations I’ve done in the past. Sometimes these grow into products, other times they just sit on a hard drive waiting for a time for me to actually use them.Over the coming weeks I plan to blow the dust off of some of these and see what looks worthwhile.
Simple stuff might get rolled into the (I rolled in a a couple weeks ago) and some stuff will get pushed out as open source libraries because we simply don’t need any more products generating any more support load on us at the moment.Hopefully we’ll come up with a coherent place to put all of these in the near future, but for now I’ll just post them here on my blog.The first is the series is called POOMHelper. I put this together back when WinMo 5.0 first came out while doing work that required that I detect when a POOM item was modified or deleted. It’s a fairly straightforward piece of code that hooks into the eventing mechanism of POOM, plus it also allows you to set some properties of POOM items (mostly Contacts IIRC) that didn’t exist in the POOM object model at the time (they may have since been added).Here’s what the public object model looks like:The code is released under, so do with it what you wish. If you need support or help, we offer consulting services.Author Posted on Categories.
![]()
As well as the revolutionary changes in the SDF v2.0, some of which are simply only made possible by improvements in.NETCF v2.0, we have used this opportunity to make a number of evolutionary changes too. For example I’m going to take a quick trip through the file functionality in the OpenNETCF.IO namespace:-DriveInfo – This is a new class which mimics functionality new in the desktop framework v2.0 and replaces previous separate classes for StorageCard and ObjectStore information. You can use it in two ways, use the constructor which takes a path and pass in the path of your storage device e.g. “” or “Storage Card” or you can use the static GetDrives method which will return an array of all devices.
A pleasant side-effect of this is that you can data-bind to this array of DriveInfo objects.OpenNETCF.IO.DriveInfo di = OpenNETCF.IO.DriveInfo.GetDrives;dataGrid1.DataSource = di;File2 – To follow accepted naming behaviour we have stopped using Ex as a name suffix and so instead our classes which overlap existing classes in.NETCF have the 2 suffix. I have added some additional helper methods which are found on the desktop to quickly read/write whole files – ReadAllText / ReadAllLines and WriteAllText / WriteAllLines.File2.WriteAllText(filename, textBox1.Text);FileSystemWatcher – We’ve made some improvements here so that all the various event combinations are correctly raised. Also we have built in designer support for VS2005 so you can drop a FileSystemWatcher onto your form and hook up the events in the designer.
![]() Comments are closed.
|
Details
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |