User’s Guide – FileFixer for V8

Chapter 20 — New Features and Fixes

8.15a — 18 September 2015

New: Added support for Windows 10!

New: To prevent files from being quietly redirected to the “VirtualStore” folders of Windows Vista, Windows 7 and Windows 8, FileFixer and its installer have new default locations for the following files:

  • License files (“axiom.lic”) now get installed to “%programdata%\Axiom\”.
  • Settings files (“<product>.ini” and “settings.dat”) now default to “%appdata%\Axiom\V8\<product>\”.
  • Report and log files (*.rep, *.log) now default to “%appdata%\Axiom\V8\<Product>\”.

8.14b — 26 February 2015

Fixed a problem that caused some elements with custom line styles to be reported as having range errors when they didn’t have them.

FileFixer no longer creates an “Axiom” folder on the desktop unless running in debug mode.

8.14a — 5 August 2014

New! Replace a deleted or badly damaged design file header element.

When a design file’s header element is entirely missing or badly damaged MicroStation will not even attempt to open it. Now FileFixer can transplant a valid design file header into these fatally corrupted files.

New! Fix shared cells with bad dependency linkages.

Some MicroStation add-on applications use a dependency linkage to find the appropriate definition for a shared cell in a design file. When this linkage is broken the shared cells no longer display. FileFixer now finds this problem and can automatically fix it as well.

Improved: Replace a missing shared cell definition from an available cell library.

In the past FileFixer would repair a missing shared cell definition with a dummy definition that only displayed the cells name. Now you can have FileFixer search available cell libraries for the correct replacement cell definition.

New! Automatically fix elements with too many vertices.

The maximum allowed vertices in a MicroStation V8 element is 5000. When a corrupted element says it has more than this using “fit view” can crash MicroStation. FileFixer can now find and corrects this problem.

Additional Improvements

FileFixer now evaluates all non-default models in a cell library when looking for empty models to report.

Fixed a problem that incorrectly reported some reference files as missing in MicroStation XM and earlier versions.

Fixed a problem in Search for Problems mode that incorrectly reported an unused reference file level table (error 267).

Fixed a problem where the model header’s dimension (2D or 3D) was incorrectly set when copied or built from a model with a different dimension.

Streamlined report file message output for certain errors.

Fixed a problem that was preventing the Seal-of Approval from being written in “Search for Problems” mode.

8.13a — 12 February 2013

New! FileFixer fully tested and certified with MicroStation V8i SELECTseries 3.

A design file can be corrupted with a missing or damaged model header. When this occurs the file will not open. FileFixer now fixes this problem automatically.

New! Automatically fix missing or damaged model headers.

A design file can be corrupted with a missing or damaged model header. When this occurs the file will not open. FileFixer now fixes this problem automatically.

New! Fix reference file attachments that use slot zero.

FileFixer can now find and repair a reference file attachment that is incorrectly assigned to slot zero. When this happens certain applications, like ProjectWise do not recognize the attachment.

New! Fix damaged Project Explorer data.

FileFixer now finds files that have damaged Project Explorer data. When this problem occurs it can make opening the damaged file take an extraordinarily long time.

New! Remove TriForma modification lock from elements.

FileFixer can now remove the modification lock established by TriForma on certain elements. This lock prevents MicroStation, without TriForma loaded, from modifying these elements. File owners who do not have TriForma are then prevented from changing these elements or copies of them. This new feature gives them a way to fix this problem.

Improved: Find and fix gaps in 2D complex shapes and chains.

FileFixer, in the past, reported gaps in complex chains between lines and linestrings and has reported these as an error 555. This condition is not actually a corruption but rather a condition that some users have wanted to find and fix for various reasons. As such we have reduced the error severity to a suspicious condition and assigned it as error 151. We have also improved the function so that it now applies to both 2D complex shapes as well as 2D complex chains and will find and add lines to fill the gaps between any linear element components they may contain.

Additional improvements

Fixed a license error when using the German language version of FileFixer.

Improved structured storage repairs to recover even more data.

Improved corrupt or missing level table handling.

8.12d — 4 May 2012

Changed: Minor update to the licensing system.

Fixed: Fixed an occasional problem when running FileFixer in search mode using

MSBATCH.BAT.

8.12c — 26 January 2012

Added support for “Raster Hierarchy header” elements (type 92) when testing complex elements for illegal components.

8.12b — 24 June 2011

Enhanced the Seal-of-Approval handling so that any file, without errors, would also get a Seal-of-Approval provided the option to write a Seal-of-Approval is turned on in the “General” settings category.

Enhanced the non-model table replacement function to make sure level, font, text style and line style table indexes for existing elements are correctly updated in the replacement tables.

Fixed a problem that prevented FileFixer from running in msbatch mode using MicroStation V8i.

Enhanced FileFixer’s handling of line elements when their range was off the design plane but their starting and ending vertices were not.

Made several dialog messages more accurate and easier to understand.

Fixed several formatting problems in the HTM report format.

8.12a — 1 October 2010

Replace a non-model table

New repair settings were added to replace or copy most of the non-model tables contained in design files.

You have the ability to copy or replace the level table, font table, text style table, dimension style table, dictionary table, multi-line style table, line style name table, line style definition table or the filter table.

Copy and replace work slightly different. Replace will only replace the table if it already exists. Copy will replace the table if it already exists or just copy it into the design file if it doesn’t exist.

The new error number is 22.

Delete graphical data in the non-graphical data area

New search and repair settings were added to detect and delete graphical data in the non-graphical data area of the V8 design file. These graphical elements can cause MicroStation V8i to lock up or abort. This is now detected (error 819) and handled by this release of FileFixer.

Additional enhancements

Error number 702 (Complex bit is on for a non-component element) is no longer incorrectly reported for component elements of cells residing in the non-graphical data section of a design file.

8.11a — 8 January 2010

Corrupt linkage enhancements

