Log in

View Full Version : Use Any COM or ActiveX Control from .NET Compact Framework


Andy Sjostrom
03-21-2003, 10:45 AM
<a href="http://www.odysseysoftware.com/cfcom_main.html">http://www.odysseysoftware.com/cfcom_main.html</a><br /><br />In <a href="http://www.microsoft.com/billgates/speeches/2003/03-19mdc.asp">Bill Gates keynote</a> at the Mobility Developer Conference he mentioned a really cool product from Odyssey Software called CF COM:<br />"The success we've had depends on partners building tools. So just like we've always done with Visual Basic and Visual Studio, we've encouraged people to build components that help developers. A good example of this is Odyssey builds what they call CF COM that lets you build new managed applications, but you can incorporate in any COM work that you've done. So it's complete interoperability there, and they did a very good job making that small and very effective. A lot of the other tools there, are all documented up on the Visual Studio web site, and many things there are worth looking at to see if they can help you build your applications."<br /><br />CF COM fills a gap in the .NET Compact Framework. The gap has meant that it's been very painful to use COM components and ActiveX controls from managed .NET Compact Framework code. With CF COM, a transparant, light-weight and robust wrapper, the gap is addressed. I and Chris Forsberg have done some testing during the development of CF COM and we are very impressed. Using just a few lines of code you can continue to use existing components and get going quickly. The RAM footprint of this beast is staggering: just 37K in total!<br /><br />Odyssey Software has a special <a href="http://www.odysseysoftware.com/cfcom_purchase.html">launch offering</a>: "All orders placed on or before March 31, 2003 will receive a 20% discount. To receive this discount enter the promotion code 6DX39F when placing your order."<br /><br />Here are some product highlights:<br />• Use ActiveX controls in .NET CF applications <br />• Use COM components in .NET CF applications <br />• Create managed controls/components from ActiveX controls &amp; COM components <br />• Includes managed wrappers for ADOCE, Pocket Outlook, and MediaPlayer (with source) <br />• Supports COM &amp; ActiveX events <br />• Generates native .NET exceptions <br />• Marshals .NET types to Variants (vise versa) <br />• Supports all automation-compatible types <br />• Supports unlimited multi-dimensional arrays <br />• Supports In/Out parameters <br />• Supports IEnumVariant &amp; Enum marshaling <br />• FAST &amp; efficient advanced marshaling, 400 roundtrip operations per second <br />• Generic native and managed DLL, (no custom native code needed) <br />• Full designer support in VS.NET 2003 <br />• Total footprint 37K, (Managed 21K, Native 16K) <br />• Immediate availability – shipping now!

johncj
03-21-2003, 02:31 PM
This looks like a very cool product, but the rather byzantine licensing terms really bother me. A tool like this has real value, but I hate runtime license fees for developer products. I think Odyssey will hinder the success of their product with these terms.

KAMware
03-21-2003, 02:46 PM
That licensing scheme just turned me off. They will not get my money. I do not like runtime license either and this one is really bad.

Andy Sjostrom
03-21-2003, 03:34 PM
I think that Odyssey provides a good licensing schema. It is very difficult to set a fair "one price fits all". For a big corporation, the value of this product can be thousands of dollars and the cost, if it is in valid proportion to the value, might not be a big issue. For a smaller player, thousands of dollars is a BIG deal. In my opinion, price per number of devices is a valid strategy that addresses at least portions of the dilemma.

Also, if you are interested in unlimited distribution license options you can always contact Odyssey. Pretty simple: "Commercial, Enterprise, and OEM unlimited distribution license options are also available. For more information, please call Odyssey Software at 585-214-2409 x104 or email [email protected]."

All this said: if Odyssey should set a "one price fits all" -- what do you think it should be given that it will be used in very large as well as small deployments?

Peter Foot
03-21-2003, 04:02 PM
There are alternatives, I've built wrappers around both POOM and ADOCE, licensing is totally transparent, a one off fee for a developer license and as many deployments as you like. The controls have been available for a couple of months now. As well as simply wrapping the basic COM controls I've built in a lot of added functionality to make programming with the controls easier from your dot net controls. Integration with .NET data binding etc. Each is highly optimised to its specific purpose.

