General XMetaL Discussion

  • KdG

    XMetaL 11 forms

    Participants 2
    Replies 3
    Last Activity 6 years, 8 months ago

    Dear Derek,

    Today we recently tried the new XMetaL 11.0 Author essential.

    It looks like the old office .hhf forms are no longer working. In 10.0 they were supported as since the beginning of XMetaL-times.

    Our XMetaL implementation with CCMS-Database connection depends for some critical overviews on .hhf forms. Things like listboxes never were available in the .xft forms. We use them to present the user the titles and metainfo of a query.

    Are we correct that .hhf forms do not work any longer, or what can we do to get them working?



    Reply to: XMetaL 11 forms

    You need to install the fm20.dll in order for .hhf forms to work.  We are no longer allowed to redistribute this Microsoft DLL.  I believe the DLL is part of MS Word and long ago, it was distributed as part of the ActiveX ControlPad redistributable.



    Derek Read

    Reply to: XMetaL 11 forms

    Here's a bit more history and information on this topic to capture it in a relevant discussion (in case the people that remember these things get hit by a bus 😉

    The .hhf file format was deprecated in 2003 when XMetaL Developer was first introduced. A new editor was provided with XMetaL Developer that saves forms in a different format with an .xft file extension. This information was included with the XMetaL Developer 4 documentation. If an .hhf file needed to be altered the only supported option was to recreate it in the .xft format. You could continue to develop .hhf files using XMetaL 2 or 3 and use them with XMetaL Author 4 and up, but clients approaching XMetaL Support that had issues with the old .hhf format have been encouraged to move to the new .xft format. XMetaL Support has not provided support for .hhf file format since 2004.

    If you really feel stuck to the point where you want to try to continue to use .hhf Microsoft has some information on the FM20.dll here:
    A link on that page directs you to a different location where you can find an installer that Microsoft claims also installs the FM20.dll.
    In theory, once you install FM20.dll the .hhf file format should work (but no guarantees).

    When “ActiveX Control Pad” was being installed as part of XMetaL 2 and 3 the information Microsoft was providing about it at the time was  quite different from what that page states now. They encouraged developers to use it in their own applications, web pages (IE), as part of MS Office customizations, and to distribute it freely. I cannot find Microsoft's webpage that first informed 3rd party software makers they would no longer be able to distribute the ActiveX Control Pad with their software, but I believe it was around 2008. I think we released at least one version of XMetaL Author that gave you a choice to download and install ActiveX Control Pad from the Microsoft website as part of our installation. It directed you to a specific Microsoft web page where Microsoft was still encouraging people to use the control. At some point we assumed everyone had moved on to using .xft and because Microsoft kept moving that webpage around we removed this option from our installer.

    There is no guarantee Microsoft will not change their current stance on the fm20.dll in future. In that case you might be limited to copying it from one legacy machine to another and manually registering it. I'm not sure if Microsoft would consider that legal use of the control. They might frown on that if it is included with other software they are selling.

    The XMetaL development team doesn't plan to specifically remove support for .hhf forms from XMetaL Author in the future but if .hhf stops working it will most likely be due to something external (perhaps a new Microsoft compiler will not be able to deal with our old code that drives it, or there might be a conflict with other new code we consider more important, etc). In that case it is unlikely we would try to restore it. We also would not notice unless a client pointed it out because we have not tested .hhf since 2003.

    The built-in list of controls in the .hhf editor probably varies slightly from the list included with .xft (I don't have an old XMetaL 3 readily available to check) but all the controls most people might want should be there in .xft (plus a few weird ones). XFLayout (the .xft editor) includes a ListBox control as one of its standard controls. It might have different property names and events from the one included with XMetaL 2 and 3 (.hhf) but it has very similar functionality. (If it looks and acts like a ListBox…?) XFLayout includes the following controls:

    Text called a “label” in VB and similar environments
    CheckButton usually called a CheckBox in other environments
    EditBox called a “TextBox” in VB and similar environments
    MultiEditBox an EditBox that supports multiple lines of text
    DataSource links a data source to a form using [url=]Windows DSN
    Line draws single straight lines at any angle
    Polyline identical to 'Line' (not much point to this one)
    Freehand draws a 'freehand' line of any shape
    Border draws rectangular shapes
    Arc draws portions of ellipses and circles
    Ellipse draws ellipses and circles
    Frame draws a rectangle that includes a text label at the top, called a GroupBox in VB and similar environments
    Bitmap displays bitmap images
    Hilite draws rectangular coloured shapes without a border

    It is also possible to add any standard ActiveX control to an .xft form that can be added to a .hhf form (even including complex controls like the Microsoft WebBrowser control). You just need to add the control to the list of tools in the toolbox. To see a list of all ActiveX controls installed on your system right click in the toolbox in the .xft editor and select “Add control” and select the control you want to make available. Most controls that Microsoft installs (either with Windows or as part of their other software) start with either “MS” or “Microsoft”.



    Reply to: XMetaL 11 forms

    Just a quick update (bit late but better than none).

    After a clean install on a clean PC the .hhf forms with XMetal 11 work fine!
    So sorry for that fuzz.

    Derek, thanks for your extensive answer.

    Furthermore FYI:

    • The fm20.dll is automatically installed with MS office, so for us most of the time there is no need to install that dll separately. (though I still have the dll from our first XMetaL 2 version 🙂
    • We will continue using hhf for the “listbox” option that has no equivalent in xft. This listbox allows, after a search for topics, to display filenames with adjacent their metadata on separate lines in colums (matrix view).


  • You must be logged in to reply to this topic.

Lost Your Password?