Version 3.06 Features

 

What's New in Version 3.06

Released 9/15/2013

Current registered users: This program will install unlocked and not overwrite your previous installation.
For trial users: There is a 15 day trial period, 2000 line limitation per project converted.

Click Here to Download

Version 3.06 contains many enhancements and a number of improvements in conversion accuracy, thanks to the detailed feedback and interaction with many customers. 

Enhancements

  • Dynamic variables are used to convert late binding in VB (VB2010 and above):

If you don’t want this behavior, it can be turned off in the Options, General section:

  • Line continuations in VB are honored in C#:

If you don’t want this behavior, it can be turned off in the Options, General section:

  • Prevention of line “garbling”: if automatic C# compiler error correction is unsuccessful, the original converted C# code will be output.  This prevents line “garbling”, which can occur after multiple C# compiler correction attempts.  This can be controlled in the Options, Compiler error correction section:

  • VB and C# compile screen now has a “Stop Compiling” button:

 

  • The multiple projects conversion screen now has columns for VB and C# compile status and conversion time:

Conversion logic fixes / enhancements:

  • Correctly convert structures which implement interfaces.

  • Fixed error converting Multi-Line Lambdas within BeginInvoke.

  • Correctly converts auto-implemented property backing fields, removing preceding from "_" from field name

  • Fixed error converting auto-implemented properties with default values which implement an interface member.

  • Fixed issue where references to named constants were converted with the constant value, rather than the name.

  • Improved ability to detect type of "With" expressions, to reduce late binding.

  • Improved CS0037, CS0426, CS0117, and CS0234 compiler error correction.

  • Unitialized variables now default to more readable values like 0 or "" for common types, instead of default(int), default(string), etc.

  • Successfully convert array initializers with commas, like New Object(,) {{1, 2}}.

  • Corrected error initializing complex data structures via "From" keyword.

  • Fixed error converting generic definitions which contain multi-dimensional array types specified, like "List(Of Boolean()())".

  • Fixed error converting Redim statements on multi-dimensional arrays.

  • ReDim variables which are routine arguments are recognized as being modified, so by reference modifiers are retained instead of converted to by value.

  • ReDim statements now handles an array of generic types.

  • Extension methods defined in external assemblies recognized and resolved correctly.

  • Fixed problem converting references to three dimensional arrays and higher.

  • Now successfully converts VB static variables which are initialized to non-static values.

  • Succesfully convert Paramaterized property sets with generics, like SessionWrapper(Of EType).Item(s_Name) = result.

  • Fixed error of default(Var) getting issued.

  • Corrected error of converting property get and set lines with attributes in vb2010 and above

  • if generic type initialized to null, specify default(T): Public Value As T = Nothing -> public T Value = default(T);.

  • Changed parameterized properties to convert to get_PropertyName and set_PropertyName instead of PropertyName and SetPropertyName, to be consistant with VB internals.

  • Fixed error converting enum members which are assigned ASCII values like Asc('0').

See information on prior releases

 
 

Copyright 2004-2014 VBConversions LLC