Thursday, December 14, 2006

ADX.NET V2.7 and V2.8 Registry Comparison

We’re just going through some versioning relating development hassles with the MacroView Excel Addin functionality. This blog post is just a means of placing some images in a public location for reference in the Addin Express forums. It appears that in Version 2.7 of ADX.NET the addin dll’s assembly version number was encoded into the registry as part of the COM component’s .NET load info. See the Assembly registry value below:AdxNetRegistryV27Image1

In addition, there was a child key whose name matched the DLL version number below the InprocServer32 key:AdxNetRegistryV27Image2

Now in V2.8 of ADX.NET, there doesn’t appear to be a sub-key and no version number in the Assembly value. This is probably better as there will likely be fewer deployment version issues in the future. Regardless, we are encountering hassles moving from V2.7 to V2.8 – probably because V2.8 can’t handle registering over the top of or unregistering the V2.7 registry info.AdxNetRegistryV28

Wednesday, December 06, 2006

WPF/E Linkfest and thoughts

Yesterday a whole bunch of beta and CTP versions of new Microsoft software was made available. Included was the first CTP (Community Tech Preview) of the WPF/E functionality that was mentioned in my talk on MacroView directions from the recent user group. Its an exciting time with lots of opportunites and pitfalls depending on which direction Microsoft takes this functionality in. This blog post contains a summary of a useful links relating to the recent Microsoft Expression and WPF/E releases. It also includes some thoughts at the end that relate to the MacroView product direction.

First here’s a bunch of videos and screencasts on the new Expression and WPF/E functionality:

A series of official Microsoft links relating to the release:
A series of blog posts from the Expression development team:
A bunch of posts from bloggers (both Microsoft and others):
Check out all of the samples that have been made available. Clicking on the samples will prompt for the download of the WPF/E plugin for IE or Firefox which doesn’t take long to install.
My overall impression is that the functionality released is absolutely fantastic and sits well with the direction we have taken MacroView in the last few years. Regardless there are a number of areas of concern. These include:
  • Microsoft’s interpretation of what the E for “Everywhere” in WPF/E stands for! There has been regular mention of WPF/E being made available by partners on Linux which would be great. The concern is that Joe Stegman didn’t mention the L word once in the recent Channel 9 video even in sections which related to cross platform availability. Together with the recent shannigans/rumblings with Novell and patents gives me cause for concern.
  • There is too much of an emphasis on separating the designer and developer roles in the Microsoft releases. I personally believe that the world isn’t that black and white.
  • A seeming side effect of the designer/developer separation is the lack of Expression tools in MSDN offerings: Expression and MSDN Subscriptions. I have been subscribed to an MSDN Universal package for a number of years. Even though Microsoft have changed the product names to protect the guilty, I feel that a top level MSDN subscription should include every Microsoft product that could be construed to be useful to a developer. The universe is certainly getting small these days if the expression suite isn’t available to developers.
  • The lack of .NET integration at this point in time. There is a firmly stated direction for the integration of .NET byte code functionality so it will happen. The concern is more related to what they have to leave out and how interchangeable code that is used with WPF and WPF/E can practically be. We definitely don’t want a totally separate C# code base for WPF and WPF/E applications.
I am particularly impressed with:
  • The ease of integration between WPF/E and javascript in the browser.
  • The small size (just over 1MB) of the plugin at this stage. Though having a small download is important for adoption rate, I am hoping Microsoft don’t go myopic on the download size and make some compromises for getting as much .NET environment functionality in as possible.
  • The media player functionality included.
  • The Microsoft Design (previously Graphic Designer) WPF makeover. Its an amazing technical feat given the product GUI just a couple of months ago in the September CTP.
  • The inclusion of an extension API in the Microsoft Blend product (previously Interactive Designer). This will be particularly useful in being able to edit XAML files for use within a MacroView environment.

All in all the releases open up a bunch of functional possibilities for MacroView development. The key of course will be the .NET support that is slated for around a February release.

Sunday, December 03, 2006

Windows Bootstrapper build problem

The following error message occurred in Visual Studio 2003 deployment build while working on the MacroView OPC Metaserver functionality today:

ERROR: General failure building bootstrapper
ERROR: Unrecoverable build error

