Hexadigm Systems

Release notes for TranSolution (Developer's version):

Version 4.1 (Released on January 10, 2022)

This version now supports Visual Studio 2022 (and all previous versions down to Visual Studio 2013 - support for Visual Studio 2012 and earlier has been dropped). Note that an upgrade license is now required to target Visual Studio 2022 if you originally purchased TranSolution for Visual Studio 2015 or earlier. See Upgrade Licenses for details. IMPORTANT: Please note that the format of the ".trn" file was slightly changed in this release but it only affects the "Create satellite assemblies" feature in the translator's version (TransView.exe). See the Version 4.1 translator's release notes for details.

Version 4.0 (skipped)

This version number was skipped to prevent confusion with .NET 4.0. Users using 3.8 or earlier will therefore upgrade to the latest version instead (4.1 or later).

Version 3.8 (Released on Sep 3, 2019)

This version contains a fix for a rare issue not affecting most users. If encountered then a "COMException" will be trapped and displayed during outgoing translation (with the message "This operation should only take place on the UI thread.").Simply install this version (3.8) or later to correct the problem.

Version 3.7 (Released on Apr 9, 2019)

This version now supports Visual Studio 2019. No other significant changes exist but please see Version 3.7 in the Translator's release notes for changes to the "Translate from the web feature".

Version 3.6 (Released on Apr 3, 2017)

This version now supports Visual Studio 2017. Support for Windows XP was dropped. A few minor internal issues were also addressed though these impact relatively few users.

Version 3.5 (skipped)

This version number was skipped to prevent confusion with .NET 3.5. Users using 3.4 or earlier will therefore upgrade to the latest version instead (3.6 or later).

Version 3.4 (Released on May 28, 2015)

This version now supports Visual Studio 2015 though only the Release Candidate version of VS2015 is currently available (at the time of version 3.4's release). Note that Microsoft eliminated their "add-in" technology in VS2015, so TranSolution now relies on their replacement technology for "add-ins" (known as "VSPackages"), but only in VS2015 and future releases. The program continues to rely on "add-in" technology in all earlier versions of Visual Studio (VS2013 and earlier). Starting with VS2015, the "Translate" menu item was also moved to another group on the Visual Studio "Tools" menu, so it's no longer at the bottom of the menu (in VS2015 and future releases only). V3.4 also contains various performance improvements that may or may not be noticed depending on the size of your solution. For large solutions in particular (especially those with many ".resx" files and/or strings), the time required to parse your solution before reaching the second outgoing dialog has been significantly improved.

Version 3.3 (Released on June 18, 2014)

The developer's version in this release contains no changes. The translator's version however now allows you to save your ".trn" file as a Microsoft Excel file. See the translator's release notes for further details.

Version 3.2 (Released on December 17, 2013)

This release now supports Visual Studio 2013. No other changes were implemented.

Version 3.1 (Released on September 17, 2013)

This release contains one minor cosmetic change and a single bug fix (not affecting most users):

  1. During the scanning stage of outgoing and incoming translation, the program now displays the percent complete instead of the actual file names (as it scans all the files in Solution Explorer). This is a minor cosmetic change only, but it better serves users with large solutions (where the scanning stage can take up to a minute or more).
  2. This version also contains a single fix affecting V3.0 users with solutions that contain several thousand files or more (applicable only to Visual Studio 2010 or later). Under V3.0 (earlier version aren't affected), the following error may have occurred during the scanning stage of outgoing or incoming translation (usually incoming):

         Generic.c1: "Error 65535 returned by function "GetOpenFileName()""

    This error occurred due to a breaking MSFT change in Visual Studio, starting in VS2010 (the problem is not present in earlier versions). It's now been corrected in V3.1 but most users remain unaffected (if you haven't encountered this error before than you were never impacted).

Version 3.0 (Released on July 7, 2013)

This release contains the following new features:

  1. Addition of the new "Bypass strings" option on the existing "Tools -> Options -> TranSolution -> Outgoing" menu. This feature allows you to plug in your own callback method, allowing you to bypass any string during outgoing translation, Your method is invoked for each outgoing string, and should simply return true to bypass the string or false to process it as usual. Note that when bypassing the string, you can do so using any criteria you require.
  2. An "Add languages" feature has also been added, allowing 3rd-parties to add new languages to the client developer's application after it's already been released (with little or no involvement on the part of the client developers). Note that this feature is available on request only and certain restrictions apply.
  3. Significantly improved performance during the "Preparing for ..." stage of outgoing and incoming translation. Processing time to complete this stage is now much faster.

See online help for details on items 1 and 2 above. Note that the translator's version also contains one or more new features. See the translator's release notes for details.

Version 2.6 (Released on March 25, 2013)

The developer's version in this release contains no changes. However, an important fix was introduced in the translator's version, including the one installed with the developer's version. This doesn't impact the TranSolution add-in however. Only the translator's application "TransView.exe" is affected. Please see the translator's release notes for details.

Version 2.5 (Released on February 22, 2013)

The developer's version in this release contains no significant changes. However, some minor internal changes were implemented to address a couple of external issues reported by a very small number of users:

  1. Support has been improved for 3rd-party WinForm controls that don't properly update a ".resx" file with the 4 special Microsoft properties required of all form-based controls (please contact us if you require details). This would typically trigger outgoing warning code 3 or possibly other outgoing warnings, requiring that these files be bypassed. Limited support has now been added to handle these files where possible.
  2. In some isolated cases, an intermittent error might be encountered by TranSolution when attempting to delete temporary files. This could potentially manifest itself in different ways, including errors while saving your ".trn" file (your file is correctly saved but an error message is displayed when TranSolution attempts to delete its temporary files). The source of this error has not been determined but appears to be caused by either a .NET bug, or possibly certain virus checkers. In either case, an external source appears to be holding a temporary file open that TranSolution is trying to delete. As a result, TranSolution will now ignore these errors which is effectively harmless (the only repercussion is that your temporary file folder might contain some undeleted files, but this folder can be cleaned up if ever required).

Version 2.4 (Released on September 19, 2012)

This release contains the addition of a new "TranSolution" section under "Tools -> Options" in Visual Studio. You can now set various TranSolution options under this section but with this release, only a minimum number of options are available (allowing you to suppress the message box for several common warning codes during outgoing and incoming translation). Additional options may be provided in a future release. Note that this release also contains a work-around for a recently discovered Visual Studio bug (since reported to MSFT). This bug affects C++ projects in Visual Studio 2010 and 2012 only, typically affecting WinForm applications (Visual Studio 2008 and 2005 remain unaffected). For these particular projects, the code-behind ".resx" file seen under each ".h" form file might appear twice in the TranSolution outgoing window, usually in the "Resource Files" virtual folder. These files should only appear once however, under the ".h" file itself, as seen in Solution Explorer (i.e., the same ".resx" file doesn't appear under the "Resource Files" folder in Solution Explorer and therefore shouldn't in the TranSolution outgoing window). This is a confirmed MSFT bug (the Visual Studio API erroneously reports the same file under the "Resource Files" folder), but a work-around corrects the problem in this release (pending any official correction by MSFT in a future Visual Studio service pack or version). Finally, please note that if .NET 4.5 is installed, you may experience another Microsoft bug in the Translator's version of the program. This problem is annoying but otherwise harmless. For details, please see the Translator's release notes (UPDATE: January 22, 2013 - This problem has now been corrected by MSFT - see the Translator's release notes for details).

Version 2.3 (Released on June 20, 2012)

This release now provides beta support for Visual Studio 2012 RC (Release Candidate). The program will now automatically install itself into this version of Visual Studio, in addition to all previously supported versions (2010, 2008 and 2005). Support for Visual Studio 2012 RC is considered "beta" however until MSFT officially releases this version (tentatively scheduled for later this year). Note that this release of TranSolution also contains two bug fixes affecting Visual Studio 2005 and 2010 users only. Visual 2008 users remain unaffected. For Visual Studio 2005 and 2010 users however, you would have been notified with warning code 6 during outgoing translation (primarily affecting Silverlight 5 projects in Visual Studio 2010, and all project types in Visual Studio 2005). The message indicates that an "unexpected error has occurred", and further identifies a potential problem with one of your ".resx" files, but the message is a false alarm (in the case of Visual Studio 2010, due to a previously unknown changes Microsoft made in this version). Note that if you have encountered this particular warning, both your ".trn" file and your solution remain unaffected, and it's likely you would have already contacted us for assistance (most users aren't impacted by the situation). This problem has now been corrected in this release, and all users are advised to upgrade at their earliest convenience (in particular, Visual Studio 2005 users and Visual Studio 2010 users using Silverlight 5).

Version 2.2 (Released on June 1, 2012)

This release contains a major change in the way the program handles read-only files that need to be updated during incoming translation. In previous versions, read-only files couldn't be selected in the "Files to translate" section on the "Incoming Translation" dialog. You needed to manually remove the read-only attribute in order to select them. This system has been completely replaced and you can now select read-only files on this dialog. After clicking the "Proceed" button to start incoming translation, TranSolution will now handle read-only files that need to be updated as it encounters them (if any). If a given file is read-only because it's under integrated source control in your solution and not checked out, then TranSolution will be able to check the file out for you, with full support for files that can't be checked out for any reason (usually because they're already exclusively checked out by another user, but you'll be notified accordingly). For complete details, please see "Read-only files with or without integrated source control" in online help. Note that this change is not considered urgent, but existing customers are advised to upgrade at their own convenience (in particular, if you use a source control package).

Version 2.1 (Released on March 8, 2012)

This release contains two minor changes affecting the developer's version only. The translator's version remains unaffected. Note that existing customers are advised to upgrade from earlier versions but these changes are not considered urgent (unless item 1 below applies to you).

  1. A work-around was introduced for a rare problem when an InstallShield project and/or other possible 3rd-party projects are used in a solution. In this case, due to a small problem with both TranSolution and the 3rd-party project itself, the 3rd-party project may not have loaded when your solution loaded. An error would have been displayed by Visual Studio instead (for that specific project only). Moreover, some 3rd-party projects are not always properly compliant with the expected protocol required by a Visual Studio package, and can throw unexpected exceptions such as "NotImplementedException". TranSolution itself would have previously displayed this exception as an unrecoverable error. A work-around for both these problems was introduced in this release and they should no longer occur.
  2. In previous versions, any change to a solution name would result in a warning message during outgoing translation, and users would be prevented from continuing (unless they restored the solution's name). This behavior has been changed to allow the user to continue after the warning message (at the user's discretion). Note however that if a solution name is changed after outgoing translation but before incoming translation, then the behavior remains unchanged. In this case, as in previous versions, a warning will alert the user during incoming translation and they won't be allowed to proceed until the solution name is restored (to match the original outgoing name in the ".trn" file). Once incoming translation is complete, the solution name can then be changed back again (to its permanent name).

Version 2.0 (Released on January 15, 2012)

This release contains major upgrades and various internal design changes primarily supporting two new features in the translator's version of TranSolution:

  1. Support for the new "Translate from the web" feature allowing for automatic translation using the Microsoft Translator.
  2. Support for the new "Review and Approve" system allowing translations to be highlighted for review and later approved.

Other miscellaneous changes and some performance improvements were also introduced in some areas unrelated to the above changes. Existing users will therefore notice some minor behavioral changes, updates to messages, and possibly other small changes, but nothing that significantly impacts the overall design. Note that parsing of ASP.NET projects during outgoing translation is also now significantly faster. In previous versions it was sluggish due to a serious bottleneck in the native Visual Studio API that handles these projects. A workaround was introduced to circumvent this issue.

Version 1.5 (Released on July 22, 2011)

This release contains a single bug fix for a harmless but annoying problem in the translator's version of the application (TransView). The developer's version remains unaffected. Existing customers are advised to upgrade from earlier versions but the fix is not considered urgent (though it is highly recommended). In previous versions, when editing any cell in "TransView" (in the "Grid View" window), it may not have been possible to position the cursor at an arbitrary location within the cell's text by using the mouse. Depending on how you navigated with the mouse, edit mode could also end before you were finished updating the text. This problem could be very annoying if frequent changes were occurring but was harmless otherwise. Due to the inconvenience this could cause a translator however, and the general reduction in productivity, a new release was warranted. Note that in addition to the other ways edit mode can be started (F2, etc.), it can also be started by first moving into the cell and then single-clicking it. The cell must be made the current cell first however. That is, if you click a cell while another cell is still the current cell, then the cell you click will become the current cell but edit mode won't start until you click it again. This is standard Microsoft behavior for the grid. Once the cell does become the current cell however, single-clicking it will highlight the cell's text and edit mode will start. Double-clicking it will also start edit mode but will immediately move the cursor to wherever you click the text. In either case, once edit mode starts, you can then single-click any character in the text to move the cursor to that location, or double-click it to highlight the word itself. Some or all of this behavior may not have worked in previous versions.

Version 1.4 (Released on June 1, 2011)

This release contains workarounds for the two (rare) issues described below. Existing customers are advised to upgrade from earlier versions but note that no new functionality has been added. Earlier versions are considered stable however so customers may upgrade at their own convenience (in particular, if you've encountered item 1 below):

  1. In previous versions, it was possible to encounter an error message when trying to open a ".trn" file, indicating that the file "... is not accessible for both reading and writing ...". This message occurred by design since the application previously required full security rights when opening ".trn" files for writing. This was not an issue for most users however, since a file that allows "write" access to the calling user usually allows full access. If full rights were not available however, the above message would occur. The required rights when opening ".trn" files was therefore reduced to eliminate this problem.
  2. In previous versions, it was possible to encounter error 1001 during installation, indicating an unexpected error. The message would advise the user to see the "TranSolution.Log" file, where the log would indicate that "The configuration data for this product is corrupt". An investigation determined that the "product" referred to in the log was not TranSolution, but another (unspecified) product on the user's machine (possibly an older product that was uninstalled at some earlier time, but which left a broken footprint behind). In this case, MSI's record of the product was corrupt prior to running the TranSolution installation program, but the problem would then cause the TranSolution installation program to fail (with the above error). A work-around for this problem has now been implemented.

Version 1.3 (Released on April 4, 2011)

The TranSolution add-in remains unaffected in this release. Three new features were added to "TransView" however:

  1. The "Cost calculator", which is available on the new "Tools" menu (or via the <Ctrl + I>  hotkey). This allows you to display the number of words in "Grid View" and the cost of translating those words. See this feature in online help for details.
  2. A "Words" count on the existing status bar. This displays the number of words in the "Default Language" cell on the currently active row, and, if the currently active cell is in a language column, the number of words for that cell as well. See the "Status Bar" in online help for details.
  3. The ability to save your ".trn" files to ".csv" format. See "Save As" in online help for details.

Note that these new features are enhancements only, and don't affect the actual translation process. Existing customers are therefore advised to upgrade at their own convenience, but no urgency is required.

Version 1.2 (Released on February 9, 2011)

This release now supports detection of changed strings during outgoing translation. Customers are strongly advised to upgrade ASAP. During outgoing translation, this new feature will notify the user if any string is encountered in your solution that was changed since the last time outgoing translation was run. This applies only to strings that already have at least one translation, since the warning isn't necessary otherwise. For any affected string, the user is then prompted to clear its existing translations so they can be re-translated. This is usually required since the existing translations will normally be obsolete at this point (since they usually still correspond to the previous default language string). Note that clearing the existing translations occurs in the outgoing file only. The translations in your solution remain unaltered until incoming translation. By clearing the translations in the outgoing file, the translations will therefore be blank when your translator launches "TransView" (and are therefore ready to be retranslated). Note that to support this feature, you must use the last incoming ".trn" file each time you launch outgoing translation. TranSolution will then detect changes by comparing the current strings in your solution with their last known values, as stored in the file itself. Note that detection only applies to those ".resx" files that exist in the file, so if you omit any in the "Files to translate" section during outgoing translation, the strings in those files won't participate in change detection. You should therefore always select all applicable ".resx" files each time you run outgoing translation, which is normally recommended anyway (since it allows your translator to provide more consistent translations since they can review all existing strings in your solution).

Version 1.1 (Released on November 18, 2010)

This release contains minor corrections and adjustments only. Existing customers are advised to upgrade from version 1.0 but note that no significant functionality has been added. Version 1.0 is considered stable however so customers may upgrade at their own convenience. Please note that starting with this release, ".resx" files that are read-only can no longer be selected from the "Files to translate" section during incoming translation. Read-only files typically occur for files that aren't checked out of a source control package such as Visual SourceSafe. Regardless of the reason however, attempting to check read-only files will now result in a warning message and users must remove the read-only attribute before being allowed to proceed. Full details are available in online help.

Version 1.0 (Released on September 8, 2010)

Initial release