FileFixer can now delete siamese linkages, linkages that overlap other elements. The error number was changed from 364 to 764 as this condition can cause MicroStation to abort.

New search and repair options were added to detect and correct missing line feed flags in the linkages of text elements that are part of a text node. This is now detected (error 544) and handled by this release of FileFixer.

Reclassified error 635 (“Duplicate text formatting linkage in a text node.”) as a 500-level error (future danger). Its new error number is 545.

8.10a — 4 December 2009

ProjectWise integration

This version of FileFixer is now integrated with ProjectWise! FileFixer can now check out files from ProjectWise, process them and then check them in automatically before processing the next file.

Additional enhancements

FileFixer now correctly reports missing reference file attachments when the reference file’s file name is prefixed with “file://”.

When duplicate text formatting information is linked to text elements in a text node, the text element can display without “line feeds” (smushed together). This is now detected (error 635) and handled by this release of FileFixer.

8.9a — 18 June 2009

Duplicate reference file slot number

Each reference file has a slot number associated with it. Sometimes when slot numbers are duplicated the reference file using the duplicate slot number may not be displayed in MicroStation. This is only a problem when the slot number is duplicated in a model.

New Search and Repair capabilities were implemented in FileFixer 8.9a to detect and repair duplicate reference file slot numbers. The reference file associated with the duplicate slot number will have its slot number set to one greater than the highest slot number currently being used in that model.

The error number 314 is reported when a reference file’s slot number is duplicated.

Other enhancements in this release

Internal pointers in the structured storage framework of some customer files were found to point to each other, resulting in an infinite loop (and MicroStation crash). FileFixer can now detect and repair this.

Enhanced the search and repair settings for finding and rebuilding model header data to also rebuild model index data. Damaged model index data can make models inaccessible.

Enhanced the reporting of font errors by reporting the font name as well as the font number. Font numbers used in one design file may be different in another design file, whereas font names will be consistent.

8.8a — 26 December 2008

FileFixer for V8 version 8.8a is certified for MicroStation V8i.

Due to differences between MicroStation V8i font libraries and earlier font libraries, you might see additional text range errors when V8 files are first processed with FileFixer for V8.

By default, MicroStation V8i requires you to take ownership over all changes since the last design history was saved (when Design History is active). When running FileFixer for V8 you may be prompted to take ownership before FileFixer continues processing. To eliminate this interruption, set the MicroStation configuration variable

MS_DESIGN_HISTORY_OWNERSHIP_WARNING to 0 (zero). You will need to restart MicroStation before this change goes into effect.

MicroStation V8i does not allow FileFixer to change level IDs in TriForma elements (to address FileFixer error 415).

8.7i — 2 May 2008

Replace the Design File Header Element

The design file header element (type 9) is normally the first element in a MicroStation design file. It stores a variety of vital information.

Design file header corruption can manifest itself in a number of ways:

  • Unable to open the design file in MicroStation.
  • FIT command behaves oddly.
  • After loading the file, MicroStation aborts.
  • Text elements do not display correctly.
  • Other odd, inexplicable behavior.

FileFixer can replace a corrupt design file header with a healthy one.

The error number is 21.

NoteFileFixer will never attempt to replace a design file header unless you explicitly activate the option Settings | Repair Settings | Replace the design file header element. Accordingly, error number 21 will never be reported by FileFixer’s Search for Problems command. There is no Search setting which enables or disables error number 21.

Element has Different Dimension than the Model’s Dimension

When an element’s dimension is different than the model’s dimension you cannot always modify that element without first repairing the element’s dimension. For example, a 3D line in a 2D model.

New Search and Repair capabilities were implemented in FileFixer 8.7i to detect and repair design files which contain elements with a different dimension than the model’s dimension.

The new error number 437 is reported when the element’s dimension is different than the model’s dimension.

Unused Reference File Level Table

Unused reference file level tables just take up space in a V8 design file. They aren’t “re-cycled” — each time you attach a reference file a new reference file level table is added to the design file.

New Search and Repair capabilities were implemented in FileFixer for V8 version 8.7i to detect and repair unused reference file level tables.

The new error number 267 is reported when an unused reference file level table is found.

Duplicate master file level numbers

The level number displayed by MicroStation (in the Level Manager dialog) is user-editable and, therefore, not guaranteed to be unique. Internally (not viewable by users) MicroStation assigns a unique level “code” to each defined level.

By default, FileFixer keeps the first duplicate level table entry associated with a master file level number. You can optionally keep the last level table entry for a duplicate master file level number.

Note: FileFixer always retains the “Default” level definition regardless of the repair option selected here. This is a MicroStation requirement.

The search setting that detects this error is Settings | Change Settings | Search... | Levels | Multiple level numbers.

The error number is 429.

Other Enhancements in this Release

FileFixer reports now include the design file’s original file format (when it wasn’t V8). This notifies you that the current V8 file was converted from another file format (such as V7 or DWG).

We made a number of refinements to FileFixer’s HTML report to improve readability.

We also added dozens of additional links from FileFixer’s reports to the FileFixer guide.

Your repaired file can now retain its original name. Of course, if you choose this option, FileFixer will require you to select a different output directory (FileFixer will not allow your original files to be overwritten).

8.7h — 30 November 2007

Newly Supported V8-specific Fatal Error

One new category of V8 design file corruption turned out to be so severe it was assigned the new fatal V8-specific error number 898 in this FileFixer release. Here’s the scoop about error 898:

MicroStation V8 design files are “compound documents” containing subfolders and subfiles. V8 design files contain the same internal structure used by Microsoft to store Word documents and Excel spreadsheets.

Like all compound documents, MicroStation V8 design files contain an internal “directory” which stores the location of all subfolders and subfiles. If that directory becomes damaged, the relationship between the internal subfolders and subfiles is lost. Without a healthy internal directory, MicroStation will not be able to access the data in a V8 design file — even when the data itself is intact.

