Visual Basic 6.0 FAQ
Visual Basic Developers Resource Centre
September 16, 1998
   

Which edition of Microsoft Visual Basic 6.0 is right for me?

Microsoft Visual Basic Learning Edition is designed for the hobbyist or novice programmer. It has the ability to create distributable applications, but lacks many of the tools that a professional developer would need, such as full ODBC support, scrollable cursors, Pool Manager, and Component Manager.

Visual Basic Professional Edition is designed for the individual professional or corporate developer. It has all the tools a typical professional developer would need to build and distribute robust, professional looking applications.

Visual Basic Enterprise Edition is designed for teams of developers creating distributed, high performance client server applications (The Remote Data Objects in the Enterprise Edition provide some of the fastest remote data access available in a tool today).


What is the Application Performance Explorer in Microsoft Visual Basic 6.0?

The Application Performance Explorer (APE), found only in the Enterprise Edition of Visual Basic 6.0, is a utility that enables a developer to run automated "what-if" tests to tune and profile the performance of a multi-tier application in different network topologies. By going through component architecture performance tuning a developer can more easily step through the design, deployment planning, and performance tuning on client-server applications and processes.


What is Microsoft Visual Component Manager, and how can I get it?

Microsoft Visual Component Manager is a tool for publishing, organizing, and querying re-usable Visual Basic components. The Visual Component Manager can be used to publish components you author to a wider audience. You can also organize all your components in one place, and easily look up components supplied with Visual Basic, such as samples, templates and wizards. The Visual Component Manager is implemented on the Visual Basic Repository.

The Visual Component Manager is included with the Enterprise or Professional Edition of Microsoft Visual Basic 6.0, the Enterprise or Professional edition of Microsoft Visual Studio 6.0, or the Universal Subscription of the Microsoft Developer Network.


What is Microsoft Visual Modeler, and how can I get it?

Visual Modeler is a graphical object-modeling tool that is tightly integrated with Microsoft Visual Basic 6.0. Visual Modeler allows you to fulfill the promise of object-oriented programming by quickly and easily creating applications that are maintainable, have a long lifetime, and are comprised of components that can be reused in other applications.

Visual Modeler is included with Microsoft Visual Basic 6.0 Enterprise Edition, Microsoft Visual Studio 6.0 Enterprise Edition, or the Universal Subscription of the Microsoft Developers Network.


What is the Project Explorer feature in Microsoft Visual Basic 6.0?

The Project Explorer in Visual Basic 6.0 allows you to view, in an outline mode, components for all loaded projects associated with an open project, such as ActiveX controls, forms, and classes. The benefit of the Project Explorer is that it makes it easier to work with multiple projects at one time.


Using Microsoft Visual Basic 6.0, what is the maximum number of controls allowed on a form?

Visual Basic 6.0 will allow a total of 255 controls on a form.


I want to use Microsoft Visual Basic 6.0 to create programs that have very large arrays in them, what is the maximum size of an array that Visual Basic 6.0 can handle?

The size limit of an array in Microsoft Visual Basic 6.0 would actually be limited to the size of the index for that array. The index cannot be greater than the maximum of a 32-bit value (2147483648). In reality though, the application would run out of memory first. Windows NT only supports 4 GB of memory in a single process.


Does Microsoft Visual Basic 6.0 support classes?

Yes, you can create your own classes inside of Visual Basic 6.0. In doing so, you can create standard foundation class libraries for various types of applications to provide specific functionality to that type of program, then compile those classes in your application. Thus giving you the ability to avoid reprogramming a standard set of features in particular applications.


Does Microsoft Visual Basic 6.0 support 16-bit development?

No, Microsoft has chosen to dedicate its efforts to the more scalable and high-performance 32-bit platform. By focusing the development team on one 32-bit product, we were able to add many new features to Visual Basic 6.0. Microsoft Visual Basic 4.0, which targets 16- and 32-bit Windows development, will remain on the market as long as there is a demand for it.


Does Microsoft Visual Basic 6.0 support p-code as well as native compiled code?

Yes, Microsoft Visual Basic 6.0 is a RAD (Rapid Application Development) tool that offers the flexibility of compiling applications to p-code or native code. Compiling to p-code optimizes for the smallest size. This small size will often make p-code the choice for creating Internet applications in low bandwidth situations. Native code compilation is highly optimized for speed (up to 20 times faster) but the executables produced are larger. Visual Basic 6.0 is the only RAD tool to support both rapid application development through p-code, as well as native code compiling for performance.