Odyssey is able to command high prices because it targets larger organisations, my wrappers were designed to be affordable for the small developers, a group that need all the support they can get with the core .NET CF programming tools being a significant investment for any small developer.

Peter
www.inthehand.com

Andy Sjostrom
03-21-2003, 04:14 PM
There are alternatives, I've built wrappers around both POOM and ADOCE, licensing is totally transparent, a one off fee for a developer license and as many deployments as you like. The controls have been available for a couple of months now. As well as simply wrapping the basic COM controls I've built in a lot of added functionality to make programming with the controls easier from your dot net controls. Integration with .NET data binding etc. Each is highly optimised to its specific purpose.

Odyssey is able to command high prices because it targets larger organisations, my wrappers were designed to be affordable for the small developers, a group that need all the support they can get with the core .NET CF programming tools being a significant investment for any small developer.

Peter
www.inthehand.com

Actually, Odyssey provides options in the same direction too. They have built, using CF COM, specific wrappers for ADOCE and POOM for unlimited distribution. The pricing seems to be much the same in comparison with yours, Peter! 8)

"CFCOM - ADOCE Component License (unlimited distribution)"
"CFCOM - Pocket Outlook Component License (unlimited distribution)"

I will make sure to test them all out!

JMountford
03-21-2003, 04:48 PM
At one point in time I had learned how to program. I was decent but I never used my skills. Since then I have forgotten what I have learned but I am considering trying to relearn VB and also C++ and Java. Then I hear you guys with all your talk of these compilers that cost thousands of dollars and bla bla.

And heck I do not even know what the heck COM is.

It is all a little daunting and maybe I should just not bother.

Also Andy you talk a lot of all you do and your experience and you have tested this and that, but if my life depended on it I would not know one single app you have had a hand in.

can you help?

Andy Sjostrom
03-21-2003, 05:00 PM
Also Andy you talk a lot of all you do and your experience and you have tested this and that, but if my life depended on it I would not know one single app you have had a hand in.

can you help?

I am not sure I understand your question. Would you want me to list applications that I have been involved in developing, or to explain what COM and CFCOM is all about? :?:

JMountford
03-21-2003, 06:41 PM
I am not sure I understand your question. Would you want me to list applications that I have been involved in developing, or to explain what COM and CFCOM is all about?
BOth actually if you do not mind.

DerekTheGeek
03-21-2003, 09:34 PM
Isn't anybody angry that Microsoft promised a CF framework over a year ago? Weren't we supposed to be able to use Visual Studio .NET for Pocket PC development. In fact that was supposed to be one of the selling points of the first edition of .NET. The CF and SDE. Now we have to buy Visual Studio .NET 2003 if we want to use the Compact Framework. I don't know about you guys but I just can't throw that type of cash away. After we (and I emphasize WE..meanig developers and end users) find all the huge bugs in the new 2003 release perhaps Microsoft will just say that everything will be fixed in the 2005 release of Visual Studio .NET. Oh and by the way another $1000.

I am a bit disappointed that PPC Thoughts doesn't cover other development solutions such as Personal Java, App Forge, or even the Python ports for the Pocket PC with the zeal that they cover Microsoft dev tools. Most of us are not MVPs with Microsoft.

- Derek

andersw
03-21-2003, 10:15 PM
I am a bit disappointed that PPC Thoughts doesn't cover other development solutions such as Personal Java, App Forge, or even the Python ports for the Pocket PC with the zeal that they cover Microsoft dev tools. Most of us are not MVPs with Microsoft.

- Derek

AppForge sure looks like a tempting alternative considering the fact that your applications will run on both PPC and Palm units (as well as on Nokia and SonyEricsson devices). If a developer invests a lot of time and effort in producing a PDA application of some sort - wouldn´t that developer be interested in being able to sell to as many customers as possible? To have one code base for multiple target platforms sounds ideal. Has anybody had any experience with the AppForge product...?

Peter Foot
03-21-2003, 10:36 PM
Isn't anybody angry that Microsoft promised a CF framework over a year ago? Weren't we supposed to be able to use Visual Studio .NET for Pocket PC development. In fact that was supposed to be one of the selling points of the first edition of .NET. The CF and SDE. Now we have to buy Visual Studio .NET 2003 if we want to use the Compact Framework. I don't know about you guys but I just can't throw that type of cash away. After we (and I emphasize WE..meanig developers and end users) find all the huge bugs in the new 2003 release perhaps Microsoft will just say that everything will be fixed in the 2005 release of Visual Studio .NET. Oh and by the way another $1000.