FileFixer’s newly supported error 898 represents a subtle but treacherous new form of V8 file corruption: two directory entries point to the same data. We coined a new term for this category of corruption: “cross-linked” data [technically, cross-linked streams (subfiles)].

Until cross-linked data is repaired, MicroStation will display the following dialog:

When FileFixer version 8.7h detects error 898 it sorts through the wreckage and repairs the internal directory so all data can again be accessed by MicroStation. If this FileFixer repair technology reminds you of Peter Norton’s Unerase (the popular file recovery utility), you’re exactly right.

Other Enhancements in this Release

Torture tests confirm this version of FileFixer’s “Search for Problems” command can Search for Problems in more than 20,000 design files in a single batch run.

Note: There should never be a need to repair thousands of files at a time. Instead, use FileFixer’s Search for Problems mode and the following settings to generate a list of the true troublemakers. Once Search for Problems mode has identified the design files with serious errors, use FileFixer’s Automatic Design File Repair command to repair just the files in the list — the true troublemakers. This is the efficient way to ensure the integrity of a huge quantity of project design files.

Until now “Design file header is on the wrong level” was error [311] for both FileFixer for V7 and V8. This error is fatal for MicroStation V8, so the error severity was changed to number [911] in this release of FileFixer for V8.

Zero-length lines (where both endpoints have identical coordinates) are often used to represent a point in MicroStation design files. When such points are added as the sole component of a cell, the cell’s name becomes a convenient label for the point. Cells consisting of a single, zero-length line are very common. FileFixer has always reported an error such zero-length lines. This release of FileFixer no longer reports error [182] for cells which only contain a zero-length line (point).

Previous versions of FileFixer recognized when cells definitions existed in the file but no cell instances existed. However, FileFixer’s analysis did not include cell instances used as line terminators. This version of FileFixer now recognizes when cell definitions are used as cell terminators and no longer reports this as an error.

This version of FileFixer has been enhanced to reconstruct a design file when the first non-model stream is corrupted.

8.7g — 31 August 2007

FileFixer 8.7g has been enhanced to detect and repair additional categories of V8 file corruption discovered in V8 design files submitted by MicroStation users.

Four entirely new Search and Repair features had to be invented — these new capabilities are now available in FileFixer 8.7g.

Multiple Level Tables (Duplicate Level Definitions)

Level definitions (level names, level symbology, level settings, etc.) are stored in level tables in V8 design files. MicroStation displays the contents of a level table in its Level Manager dialog.

There should be one master level table for each V8 design file. Surprisingly, analysis of submitted customer files revealed it is not uncommon to find more than one master level table in a V8 file.

Which level table should MicroStation use to display drawing geometry? When you change a level setting in MicroStation’s Level Manager, which level table receives the saved changes? Which level table will be active the next time you open the file?

The answers are dependent upon the extent of level table corruption and the version of MicroStation you are using. Prior to V8.5.2.35, MicroStation uses the first master level table found in the design file. Starting with V8.5.2.35, MicroStation uses the master file level table with the lowest element ID (usually the original).

Multiple level tables can cause multiple hassles for MicroStation users — have you encountered any of these symptoms?

  • Sometimes elements display with the correct level settings and other times the elements display with incorrect level settings.
  • Master file level settings appear to match the level definitions for a reference file attachment.
  • MicroStation’s Element Information tool displays elements with “blank” level names.
  • Message Center lists the error message “Detected multiple level tables in file…”.

If so, you are fortunate — FileFixer can now clean this up automatically for you.

New Search and Repair capabilities were implemented in FileFixer 8.7g to detect and repair design files which contain multiple master level tables.

The new error number 630 is reported when multiple master level tables are detected.

Locked Models

V8 models can be locked. When a V8 model is locked, elements cannot be added, modified or deleted — the model is read-only.

Each model in a multi-model file can be locked or unlocked individually.

Models can be locked by MDL applications or by an undocumented key-in command.

Models might be locked intentionally.

The misleading message illustrated below appears in MicroStation V8.5’s status field when you attempt to modify an element in a locked model. This is the symptom of a locked V8.5 model:

However, the active design file is not necessarily read-only — it’s the model that is read-only!

MicroStation V8.9 is even more confusing. Attempts to add or change geometry in a locked model have no effect (fail) without an error message or explanation.

Locked models can be so perplexing, FileFixer’s Search and Repair reports now always indicate when a model is locked.

New Search and Repair capabilities were implemented in FileFixer 8.7g to detect and unlock locked models.

The new error number 250 is reported when a locked model is detected.

Hidden Levels

MicroStation V8 levels can be hidden, which means the level does not appear in any MicroStation level-related tool.

For example, a hidden level is not displayed in Level Manager:

A hidden level is disabled (gray) in MicroStation’s Element Information dialog:

Geometry on a hidden level may not display in any view.

Levels can be hidden intentionally by MDL applications, but when this is unintentional (corruption) a hidden level cannot be accessed with MicroStation and the level’s geometry might disappear. MicroStation does not offer an “un-hide level” tool.

Fortunately, new Search and Repair capabilities were implemented in FileFixer 8.7g to detect and display hidden levels.

The new error number 444 is reported when a hidden level is detected.

Hidden Reference File Attachments

MicroStation V8 reference file attachments can be hidden, which means the attachment does not appear in MicroStation’s “References” dialog and the attachment’s geometry is not visible in any view.

Attachments can be hidden intentionally by MDL applications, but when this is unintentional (corruption), the attachment disappears and cannot be retrieved. MicroStation does not offer an “un-hide attachment” tool.

New Search and Repair settings were implemented in FileFixer 8.7g to detect and display hidden reference file attachments.

The new error number 443 is reported when a hidden reference is detected.

Additional Enhancements

Error 311 (“Design file header is not on level 8”) was upgraded in severity to error 911 because this error is fatal for MicroStation V8.

FileFixer’s reports now include the full path to the active FileFixer settings file. This documents the settings file which was used to produce the report.

