<P> Earlier versions of Visual Basic (prior to version 5) compiled the code to P - Code only . The P - Code is interpreted by the language runtime . The benefits of P - Code include portability and smaller binary file sizes, but it usually slows down the execution, since having a runtime adds an additional layer of interpretation . Visual Basic applications require Microsoft Visual Basic runtime MSVBVMxx. DLL, where xx is the relevant version number, either 50 or 60 . MSVBVM60. dll comes as standard with Windows in all editions from Windows 98 to Windows 7 (some editions of Windows 7 do not include it). A Windows 95 machine would however require inclusion with the installer of whichever DLL was needed by the program . Visual Basic 5 and 6 can compile code to either native or P - Code but in either case the runtime is still required for built in functions and forms management . </P> <P> Criticisms levelled at Visual Basic editions prior to VB.NET include: </P> <Ul> <Li> Versioning problems associated with various runtime DLLs, known as "DLL hell" </Li> <Li> Poor support for object - oriented programming </Li> <Li> Can only create multi-threaded applications using ActiveX </Li> <Li> Variant types have a greater performance and storage "overhead" than strongly typed programming languages </Li> <Li> Dependency on complex and fragile Component Object Model (COM) Registry entries </Li> </Ul> <Li> Versioning problems associated with various runtime DLLs, known as "DLL hell" </Li>

Microsoft visual studio project is out of date