I understand exactly where you are coming from, there is absolutely no consideration for small developers in .NET CF at least in its v1.0 form. Its obvious that they have built what they think enterprise developers need (still missing some important features) and not thought about the wider market. The fact that .NET CF is not available in SDK form like the full framework makes it out of the reach of many people who can bring out new software using it.

Peter Foot
03-21-2003, 10:42 PM
And heck I do not even know what the heck COM is.?

I cant help with your other questions but as for COM (Component Object Model) well in brief it is a technology for producing software components. It is a pre .NET technology and forms the basis for ActiveX which are self describing components which can range from data access libraries such as ADOCE to objects with a user interface which can be embedded and scripted in webpages and other host programs. There is an overview article here
http://msdn.microsoft.com/library/en-us/dncomg/html/msdn_comppr.asp
which is quite old now but still relevant. you don't strictly need to know anything about COM to get into .NET programming but a little bit of background knowledge never hurts..

hfann
03-21-2003, 11:33 PM
If you want to develop for Pocket PC without spending a dime, just download eMbedded Visual Tools 3.0 and start programming. You don't have to wait for .NET CF and VS .NET 2003. If you want your program to run real fast, C++ is the way to go!

gdaswani
03-22-2003, 05:15 AM
If you want to develop for Pocket PC without spending a dime, just download eMbedded Visual Tools 3.0 and start programming. You don't have to wait for .NET CF and VS .NET 2003. If you want your program to run real fast, C++ is the way to go!

Hmmmm, VS.Net CF will be much more useful for the enterprise (due to the WS SOAP support) especially now with J2EE (and SAP R/3 WAS servers) support WS..

Peter Foot
03-22-2003, 09:24 AM
If you want to develop for Pocket PC without spending a dime, just download eMbedded Visual Tools 3.0 and start programming. You don't have to wait for .NET CF and VS .NET 2003. If you want your program to run real fast, C++ is the way to go!

Hmmmm, VS.Net CF will be much more useful for the enterprise (due to the WS SOAP support) especially now with J2EE (and SAP R/3 WAS servers) support WS..

I think thats the way microsoft are aiming the compact framework, an enterprise developer can easily purchase VS .NET 2003 for their development.

hfann has a good point eVB for all its shortcomings is free and a good starting point for programming on the Pocket PC. C++ will give you greater performance and allow you to do more things - write drivers, today screen plugins etc, buts it a far less friendly programming language to use.

Andy Sjostrom
03-22-2003, 10:19 AM
I am not sure I understand your question. Would you want me to list applications that I have been involved in developing, or to explain what COM and CFCOM is all about?
BOth actually if you do not mind.

Sure. I see that Peter already answered the COM part of your question.
Applications I have built are mainly custom built vertical business applications. My role in these development projects span from system architecture design to development. Clients that currently use Pocket PC solutions that I was a part / responsible in designing and developing include:
BT Industries (1200 service technicians, case study: http://www.cgey.com/solutions/adi/mcommerce/media/BTIndSuccessStory.pdf)
National Board of Agriculture
National Board of Forrestry
GlaxoSmithKline
Swedish Parliament

I am not exclusively working with mobile solutions. I also am involved in building back office systems and web applications. Recent clients include:
Volvo Car Corporation
Justice Department
Fagerhults Belysning AB

Chris Forsberg and I have developed WebLiquid; a universal Pocket PC browser/client for XML Web Services. http://www.businessanyplace.net/?p=webliquid

Hope this answers your question! :D

johncj
03-24-2003, 05:09 AM
All this said: if Odyssey should set a "one price fits all" -- what do you think it should be given that it will be used in very large as well as small deployments?

Run-time licenses are not acceptable in the Microsoft developer world. I wish Odyssey had cut a deal with Microsoft to get this "in the box" with VS.NET 2003. If Microsoft can give away 25,000 Pocket PCs, surely they could done a deal to get this bundled in, especially in light of the fact that the desktop framework has this built-in.

Since that didn't happen, I would hope to see this product offered for $300 per developer. If they think they can increase their revenues by offering the limited-use licenses, that's fine too.