FileFixer Search and Repair processing was optimized to start instantly, regardless of the number of files to be processed.

8.7f — 31 May 2007

All error numbers in FileFixer’s HTML report files are now hyperlinks which jump directly to the appropriate paragraph in the FileFixer User’s Guide. [Fixer 8.7e jumped to the correct section or Chapter.]

FileFixer’s HTML report now includes convenient hyperlinks which bring all of the following within one mouse click:

  • The complete FileFixer User’s Guide
  • Axiom’s Support web page
  • Axiom’s file corruption hot-line (how to submit corrupt files directly to Axiom Support)
  • Current versions of all Axiom products
  • The latest version of FileFixer
  • Axiom’s web site

FileFixer’s QuickStart was updated to introduce newcomers to recent enhancements.

FileFixer’s reports are now printer-friendly (automatic when you select File | Print in your browser).

FileFixer is delivered with templateV8.dgn which is used to salvage V8 files with severe structured storage damage (see description of error 899). Users can now replace templateV8.dgn with a project seed file so that resurrected files inherit project settings perfectly.

FileFixer’s new HTML report content was translated to German. To activate German user interface, launch FileFixer with:

mdl load fixer.ma /l german.rsc

Note: full paths are excluded from the above command for brevity. The full command is included in aximenu.cfg.

FileFixer was updated to recognize and handle new element types introduced in MicroStation XM.

FileFixer will not attempt to write its seal-of-approval to a V8 file with error 311 (design file header element is not on level 8) or error 902 (first element of file is not an active type 9 design file header element). XM does not support seal-of-approval updates when these error conditions are present.

Implemented further refinements to FileFixer’s detection and repair of severe structured storage corruption (to handle variants of corruption recently found in submitted customer files).

FileFixer’s batch mode reports now include only those font-related errors which can be identified without access to a font resource. For example, error 144, “Text element uses non-existent font.” is not reported in batch mode.

FileFixer’s HTML reports are compliant with current web standards (HTML 4.01 and XHTML 1.0).

MS_LIBRARY_PATH is now initialized to include Axiom base directory and FileFixer installation directory. This is a new requirement for version 8.7f.

8.7e — 9 March 2007

FileFixer for V8 version 8.7e includes integrated help and numerous customer-driven enhancements.

Help at the touch of a button

Each HTML report’s Report Summary now includes hyperlinks to relevant sections of the FileFixer Users’ Guide. This allows FileFixer users to instantly access help about reported corruptions and what to do to handle.

FileFixer offers a lot of options to precisely control how to search for and repair corruptions in your project files. When the going gets tough and you need to repair a troublesome file fast, you need immediate access to help. New with this version of FileFixer, each settings dialog now includes a <Help> button which immediately jumps to the relevant section of the FileFixer User’s Guide — instant access to the help you need.

Customer-driven enhancements

Since its inception, FileFixer has evolved in response to customer requests and from analysis of repeating file corruption trends. This continues with 8.7e — this version includes a number of customer-driven refinements, such as:

New Search and Repair settings were implemented to detect and delete a shared cell instance when nested within a shared cell definition with the same name. This corruption can prevent MicroStation from opening a design file. The new error number is 733.

New to V8, certain elements can “safely” and legally reside outside the design plane or cube without impacting FIT or other MicroStation commands. FileFixer now recognizes these exceptions — truly troublesome range errors are still identified and reported.

FileFixer Search and Repair processing now starts much faster when <Start> button is pressed.

FileFixer’s bottom progress bar now reflects the number of files being processed rather than a count of internal sub-files.

FileFixer now has a new “Do not check for invisible elements” option (ON by default) on the MicroStation Application settings window for TriForma (Bentley’s architecture add-on to MicroStation). Invisible elements are often found to be unwanted in “plain” MicroStation files submitted by customers, so their existence is reported by default. But invisible elements are common in TriForma files (necessitating this new TriForma-specific option).

German Search and Repair categories are now sorted in the same sequence as the English category lists (direct correlation with English documentation).

Text Style corruption

The default text style is saved in every design file’s TCB and is used when no other text style is defined and active. When the default text style settings become corrupted, merely attempting to place text (with default text style) may cause MicroStation to abort.

The new error number reported is 745.

When FileFixer detects and reports this form of corruption, MicroStation users can enter legal values by selecting Element | Text Styles from MicroStation’s main menu, then the “Advanced” tab.

The following screen image illustrates multiple instances of corrupted values for the default text style (none) — each highlighted region contains one or more corrupted values:

Advanced Technical Data: A default text style is saved in every V8 design file’s TCB (terminal control block). Custom text styles, if present, are stored separately in a text style table in the non-model portion of the file.

8.7d — 24 November 2006

Once again FileFixer for V8 has been enhanced to detect and repair new forms of V8 file corruption frequently appearing in files submitted to us by MicroStation users. These new corruption categories are described here for the first time.

V8 elements are compressed.

Unlike V7 elements, V8 elements are compressed (much like .zip archives) to reduce file size.

V8 design file organization is new.

MicroStation V8’s compressed elements are stored in subfiles within subfolders.

Structured Storage directory corruption

Each V8 file contains a directory of the structured storage subfolders and subfiles within it. Analysis of MicroStation V8 user files has revealed that the data within a structured storage file can be healthy, but inaccessible because the directory itself is corrupted. This version of FileFixer for V8 has been enhanced to detect and repair damaged directory entries.

New Search and Repair breakthroughs

When the structured storage framework of a file is damaged, there is no way to access the elements within.

Similarly, when the compressed portions of a V8 file are damaged, there is no way to access the elements within.

V8’s structured storage file organization and element compression normally work fine, but when one or the other or both become corrupted, there is no way to access the elements nestled within. Analysis of customer files reveals these are the most common categories of file corruption unique to V8.

This version of FileFixer for V8 includes completely new analysis and repair features to handle these V8-specific categories of corruption.