Can I do Winsock development with Microsoft Visual Basic?

Yes, Visual Basic 6.0 contains a Winsock control and an Internet Transfer Control. However, if you are using Visual Basic 4.0, you will need additional third party tools and APIs. The tools and APIs are available at the following locations:

NetManage's NEWT-SDK 5.0 with IntraNet ActiveX
Virtual Socket Library
JSB Corporation
Phone: 408-438-8300

Catalyst Software's Internet VBX/OCX Controls
Catalyst Software
(800) 776-3818 or (619) 228-9653


Do I need the Win32 Software Development Kit (SDK) in order to make Windows 95/98 API calls from Visual Basic?

No, the Win32 SDK is not required. Visual Basic includes the Win32 API Viewer, which provides some minimal documentation for Win32 function parameters. However, it is usually advantageous to have some form of documentation on the API. The Microsoft Developer Network Library CD has extensive documentation on the API.

Another recommendation would be the book "Visual Basic Programmers Guide to the Win 32 API" by Daniel Appleman, which is published by Ziff-Davis.


How do I get VBSQL.OCX?

VBSQL.OCX allows you to write to Microsoft SQL Server's DBLibrary commands from Microsoft Visual Basic and other applications that can take advantage of 32bit OLE controls. It is available via the following:

The Microsoft SQL Programmers Toolkit (PTK), included with Microsoft SQL Workstation 6.5. The Programmers Toolkit includes VBSQL.OCX as well as hard-copy documentation.

The Microsoft Developers Network (MSDN) Professional Subscription or higher includes the BackOffice 2.0 SDK which contains the VBSQL.OCX.


I have applications that were developed using Microsoft Visual Basic 4.0, what areas should be watched when converting them to Microsoft Visual Basic 6.0?

In converting Visual Basic 4.0 applications to Visual Basic 6.0 there are several items that may need to be addressed. With the 16-bit applications you may have to change Windows API calls and versions of Microsoft or third party controls. With 32-bit applications you may have to change just the Microsoft or third party controls.


What version of Microsoft Visual Basic supports Remote Automation development?

Microsoft Visual Basic 6.0 Enterprise Edition is required for Remote Automation development, which allows all standard out-of-process OLE servers to be executed remotely over the network. The Enterprise Edition includes several tools for managing and deploying OLE Servers including the Setup Wizard, Component Manager, Connection Manager, Connection Utility and the Pool Manager.


Does the Native Code Compiler in Microsoft Visual Basic 6.0 Professional and Enterprise Edition support Pentium Pro optimization?

Yes, the Native Code Compiler in Visual Basic 6.0 Professional and Enterprise Edition has a variety of native code options for optimization. These include Favour Pentium Pro, Assume No Aliasing, Create Symbolic Debug Info, Optimize for Fast Code, Optimize for Small Code, Remove Array Bounds Checks, Remove Floating Point Error Checks, Remove Integer Overflow Checks, and Remove Safe Pentium FDIV Checks. For more about native code options, please see the Visual Basic 6.0 documentation.


Can Microsoft Visual Basic 6.0 create 16-bit executables?

No, Visual Basic 6.0 will create 32-bit executables only. If you need to develop 16-bit Windows applications with Microsoft Visual Basic you will need to purchase Visual Basic 4.0.


Microsoft Visual Basic 6.0 has a feature called Templates. What is a template?

Templates allow you to create a common form once and reuse it in any application, enforcing a consistent look and feel.


How can I create dialog boxes in Microsoft Visual Basic 6.0 like those used in Windows 95/98?

The CommonDialog control included in Microsoft Visual Basic 6.0 works like an interface between an application and Comdlg32.dll, the dynamic-link library that generates the dialog boxes for Windows 95/98. Using the CommonDialog control, the following dialog boxes can be displayed: Color, Font, Help, Open, Printer, and Save.


What version of Crystal Reports ships with Microsoft Visual Basic 6.0?

Microsoft Visual Basic 6.0 Professional and Enterprise Editions both ship with version 4.6 of Seagate Software Crystal Reports. For more information on Crystal Reports, go to thier website.


Can I use Windowless controls in version 6.0?

Yes, you can now create Windowless, or lightweight controls in VB6. Although Windowless controls are included in the distribution disks, these controls are not installed automatically installed during Visual Basic setup. For more information about windowless controls, see the following articles in the Microsoft Knowledge Base for more information:

Q184645:Create Lightweight Controls in Visual Basic 6.0


Will the controls in my program created in version 5.0 be upgraded automatically when I open the project in version 6.0?

Some controls will update to the newer version automatically, but a few do not. This is because some controls are not fully backward compatible. If they updated automatically, it could break some of your code. Please see the following article in the Microsoft Knowledge Base for more information: Upgrade Project to Use the New MSCCOMCTL.OCX in VB6.


What ActiveX Controls ship with the difference editions of Visual Basic 6.0?

Please see the following article in the Microsoft Knowledge Base for a complete listing of all controls shipped with each edition of VB6: Controls shipped in Visual Basic 6.0


I'm getting the following error message when I run a setup program created by the Visual Basic 6.0 Application Wizard on a client system: Setup cannot continue because some system files are out of date on your system. Click OK if you would like setup to update these files now. You will need to restart Windows before you can run setup again. Click Cancel to exit setup without updating system files. What should I do?

The error message appears when the version of Oleaut32.dll on the client machine is older than version 2.20.0000. Certain files critical to the installation process of Visual Basic 5.0 applications require Oleaut32.dll version 2.20.0000 or later.

When you get this error message, click OK to install a newer version of Oleaut32.dll that is compatible with the installation program. The system must be restarted when the file is updated. The application setup process cannot continue until the machine is restarted. After the machine is rebooted, re-run the application Setup.exe program.

If you choose Cancel, the Setup.exe program will terminate. The application setup will not complete until version 2.20.0000 or later of Oleaut32.dll is installed on the system. For more information regarding system files, see the following article in the Microsoft Knowledge Base - Q174135: Setup Cannot Continue...System Files are Out of Date


What is the Data Report Designer in Visual Basic 6.0?

The Microsoft Visual Basic 6.0 Data Report Designer is a hierarchical report designer built into Visual Basic 6.0. The Report Designer allows developers to drag and drop data objects from the new Data Environment Designer, into the banded report designer to create text-based, single-level or hierarchical reports intended primarily for printing or saving to .txt or .html file formats. Additionally, the Data Report Designer gives Visual Basic 6.0 developers programmatic control over their reports for performing actions such as data aggregation and validation, all within the Visual Basic development environment.


Is Seagate Crystal Reports still available for Visual Basic 6.0? Where can I get it?

Visual Basic 6.0 (and Visual Studio 6.0) Professional and Enterprise editions ship with Seagate Crystal Reports version 4.6. The installation files are located in the COMMON\TOOLS directory.

For even tighter integration with Visual Basic and access to many of the advanced features available in Seagate Crystal Reports version 6, Visual Basic developers can download the new Report Designer Component free (for a limited time) from Seagate Crystal Reports

The Report Designer Component gives developers more programmatic control, access to ADO and application data as well as a set of wizards to quickly and easily create presentation quality reports. All of this functionality is available directly within the Visual Basic design environment. The RDC is a stand-alone component which is compatible with reports generated out of version 4.6 and does not require any prior version of Seagate Crystal Reports to be installed. Developers who do install and register version 4.6, or who register and download the current version of the RDC, can purchase an upgrade to the latest version of Seagate Crystal Reports at a substantial discount by visiting Seagate Software.


When would I use the Data Report Designer in Visual Basic 6.0 vs. Seagate Crystal Reports?

The Visual Basic 6.0 Data Report Designer and Seagate Crystal Reports are complementary technologies, designed to meet different needs. The Data Report Designer in Visual Basic 6.0 is designed primarily for those developers who need the ability to do quick printing of text-based, single-level or hierarchical reports, and wish to reuse data objects they have created using the VB6 Data Environment Designer through drag and drop functionality.

Seagate Crystal Reports allows developers to easily build simple reports but also to scale up to more complex reports. Advanced formatting and grouping features as well as charting, multiple export formats and drill down allow developers to easily include rich reporting and analysis into their applications. By using the RDC, developers can do this from within the Visual Basic IDE. Seagate Crystal Reports also gives developers the flexibility to let end users create and modify their own reports without requiring changes to the application.


© 1998 Microsoft Corporation. All rights reserved.
Logo and information copyright © Microsoft Corporation 1999

 

 
 

PayPal Link
Make payments with PayPal - it's fast, free and secure!

 
 
 
 

Copyright ©1996-2008 VBnet and Randy Birch. All Rights Reserved.
Terms of Use  |  Your Privacy