Share via


Visual Basic Concepts

Distributing Localized ActiveX Controls

In most ways, distributing localized ActiveX controls is no different from distributing the original version. A problem may arise, however, if a new version of the control is released and distributed on the Web with another application.

ActiveX controls shipped with Visual Basic are automatically translated, or localized, into the correct language for the version of Visual Basic you own. For example, in the Japanese version of Visual Basic, controls are available in Japanese and are ready for distribution in that language. When you distribute these controls, the Package and Deployment Wizard must determine the necessary files to package with them.

Note   This topic applies only to the ActiveX controls distributed with Visual Basic. It does not apply to user controls created with Visual Basic unless they contain a Visual Basic ActiveX control.

Visual Basic's localized ActiveX controls have two parts:

  • The .ocx file for the control, which acts as the code block for the control. The same .ocx file is used for every language version of Visual Basic.

  • The satellite DLL file, which contains the localized strings for the control. This acts as the data block for the control. The satellite DLL varies between versions, according to the language version of Visual Basic you have purchased.

The Package and Deployment Wizard automatically includes the correct satellite DLL when you package an application that contains a localized Visual Basic ActiveX control. When the end user downloads the application, the correct satellite DLL is installed on their computer.

If a new version of the control is distributed on the Internet, the .ocx file and the satellite DLL will be out of sync unless the new, localized satellite DLL is also downloaded with the second application. When that happens, the end user may suddenly find that the strings for the new control are either wrong or are in English, because the .ocx defaults to using the English strings (which are always available in the .ocx file) when the compatible satellite DLL is not found. To alleviate this problem, you should instruct end users to download the latest version of the satellite DLL from www.microsoft.com/vstudio/.

For More Information   See "Designing International Software" in "International Issues" for an explanation of code blocks and data blocks.