In fact, FileFixer for V8 is the only application available anywhere that can automatically repair these new categories of V8 corruption.

Plus timing tests confirm this version of FileFixer for V8 repairs files up to 2X faster than the previous release.

FileFixer for V8 version 8.7d was tested with MicroStation V8 8.5.2.35 and XM 8.9.2.77.

8.7c — 28 August 2006

FileFixer for V8 versions up to and including 8.7b provide solutions to the most commonly occurring, disastrous new forms of V8 file corruption.

Version 8.7c gets personal — no previous release of FileFixer for V8 addressed more client requests.

Some of the customer requests addressed in 8.7c are pretty geeky. Enhancements suitable for mass consumption follow.

  • By popular demand, FileFixer-Lite for V8 is now available for analysis of V8 files.

Now CAD managers, designers, drafters — any MicroStation V8 user — can find out, with the click of a button, if MicroStation V8 files have fallen prey to file corruption. FileFixer-Lite reports a summary of all forms of file corruption found. A full FileFixer for V8 license is required to repair corrupted V8 design files.

FileFixer-Lite for V8 report excerpt:

Report

Summary

  1. -- Suspicious – This element may not violate any “official” MicroStation rules, but something about it doesn't look quite right.
  2. -- Warning -- This element violates a rule of MicroStation file construction, it may eventually cause problems.
  3. -- Serious Errors -- It is likely the element will manifest problems of some kind. It is important to fix such errors to avoid problems.
  4. -- Fatal error -- It is unlikely that any MicroStation related processor will process this file in its entirety without a severe error.
  • FileFixer for V8 now displays its report in HTML format by default. The ASCII report option remains available.
  • More sample files are now delivered with FileFixer for V8 to illustrate the various forms of V8 corruption.
  • 8.7c offers the option to move component elements to their parent’s level.
  • A linear element with an end point off the design plane now retains its original angle when repaired.
  • FileFixer for V8 can now repair all common graphical element types when they overlap or reside entirely beyond the design plane edge.
  • 8.7c now reports both the error number and error message for seals-of-approval created by the V7 version of FileFixer.
  • Clarified a number of error messages in FileFixer’s report to answer common questions about file corruption.
  • Updated the Error Messages chapter in the user’s guide to include the exact menu location of each Repair setting and each setting’s default value. FileFixer for V8 has a lot of options — it’s easier than ever to find the exact option needed to salvage your design file.
  • The size of each design file before and after repair is now included in each report.
  • Added support for the new configuration variable “FIXER_DIRFORBKPFILES”. Use this to define the location where FileFixer creates backup files. This configuration variable overrides the General | Directory for backup files setting.
  • Improved range repair algorithm for cones and curves. Now handles some unusual cases found in customer files.

FileFixer for V8 version 8.7c was tested with MicroStation V8 8.5.2.35 and XM 8.9.2.52.

8.7b — 8 June 2006

Added the option to “Move all elements on undefined levels to the default level (level number 0)” when repairing elements on undefined levels.

Note: Previous versions of FileFixer for V8 offered the level repair option “Do not repair.” However, when such corrupted elements are modified, XM reassigns them to the default level (whether you want this or not). FileFixer for V8 now automatically generates new level names for such corrupted elements by default. The benefits of this approach are described below under the release notes for version 8.6b.

A level table must exist before repaired levels can be restored in a file. FileFixer for V8 now has the ability to create a missing level table (to which repaired levels can be added).

Certified for MicroStation V8 XM edition version 08.09.02.52.

8.7a — 31 March 2006

When the internal framework of a V8 file is corrupted, the design geometry in the file can be completely inaccessible. Internal structure damage is the most frequently occurring new form of V8 file corruption.

The symptom? The V8 file cannot be opened and a helpful error message displays:

FileFixer has been enhanced to handle this new category of V8 file corruption.

Completely new file recovery techniques had to be developed. The new approach is analogous to the famous Norton Undelete, which salvages “deleted” files from a hard drive — even when the file is stored in fragmented pieces.

When FileFixer detects severely damaged internal file structure, it reads through the entire file looking for healthy pieces of the original file. The healthy pieces are recombined into a healthy V8 design file.

But internal structure damage can wipe out large chunks of a design file without warning — no obvious error dialog. One piece of bad data can prevent the remainder of your model from displaying.

In the following illustration, subfolder #5 is bad and elements stored in the remaining subfolders 6-20 (containing more than 75% of the drawing’s geometry) are not displayed:

And, even more insidious, a missing subfolder can also prevent remaining geometry from displaying. In the following illustration, subfolder #5 is missing. Elements in the remaining subfolders 6-20 will not display:

In a V8 file, a model header is analogous to a cell header in a V7 cell library. The model header stores the model’s name, description, etc.

The previous version of FileFixer for V8 could rebuild a missing model header, but it could not rebuild a damaged model header. FileFixer 8.7a can now reconstruct a damaged model header.

FileFixer is now able to calculate and report the number of lost elements in a damaged portion of a V8 file. Previously, there was no way to know how much of the drawing was at risk! The true extent of V8 file corruption is now disclosed for the first time.

This version of FileFixer was certified for MicroStation V8 versions 8.1.2.15 and 8.5.2.35.

8.6b — 6 December 2005

When a V8 file’s level table is damaged or missing, graphical elements become “stranded” on levels that do not exist.

Previous versions of FileFixer for V8 moved all such “stranded” elements to a new user-defined healthy level (or any level that still survives in the file’s level table). This approach recovered all such corrupted elements, but the corrupted elements were moved to the same level.

This version of FileFixer offers a significantly improved remedy for damaged or missing level tables. Even when a level table is corrupt or entirely missing, level information remains in each element — FileFixer uses this element information to repair the level table.

When a damaged or missing level table is detected, FileFixer examines all “stranded” elements and moves each stranded element to a new level, but now retains the original level relationships for all elements. Elements that previously occupied a particular level are reunited with all other elements which also occupied that level. New level names are auto-generated and can be used as is or can be easily edited in MicroStation’s Level Manager dialog to restore their original labels.

