Previous | Index | Next 

[PRB] ActiveX controls aren’t migrated correctly

In some (rare) cases, VB Migration Partner fails to correctly convert the OcxState property associated with ActiveX controls. This happens, for example, when the control exposes one or more properties that return an object (as opposed to a scalar value, such as a number or a string). Typically this problem cases an error at design-time, because Visual Studio isn’t able to display a form that contains such an ActiveX control.

If you can successfully migrate the form using Microsoft Upgrade Wizard, you can use the following workaround: simply add a ReuseResxFiles pragma that points to the folder that contains the VB.NET project created by Upgrade Wizard

        '## project:ReuseResxFiles  c:\MigratedApps\TestApp

If you now start a new migration, VB Migration Partner will use the *.resx files that were generated by Upgrade Wizard. This usually suffices to solve the problem.

Notice that you can use this pragma at the project level – in which case all the ActiveX controls on all forms will be affected – or at the form level. You can also omit the argument in a pragma at the file level to disable a project-level pragma.

If the *.resx file can’t be found, this pragma has no effect and no warning is issued.

 

Previous | Index | Next