RESOLUTION
A supported hotfix is now available from Microsoft, but it is only intended to correct the problem that this article describes. Apply it only to systems that are experiencing this specific problem.
To resolve this problem, contact Microsoft Product Support Services to obtain the hotfix. For a complete list of Microsoft Product Support Services telephone numbers and information about support costs, visit the following Microsoft Web site:
Note In special cases, charges that are ordinarily incurred for support calls may be canceled if a Microsoft Support Professional determines that a specific update will resolve your problem. The usual support costs will apply to additional support questions and issues that do not qualify for the specific update in question.
The English version of this fix should have the following file attributes or later:
Date Time Version Size File name Platform
-------------------------------------------------------------
1/3/01 5:28PM 5.0.2920.0 2055440 q282590.exe x86
After the hotfix is installed, the following files will have the listed attributes or later:
Date Time Version Size File name Platform
-------------------------------------------------------------
12/18/00 3:17PM 6.1.0.1218 5107712 vislib32.dll x86
Workaround
To temporarily work around this problem, open the source for the *._VML.HTM file and locate the path= statement for the affected hyperlink(s). Negate the generated y-coordinates for all but the first hyperlink in the group. For example, if the following statement is generated
path="m217,449l279,449,279,499,217,499,217,449xe"
update the y-coordinate values of the path to be negative as follows:
path="m217,-449l279,-449,279,-499,217,-499,217,-449xe"
Per the VML specification, you must negate the 449 y-coordinate of the 449l279 block, because this number sequence is actually two coordinates (y-coordinate, the lowercase letter "l", and the x-coordinate). This is VML's way of tagging the beginning coordinate in a path.
Notice a pattern in the path example with the xy-coordinate (217, -449). This coordinate marks both the beginning and end of the path statement, and when the coordinates are drawn, they operate like the
MoveTo and
LineTo Graphics Device Interface (GDI) commands. As a result, this statement draws a rectangle.