In the V7 version of FileFixer, level corruption is identified by error number 115. The impact of damaged or missing level tables in V8 is severe, so error number 115 has been retired in FileFixer for V8 and replaced by error number 415 to properly reflect the severity of this corruption in V8. Since level tables do not exist in MicroStation V7, error 115 remains unchanged in FileFixer for V7.

In addition to the level table enhancements described above, this version of FileFixer can now successfully traverse completely unreadable non-model data found in severely damaged files submitted by Axiom clients.

8.6a — 18 August 2005

The tool used to create a list of design files and cell libraries to process has undergone a dramatic improvement — it has been completely rewritten. Its user interface is easier to use than ever and it now supports drag and drop of files from Windows Explorer. It is also faster at searching for files to process.

Added the new Search option Z range is not zero in a 2D element. The error reported is “169” and the details of this error are described below:

169 — Non-zero Z range found in a 2D element.

The existing Repair option Repair range of displayable elements has been expanded to correct this problem. These Search and Repair options are on by default.

FileFixer now reports when it finds more than one copy of its required DLL files in certain places on the system and instructs the user to delete duplicates.

FileFixer now checks the version number of required DLLs to ensure the correct version (or later) is installed.

8.5b — 24 February 2005

Enhanced FileFixer’s “Set modification date and time of the fixed file to that of original file” option to be used when working on the original file and creating a backup file. In this case, the backup file will always retain the date and time of the original file, and the modified original file’s date and time will be optionally maintained or set to the current date and time.

Enhanced FileFixer to be able to continue checking and repairing V8 design file corruptions after a damaged data area has been found. Previously, FileFixer would quit processing the V8 design file after a damaged data area was found. FileFixer can now delete these damaged data areas.

FileFixer can now detect and correct when the design file header element was not on level number 8 (error 311). When this is the case MicroStation is unable to open the design file.

MicroStation V8 has a feature that allows elements to be set “invisible”. These invisible elements are not displayed in MicroStation’s GUI or plotted. If you also use Cimmetry’s AutoVue application then these elements are displayed, which makes it confusing when you compare the design file’s display between MicroStation and AutoVue. We have added a new FileFixer error number (240). FileFixer can correct these invisible elements by either making them visible or deleting them. These settings are turned OFF by default.

The “Report File” dialog box was modified to include all the report file settings.

Previously, they were on a couple of different dialog boxes.

The “Options” menu was renamed “Settings”.

The organization of the “File” and “Settings” menus was greatly improved.

The “General” and “Report File” Settings categories were carefully reviewed and simplified to make the most common FileFixer options more easily accessible.

8.5a — 10 September 2004

Enhanced FileFixer’s range repair handling of error 619 to move an element which has at least one coordinate beyond the edge of the design plane back onto the design plane. The element coordinate is moved within approximately 5% of the edge of the design plane.

This allows the user to either move the element to its correct location or delete it. After repairing error 619, users can now snap to the element, move it or delete it.

FileFixer’s processing is so CPU intensive the operating system is not always able to keep the screen refreshed. This is particularly true with Windows XP. FileFixer now gives the operating system a slice of time, once per design file being processed, to refresh the screen and perform other system tasks.

Various internal optimizations have greatly increased FileFixer processing speed. In our test cases, repair processing time was reduced by 5X or more.

Shared cell nesting errors are reported as error 721 -- “An element of this type cannot be a component of a complex header of the specified type”. FileFixer’s report now includes the parent and nested cell’s names (in addition to the element file positions and IDs) for each 721 error reported. It is often easiest to identify and work with cells by name.

8.4b — 7 May 2004

FileFixer now creates temporary files in the directory defined by the Windows environment variable TEMP. See the section “Alternate temporary files directory” for details.

Nested shared cell definitions are now squeezed out of shared cell definitions (error 303).

8.4a — 10 April 2004

Added new error number 899 to detect and report when the internal structure of a V8 file is so severely damaged the file cannot be opened as a structured storage file — this condition prevents access to any data in the file.

Enhanced FileFixer’s handling when an element contains a level that is not present in the level table (error 115). Analysis of many client files with damaged level tables allowed us to implement a more solid, comprehensive repair algorithm.

When processing large numbers of files, we encountered cases where the total for one or more FileFixer errors detected exceeded 65,535 (the maximum value representable by the existing 16-bit counters). To accommodate these unprecedented error totals, FileFixer counters were increased to 32-bits. Now more than 4 billion errors can be tallied for each error number.

Internal optimizations were done to increase FileFixer’s processing speed. These optimizations were implemented to compensate for the additional processing time required by the accumulation of recent FileFixer enhancements.

FileFixer now handles V8 text elements up to V8’s limit of 1028 characters.

FileFixer displays a history of recently selected files under its “File” menu. File names which exceed 80 characters are now abbreviated in the list.

You can display FileFixer’s ASCII report using any editor (Notepad.exe by default). Your selected editor is now a savable setting. This allows you to use WordPad.exe or any other editor of your choice to display FileFixer’s ASCII reports.

Changed error number 162 to 62 (“This is the first element indicating this file contains TriForma linkage.). Informational message 62 is not an error and is now excluded from the Report Summary.

8.3a — 30 January 2004

Each MicroStation V8 file consists of multiple internal directories and sub-files. This data organization scheme, also used by Microsoft Word and Excel, is called structured storage. When saved to disk, MicroStation V8 design file elements are compressed and nested in the sub-files.

Structured storage in a V8 design file (simplified for clarity).

The structured storage system is normally reliable and robust, but as with any computer application and file type, data can become corrupted.

If one of the structured storage folders or sub-files is damaged, the data therein might become inaccessible, even when other portions of the compound file are intact.

Analysis of MicroStation V8 files submitted to Axiom revealed that structured storage errors are one of the most serious V8-specific problems occurring in production. This is a new phenomenon with V8 files. If you’re working with V8, you might have encountered structured storage errors without realizing it.

