Metafile Utilities

Below are some free utilities developed by Companion Software to list metafile records and compare metafiles. You can also find some other utilities at the Graphics Conversion Software section of the Companion Software Other Helpful Web Sites page.

IMPORTANT LEGAL NOTICE: These utilities are provided “AS IS” with ABSOLUTELY NO WARRANTEE OF ANY KIND. You may make a copy of these utilities for your own personal, non-profit use. Use of these utilities is AT YOUR OWN RISK. They are the property of their owners and may not be sold or modified in any way.

Companion Software does not provide technical support for these utilities. However, if you believe there is a problem with them, please feel free to send us a Problem Report.

Metafile Listing Utilities


These Companion Software utilities are 32-bit Microsoft Windows console applications (i.e. they can be run at the DOS (command) prompt) that display a “clear text” list of the records in a metafile. This is useful when you want to see what commands are used in a file or if you want to do a “conceptual compare” of two metafiles.

System Requirements: Microsoft Windows. Please make sure you have read this IMPORTANT LEGAL NOTICE before downloading.

  • Download MetafileUtilities.zip including LISTWMF.EXE (v1.10) – lists metafile records in WMF (and CLP) files; and LISTEMF.EXE (v1.21) – lists metafile records in EMF files.

    Source Code: Microsoft Windows. Please make sure you have read this IMPORTANT LEGAL NOTICE before downloading.

  • Download the C source code for LISTWMF.EXE (v1.10) – the single LISTWMF.C file demonstrates how to open and parse WMF (and CLP) files optionally with placeable metafile headers. The zip file also includes a project and solution file for Microsoft Visual Studio .NET (v7.0), but the .C file should compile fine with most versions of Visual Studio.
  • Download the C++ source code for LISTEMF.EXE (v1.21) – the single LISTEMF.CPP file demonstrates how to open and parse EMF files. The zip file also includes a project and solution file for Microsoft Visual Studio .NET (v7.0), but the .CPP file should compile fine with most versions of Visual Studio.

Metafile Compare Utilities


You could compare two metafiles using the DOS COMP or FC command. However, this doesn’t always work. Sometimes, metafiles produce identical output but have random “garbage” bytes in unused portions of the file. Other times they contain a “comment” record that includes the filename or other information that doesn’t affect the actual output. So, for example, if you open one WMF file (with a program like Metafile Companion), save it with a new name and then do a “binary” compare of the files, the two files won’t compare.

The answer to these problems is to do a “conceptual compare” of the actual metafile records themselves excluding any comments. A simple way to to this is to do a binary compare of the listings of two metafiles.

Below are two batch files from Companion Software that do just that. You may want to tailor them for use on your system.

System Requirements: Microsoft Windows and the appropriate Metafile Listing Utility. Please make sure you have read this IMPORTANT LEGAL NOTICE before downloading.