Loading...
 
Skip to main content

In the past 6 years of working with different FDT DTMs and frame applications, from time to time the question arose whether a bug is a bug of the DTM or the frame application. Sometimes, this question was really hard to answer. Often, the question also is "is it a bug which occurs only in .NET?".

So I developed a small FDT frame application, even smaller than fdtREGEDIT and not based on .NET but on Visual Basic 6. It does not use any magic things, just pure method calls - and that's also what it looks like. The tool is intended to be used by developers with FDT know-how only. This article describes how to bring a DTM into state "configured" in order to analyze other issues, which will be a topic for future articles here in this blog.

So first, please find MicroContainer for download. When you unzip it, you'll find an executable called MC_classic.exe, which is MicroContainer.

Please note that there was an update in the meanwhile and the user interface looks different now.

The user interface looks like this:

At first, please enter the ProgID of the DTM into the topmost textbox. MicroContainer will not scan the Registry for possible values like fdtREGEDIT does, because one of its aims is to have as few code as possible. But you can use fdtREGEDIT to determine the ProgID and then enter it in MicroContainer. Then press the button labelled "1 CoCreateInstance / InitNew()". If this is successful, an according text will be displayed on the right.

Next, check whether the schema path exists and press the button "2 Environment()".

Next, the device types of the DTM need to be determined. This is done by getting the Information XML of the DTM. Pressing the button "3 GetInformation()" will fill the combo box with device types below that button.

Select a device type and initialize the DTM with that device type by pressing the button "4 InitNew()".
Then, select a user role and press the button "5 Config()" in order to bring the DTM in the state a usual frame application normally works with it.


As you probably saw in this sequence, you have the full control over the DTM. All those steps are normally done by a frame application in the background. With MicroContainer you can do it by yourself or do it in different order (which probably causes problems because it's not according the specification).

In this state, you can perform some typical checks on the DTM, but this is topic of other articles.

To release the DTM when it is no longer needed, press the button "PrepareToRelease()" and then "IUnknown::Release()".

by Thomas Weller at 1:18 PM in FDT Tools