Typical symptoms of structured storage errors are:

Missing elements.

“MicroStation Problem Notification” dialog boxes.

Models which cannot be selected from MicroStation’s model’s dialog.

In response to customer demand, FileFixer for V8 was enhanced to detect and handle the most serious structured storage problems.

Search and Repair enhancements

Error Search Setting Repair Setting
801 Structured Storage | Missing or Structured Storage | Rebuild
damaged model header data. damaged model header data.
Structured Storage | Missing or None.
damaged control data.
Structured Storage | Missing or None
damaged graphical data.
802 Structured Storage | Missing or Structured Storage | Rebuild
damaged model header data. damaged model header data.
Structured Storage | Missing or None.
damaged control data.
Structured Storage | Missing or None.
damaged graphical data.

For much more information about these new features, see:

Error Messages: Fatal V8 specific Errors.

Repair Settings: Structured Storage.

Search Settings: Structured Storage.

This version of FileFixer was certified for MicroStation V8 version 8.1.1.9.

FileFixer versions 8.2a and 8.3a were certified simultaneously.

8.2a — 20 December 2003

Our objective was to provide additional Search and Repair solutions for problems found in client V8 files. FileFixer enhancements include:

Search and Repair enhancements

New features are indicated in bold.

Error Search Setting Repair Setting
115 Bad element level (level is not Move elements on unacceptable
present in the level table). levels to level: _____.
119 Element is too close to edge of Delete elements with the
design plane. following error numbers.
191 Text element has more EDFs Correct EDF/text length
than characters mismatches.
302 Type 1 (cell library header) Remove illegal element types.
elements are not allowed in
design files.
333 Element class is illegal. Set illegal class to ___.
343 Missing reference file. Delete missing reference file
attachment.
364 Siamese attribute linkage Fix element size warnings.
(linkage overlaying the next
element).
380 Illegal element type detected. Remove illegal element types.
514 Attribute offset error. None.
560 Text string overflows the Correct the number of
element’s length. characters field in text
element.

Additional enhancements

You can now load FileFixer’s foreign language interface from the Axiom menu. A German interface is available now. Please let us know what other language(s) you need:

Now reports missing raster reference files (error 343) and includes setting to delete missing raster references.

We increased FileFixer’s capacity for maximum file name length from 128 to 256 characters.

FileFixer now reads the level table during prescan to determine which levels are valid for the elements in the file. This supports the Search setting “Bad element level” and Repair setting “Move elements on unacceptable levels to level: ____” (error 115).

FileFixer was enhanced to properly interpret linkages which have “number of words” or “number of bytes” (new to V8) linkage size fields.

Customers presented us with files containing element coordinates that were off the design plane. Further analysis revealed that MicroStation only uses a tiny portion of the potential range of floating point numbers (to preserve precision), but some V8 elements contained floating point values outside the range recognized and supported by MicroStation.

Accordingly, FileFixer’s handling for error 119 was modified to recognize element coordinate values which are beyond the edge of the design plane (or cube). [This phenomena is new to V8 — V7 element coordinates, represented by integers, could not exceed the design plane edge.]

FileFixer recognizes new element types introduced in MicroStation V8.5.

This version of FileFixer was certified for MicroStation V8 version 8.1.1.9.

FileFixer versions 8.2a and 8.3a were certified simultaneously.

8.1a — 25 July 2003

FileFixer 8.1a enhancements include:

More TriForma-specific defaults

“MicroStation Application Settings”, “TriForma” settings dialog box.

Do not check for a cell nested within itself when the cell name is blank

FileFixer normally reports error 383 when it detects a cell nested within itself (a self-referencing cell). TriForma files often contain a variation of this: unnamed cells nested within unnamed cells — a legitimate construct in TriForma files.

When a TriForma file is detected, FileFixer will not report or repair error 383 unless you explicitly disable this setting. This ensures FileFixer’s report emphasizes the most severe errors.

Do not check for incorrect H-bit values

FileFixer normally reports error 304 when an element’s H-bit is set to “1” when it should not be. This error is common, but not serious.

When a TriForma file is detected, FileFixer will not report or repair error 304 unless you explicitly disable this setting. This ensures FileFixer’s report emphasizes the most severe errors.

Do not check for missing line strings in complex chains

FileFixer normally reports error 555 when it detects gaps between segments in a complex chain of elements. This error is common, but usually not serious.

The end points of elements comprising a complex chain do not always intersect, even when the component elements appear connected on the screen. Gaps may be revealed if the complex chain is dropped to its components.

When a TriForma file is detected, FileFixer will not report or repair error 555 unless you explicitly disable this setting. This ensures FileFixer’s report emphasizes the most severe errors.

Do not check to see if the unused bits are set in the “properties” word.

FileFixer normally reports error 132 when it detects non-zero values in reserved bits (bits 4:6 and 8) in an element’s properties. This error is not serious now, but because design file elements often have a very long life, it is possible that non-zero reserved bits will cause problems with future versions of MicroStation.

When a TriForma file is detected, FileFixer will not report error 132 unless you explicitly disable this setting. This ensures FileFixer’s report emphasizes the most severe errors.

Additional enhancements in FileFixer for V8 version 8.1a

When error 721 is detected, FileFixer now automatically handles by dropping the entire complex element into its component elements.

Elements manifesting error 365 can now be deleted automatically.

Improved robustness of FileFixer’s analysis of structured storage errors.

FileFixer 8.1a was certified for MicroStation V8 versions 8.0.4.1 (third commercial release) and 8.1.0.7 (fourth commercial release).

8.0e — 23 May 2003

FileFixer 8.0e includes a number of V8-specific fine-tuning adjustments based on lessons learned since the first commercial release of FileFixer for V8.

FileFixer 8.0e enhancements include:

Elements manifesting error 185 (zero size in all dimensions) can now be deleted automatically from the non-model section of a file. This feature can be used, for example, to automatically delete empty shared cell definitions.

The first commercial version of FileFixer for V8 (8.0c) was certified for the third commercial release of MicroStation V8 (8.0.4.1, July 2002). Clients have reported FileFixer works successfully with earlier versions of MicroStation V8, but for best results we recommend using FileFixer for V8 with MicroStation 8.0.4.1 or later.

FileFixer now issues a reminder when you use it with earlier versions of MicroStation V8.

FileFixer now properly processes nested reference files.

"Skip checking the file in Search mode when there is a seal-of-approval" now works consistently.

Implemented the search setting for error 119 (Element is too close to edge of design plane).

204 errors (missing graphical data in a model) are now suppressed for files with a “.cel” extension (because cell libraries commonly have an empty Default model).

304 (illegal H-bit), 555 (Line string is missing from complex chain) and 717 (class map is incorrect) errors are now consistently repaired.

FileFixer will now drop status on complex elements to handle 721 errors (illegal components in complex element).

FileFixer now correctly handles the component Count from Mesh Header elements.

FileFixer is now able to robustly report missing or damaged model/cell information [~Mh stream].

Miscellaneous user interface refinements.

MicroStation 8.0.4.1 incorrectly reports a class for non-graphical Smart Geometry elements (which do not include a display header). This is fixed in MicroStation 8.1.0.7. FileFixer reports the Smart Geometry class information provided by MicroStation.

Note: When necessary, FileFixer bypasses MicroStation and uses Axiom’s file access techniques to analyze and repair V8 files. However, no attempt has been made to re-write MicroStation — FileFixer makes extensive use of MDL. Accordingly, as MicroStation V8 evolves, FileFixer benefits from Bentley MDL enhancements.

As a result, you may observe slight differences in FileFixer’s analysis depending on your version of MicroStation V8. Our testing confirms we have handled the major differences between 8.0.4.1 (third commercial release) and 8.1.0.7 (fourth commercial release), but some minor differences might remain.

FileFixer was not certified for versions of MicroStation V8 before the third commercial release (8.0.4.1) — we strongly recommend upgrading to a later version of MicroStation V8.

FileFixer 8.0e was certified for MicroStation V8 versions 8.0.4.1 (third commercial release) and 8.1.0.7 (fourth commercial release).

8.0d — 17 December 2002

FileFixer 8.0d includes enhancements corresponding to FileFixer 7.8i (for V7). These enhancements include:

Optimized analysis of tag elements, reducing the amount of memory consumed.

Improved detection and handling of full or write-protected output disks.

FileFixer 8.0d also includes enhancements corresponding to FileFixer 7.8h (for V7).

These enhancements include:

New Settings File Format: Plain Text

For many years FileFixer settings were saved in standard MicroStation resource files. Unfortunately, we were not able to make those resource files upwardly compatible with future versions of FileFixer for V8. As a result, customized FileFixer settings (changes from Factory Defaults) would have to be manually updated and saved each time a new version of FileFixer was installed. This was not ideal — we wanted to do something about it.

We are pleased to announce that FileFixer’s settings are now stored in a plain text file named fixer.ini. FileFixer for V8 settings files will hereafter be upwardly compatible.The first commercial release of FileFixer for V8 (8.0c) saved its settings in MicroStation resource files. If you use customized settings (changes from the Factory Defaults) with FileFixer 8.0c, you will need to manually update your settings one more time when you install 8.0d. Your 8.0d settings will thereafter be upwardly compatible with future versions of FileFixer for V8.

Note: FileFixer for V8 settings are quite different from FileFixer for V7 settings.

Settings files are not interchangeable between the V7 and V8 versions of FileFixer.

Report Enhancements

Report file settings are now grouped in a single dialog selectable from Settings | Change settings | Report File....

FileFixer now includes the name of the .fix or backup file in the output report. This documents the exact location and name of your files before and after repair.

FileFixer now includes the MicroStation version at the end of each report to automatically document the version of MicroStation you are using with FileFixer. This is handy when clients send us files for analysis.

When processing a single file, FileFixer’s report file name now defaults to the directory and base name of the selected design file. When processing multiple files, the report file name now defaults to the active file’s directory and the name “fixer.rep”.

We enhanced and clarified reports. This is particularly noticeable in FileFixer’s HTML reports.

Severity of Errors to be Reported

For clarity and consistency between the V7 and V8 versions of FileFixer, “Severity of

Errors to be Reported” is now selectable by description and number, not just description:

TriForma Enhancements

FileFixer now accepts type 27 b-splines as components of type 18 surfaces and type 19 solids. These combinations of elements are normal constructs in TriForma files.

A new TriForma setting was added to accommodate unnamed cells nested within other unnamed cells. This setting is selectable from Settings | Change Settings | MicroStation Applications | TriForma. This setting is ON by default. FileFixer automatically applies this setting to TriForma files when TriForma element linkages are detected.

Miscellaneous Enhancements

Miscellaneous GUI refinements.

FileFixer now correctly calculates the element size for a file fence element (type 5, level 0, class 0).

FileFixer now correctly checks for error 383 when cells have a Words-in-description greater than 900.

FileFixer now only reports error 905 for b-spline poles when they are components of a complex header. Error 719 will now be reported for b-spline poles which are not components of a complex header. These error number re-assignments initiate the most optimum repair for each scenario.

Improved FileFixer’s handling of raster reference file attachments (type 90) when the Words-in-description (WID) was off by 1. FileFixer now repairs the WID value.

FileFixer 8.0d was certified for MicroStation V8 version 8.0.4.1 (third commercial release).

8.0c — 7 November 2002

The first commercial release of FileFixer for MicroStation V8.

FileFixer 8.0c includes the most popular V7 features adapted for V8, plus some V8-specific features.

FileFixer 8.0c was certified for MicroStation V8 version 8.0.4.1 (third commercial release).