After some experimentation I found that the deployment build problem went away if the bootstrapper option in the project property page was changed to “None”. This was annoying as it all built fine last week in pretty much the same project state. Doing a web search showed up only solution which was to reinstall “msvc”, which I was loath to do given the install time. To cut a medium sized story short the solution that worked for me was to install the latest Windows Installer version:

Friday, December 01, 2006

MacroView User Group Screencasts

The MacroView User Group was held on 16th November. It was hosted by a MacroView customer CSBP. Many thanks to Brian McCully and CSBP for hosting the event which was a great success. Every year we have been summarizing the product progress during the last year and discussing product directions. In addition MacroView customers can choose to do a presentation if they have information to share or a technical subject to cover. This year we recorded the event both from a screencast and a speaker video perspective. Straight screencasts are available here on while screencasts with a picture-in-picture display of the speaker are available at the Sentient site.

Included here are a list of the presentations with short summaries of their content. It was a great day and having screencasts make it easier to share the event with the various MacroView users and VARs around the world. The event sort of explains my seeming obsession with embedding video content into my blog recently.

Introduction and 2006 Overview
In this netcast Doug Bester runs through the progress made by Sentient Computing and the MacroView product development over the past year, for example the new office in Balcatta and a new web site. Doug discusses new software development such as Macroview Windows Desktop and bug fixes which are included in the V3.12 upgrade of MacroView. He then runs through various enhancements in the software such as an increased address field, bug fixes, change alarm functionality and alarm counters.

Product Directions Part I
Apolon Ivankovic discusses the new VNC (Virtual Network Computing) functionality that has been added to MacroView Studio V2 and introduces the MacroView Windows Desktop product. He runs through the standard application modules in MacroView Windows Desktop (VNC, Reports Viewer, Browser and Data Grid) in addition to showing what can be done with custom modules in combination with Microsoft’s Virtual Earth technology.  Part 1 is concluded with a demonstration of Macroview Windows Desktop deployment using ClickOnce technology.

Product Directions Part II
Apolon continues to explain the MacroView product direction and runs through an overview of the planned XAML module functionality. He runs through examples of Windows Presentation Foundation (WPF) applications and describes how Microsoft’s Expression Interactive Designer can be used to created and edit MacroView graphics.  Mark Martin describes his experience with creating Macroview XAML graphics and discusses the XAML tools used such as Microsoft’s Interactive Designer and Graphic designer.

Chris Busby - Iluka Resources (mp3 only)
Chris Busby speaks about the use of MacroView at Illuka Resources Limited. In particular, Chris discusses the challenges associated with the different equipment vendor lifecycles of industrial computer equipment when compared to the rapid turnaround in modern PC IT technology. He also touches on the changeover to the use of the new Linux compatible implementation of the Square-D Ethernet communications driver.

MacroView Excel Addin
Apolon introduces the new Excel Add-in product. It allows Excel to be extended with Macroview specific data access functionality. Tyson Stolarski, continues the presentation and explains how to use Macroview toolbar, which inserts Single Entity Value, Historical Data Table, Metascript Data Table and Query data into Excel files. After each topic Tyson gives a short demonstration of the functionality.

Brett Carruthers - rAware Paging System
In this netcast, Brett Carruthers introduces the new product rAware. rAware is an alarms/paging package produced by Optrix. Brett explains the features of the new product, such as a web Interface for remote access, alarm management, paging and grouped alarms. A demonstration of the paging system with volunteers from the audience is also performed.

Brian Marshall - I.C.E - Tank Transfer Application
Brain Marshall delivers a presentation about the implementation of a MacroView system in a tank storage and transfer application. The netcast provides information on how the features of Macroview were used to deliver a “complex application in a fluid development environment”. Brian runs through the desired deliverables from the system, such as flexibility and a program that can give good feedback to an operator.

Dave Andrews - Loy Yang Power
Dave Andrews gives a presentation on how the use of Macroview proved beneficial to Loy Yang Power, the largest Power Station in Victoria. Dave explains how a new version of the classic operator logs has been recently introduced into their MacroView system.

MacroView Drivers and Communication plus Closing
Apolon gives an overview of drivers and communications work that has occurred during the year. These include improvements within the Metaserver program, the new Modbus Server functionality, the mscomm utility and the development of Square-D PLC Ethernet Driver. Lastly we are run through the architecture and a demonstration of the Macroview OPC functionality that is currently under development.