Visual InterDev

Migrating from Visual InterDev 1.0 to Visual InterDev 6.0

See Also      Tasks

You can easily migrate your Microsoft® Visual InterDev™ 1.0 projects to Microsoft Visual InterDev 6.0.

The Web applications you created with Visual InterDev 1.0 will continue to run in Visual InterDev 6.0 and . In fact, if members of your Web development team are still using Visual InterDev 1.0, they can view the application files even after you have upgraded to the new version of Visual InterDev.

This cross-version compatibility is a key feature of Microsoft® Visual Studio™ components. However, Visual InterDev 6.0 offers a greatly enhanced HTML editor, a new toolbox of design-time controls, and integrated debugging that others will also want to use. For a full list of new and enhanced features, see What’s New in Visual InterDev.

For information about important issues when migrating existing Web applications from Visual InterDev 1.0, see the following sections.

Server Upgrades in Visual InterDev 6.0

Visual InterDev 6.0 includes enhanced server software capability. All the software needed to upgrade your server is contained on the Visual InterDev 6.0 installation compact disc. Because the upgraded server software is designed to work with Visual InterDev 1.0, you will still be able to open Visual InterDev 1.0 projects after installing the new server extensions.

Note   The server extensions upgrade is required to run Visual InterDev 6.0.

Enhanced Server Extensions

To take advantage of many of the new features in Visual InterDev 6.0, you need to run the Visual InterDev 6.0 Server Setup to upgrade your server extensions. Many new and improved features in version 6.0 are dependent upon the latest server extension software. For example, the Visual InterDev 6.0 Scripts in Web Applications, Data Environment, Design-Time Controls, and Data Commands all use the upgraded server capability to simplify Web application development. These features are only supported after you run the Visual InterDev 6.0 Server Setup program.

Note   Only the server requires the new server extensions. You do not need to load the server software on the client machine.

Microsoft® Internet Information Server 4.0

In addition to the Visual InterDev 6.0 Server Setup, to run the Microsoft Visual InterDev debugger you need to install Microsoft® Internet Information Server 4.0. Internet Information Server 4.0 is included with your Visual InterDev software and with Microsoft® Windows NT® 5.0.

You can use the Visual InterDev debugger to test scripts written in Microsoft® Visual Basic® Scripting Edition (VBScript) and Microsoft® JScript™, as well as applications written in Sun Microsystems Java and run using the Microsoft Java Virtual Machine (VM). For more information about the debugger, see Debugging Your Pages.

If you have installed an alternative scripting language that supports the Microsoft debugging protocol, such as REXX or Perl, you can also debug scripts in that language.

Data Connection Differences Between Visual InterDev 6.0 and Visual InterDev 1.0

A data connection provides your Visual InterDev project with access to a particular database. Once you are connected to a database, you can display or edit data on your Web page in Visual InterDev.

In Visual InterDev, to connect to a database you first create a data source name (DSN) for the database or choose an existing one. Then, you use the DSN to create a data connection and add it to your project. However, there has been a fundamental change in the way the data connections are stored in the Visual InterDev project with this new release.

In Visual InterDev 1.0, established data connections are identified by session variables within your project You can see the session variables by opening your project’s Global.asa file.

In Visual InterDev 6.0, data connections are identified in application variables within your project. You can see the application variables in your project’s Global.asa file. You can also use the new Data Environment to edit the application variables for each data connection. For more information about using the new data environment, see The Data Environment.

When you first open a Visual InterDev 1.0 project in Visual InterDev 6.0, the data connections are automatically converted from session to application variables . The session variables that were defined in Visual InterDev 1.0 remain in the Global.asa file, but they are only used with the DTC components that shipped in Visual InterDev 1.0.

Defining data connections as application variables is better, faster, and requires fewer resources than the version 1.0 method. When you use the version 6.0 application variables, each data connection can be shared between all the users accessing your application. This is an improvement over the version 1.0 session variables where each user must recreate the data connection variables.

There are, however, issues you should be aware of when working with Visual InterDev projects in different versions.

Opening Visual InterDev 1.0 Projects with Data Connections in Visual InterDev 6.0

When you open a Visual InterDev 1.0 project in Visual InterDev 6.0, all the project’s data connections are automatically converted from session variables to application variables.

The session variables created in Visual InterDev 1.0 remain visible in your Global.asa file but are not used by Visual InterDev 6.0. Additionally, new application variables defining your data connections are added to your project’s Global.asa file. Therefore, data connection information actually appears twice in the Global.asa file so that both versions will continue to work properly.

In Visual InterDev 1.0, the data connection is defined by session variables in the Global.asa file, as in the script below.

Sub Session_OnStart
'==Visual InterDev Generated – DataConnection startspan==
'—Project Data Connection
Session ("NorthWind_ConectionString")="DBQ=E:\NorthWind.mdb;
DefaultDir=E:\;Driver={Microsoft Access Driver (*.mdb)};
DriverId=25;FIL=MSAccess;ImplicitCommitSync=Yes;MaxBufferSize=512;
MaxScanRows=8;PageTimeout=5;SafeTransactions=0;Threads=3;UID=admin;UserCommitSync=Yes;"
Session("NorthWind_ConnectionTimeout") = 15
Session("NorthWind_CommandTimeout") = 30
Session("NorthWind_RuntimeUserName") = "admin"
Session("NorthWind_RuntimePassword") = ""
==Visual InterDev Generated – DataConnection endspan==
End Sub

When you open your Visual InterDev 1.0 project in Visual InterDev 6.0, the following message informs you that data connections are being converted into application variables in the Global.asa file.

When you view your project’s Global.asa file in Visual InterDev 6.0, your data connection is now defined by application variables, as well as by the original session variables, as it is in the example script below.

Sub Application_OnStart
'==Visual InterDev Generated – DataConnection startspan==
'—Project Data Connection
Application ("NorthWind_ConectionString")="DBQ=E:\NorthWind.mdb;
DefaultDir=E:\;Driver={Microsoft Access Driver (*.mdb)};
DriverId=25;FIL=MSAccess;ImplicitCommitSync=Yes;MaxBufferSize=512;
MaxScanRows=8;PageTimeout=5;SafeTransactions=0;Threads=3;UID=admin;UserCommitSync=Yes;"
Application ("NorthWind_ConnectionTimeout") = 15
Application ("NorthWind_CommandTimeout") = 30
Application ("NorthWind_RuntimeUserName") = "admin"
Application ("NorthWind_RuntimePassword") = ""
==Visual InterDev Generated – DataConnection endspan==
End Sub
Sub Session_OnStart
'==Visual InterDev Generated – DataConnection startspan==
'—Project Data Connection
Session ("NorthWind_ConectionString")="DBQ=E:\NorthWind.mdb;
DefaultDir=E:\;Driver={Microsoft Access Driver (*.mdb)};
DriverId=25;FIL=MSAccess;ImplicitCommitSync=Yes;MaxBufferSize=512;
MaxScanRows=8;PageTimeout=5;SafeTransactions=0;Threads=3;UID=admin;UserCommitSync=Yes;"
Session("NorthWind_ConnectionTimeout") = 15
Session("NorthWind_CommandTimeout") = 30
Session("NorthWind_RuntimeUserName") = "admin"
Session("NorthWind_RuntimePassword") = ""
==Visual InterDev Generated – DataConnection endspan==
End Sub

If you open the Web application again in Visual InterDev 1.0, version 1.0 ignores the new application variables and uses the original session variables whenever a data connection is made.

Visual InterDev 6.0 ignores the existing session variables and uses the new application variables whenever a data connection is made.

Opening Visual InterDev 6.0 Projects with Data Connections in Visual InterDev 1.0

When you create data connections in Visual InterDev 6.0 projects, the data connections are defined in application variables within the project’s Global.asa file. These application variables are the only place the data connections need to be defined if you are only going to open the project in Visual InterDev 6.0.

Visual InterDev 1.0 will not automatically interpret the data connections defined in a Visual InterDev 6.0 project.

If you create projects in Visual InterDev 6.0 that you want to open in Visual InterDev 1.0, you must manually redefine your project’s data connections so they are Visual InterDev 1.0 compliant. To be Visual InterDev 1.0 compliant, your data connections must be defined in session variables as well as in application variables.

Redefining your project’s data connections so they are Visual InterDev 1.0 compliant is easy and can be done in two ways:

Adding Data Connections in Visual InterDev 1.0

The simplest way to redefine your Visual InterDev 6.0 data connections so they are Visual InterDev 1.0 compliant is to open the project in Visual InterDev 1.0, and add the data connections as if they were new.

This procedure will automatically generate the session-defined data connections that are required for Visual InterDev 1.0. It will not modify the application-defined data connections that are required for Visual InterDev 6.0.

To add a data connection to your Web project in Visual InterDev 1.0

  1. Open your Visual InterDev 6.0 project in Visual InterDev 1.0.

  2. Select the project in FileView.

  3. On the Project menu, click Add to Project, and then click Data Connection.

  4. In the Select Data Source dialog box, choose the existing DSN that you connected to in Visual InterDev 6.0.

  5. Log on to the data server if required.

Your data connection is now available for use with Visual InterDev 1.0.

To verify your data connection properties in Visual InterDev 1.0

  1. Close the Global.asa file if it is open in the editor.

  2. Expand the Global.asa icon in FileView.

  3. Right-click the name of the data connection, and click Properties.

  4. Verify that the data connection properties are the same as the properties you set for the data connection in Visual InterDev 6.0.

Your Visual InterDev 6.0 project now has data connections that will work properly in both Visual InterDev 1.0 and Visual InterDev 6.0.

Copying Application-Defined Data Connections to Session-Defined Data Connections

If you want to make your Visual InterDev 6.0 project work correctly in Visual InterDev 1.0 without first opening the project in Visual InterDev 1.0, you can manually copy the application-defined data connections to session-defined data connections within the Visual InterDev 6.0 Global.asa file editor.

To copy the application-defined data connections to session-defined data-connections

  1. Open your project’s Global.asa file in the Visual InterDev 6.0 editor.

  2. Find the Application_OnStart script command that defines the data connection.

    The code will resemble the example below.

    Sub Application_OnStart
    '==Visual InterDev Generated – DataConnection startspan==
    '—Project Data Connection
    Application ("NorthWind_ConectionString")="DBQ=E:\NorthWind.mdb;
    DefaultDir=E:\;Driver={Microsoft Access Driver (*.mdb)};
    DriverId=25;FIL=MSAccess;ImplicitCommitSync=Yes;MaxBufferSize=512;
    MaxScanRows=8;PageTimeout=5;SafeTransactions=0;Threads=3;UID=admin;UserCommitSync=Yes;"
    Application ("NorthWind_ConnectionTimeout") = 15
    Application ("NorthWind_CommandTimeout") = 30
    Application ("NorthWind_RuntimeUserName") = "admin"
    Application ("NorthWind_RuntimePassword") = ""
    ==Visual InterDev Generated – DataConnection endspan==
    End Sub
    
  3. Copy the entire application-defined data connection code and paste it back into your Global.asa file, so that the code defining the data connection appears twice.

  4. Manually change the highlighted lines in the second instance of the data connection definition to create a session-defined data connection in your Global.asa file, as shown in the example below.
    Sub Application_OnStart
    '==Visual InterDev Generated – DataConnection startspan==
    '—Project Data Connection
    Application("NorthWind_ConectionString")="DBQ=E:\NorthWind.mdb;
    DefaultDir=E:\;Driver={Microsoft Access Driver (*.mdb)};
    DriverId=25;FIL=MSAccess;ImplicitCommitSync=Yes;MaxBufferSize=512;
    MaxScanRows=8;PageTimeout=5;SafeTransactions=0;Threads=3;UID=admin;UserCommitSync=Yes;"
    Application("NorthWind_ConnectionTimeout") = 15
    Application("NorthWind_CommandTimeout") = 30
    Application("NorthWind_RuntimeUserName") = "admin"
    Application("NorthWind_RuntimePassword") = ""
    ==Visual InterDev Generated – DataConnection endspan==
    End Sub
    Sub Session_OnStart
    '==Visual InterDev Generated – DataConnection startspan==
    '—Project Data Connection
    Session ("NorthWind_ConectionString")="DBQ=E:\NorthWind.mdb;
    DefaultDir=E:\;Driver={Microsoft Access Driver (*.mdb)};
    DriverId=25;FIL=MSAccess;ImplicitCommitSync=Yes;MaxBufferSize=512;
    MaxScanRows=8;PageTimeout=5;SafeTransactions=0;Threads=3;UID=admin;
    UserCommitSync=Yes;"
    Session("NorthWind_ConnectionTimeout") = 15
    Session("NorthWind_CommandTimeout") = 30
    Session("NorthWind_RuntimeUserName") = "admin"
    Session("NorthWind_RuntimePassword") = ""
    ==Visual InterDev Generated – DataConnection endspan==
    End Sub
    

    You have now successfully modified your Visual InterDev 6.0 project so that the data connections are Visual InterDev 1.0 compliant.

Differences Between Visual InterDev 6.0 and Visual InterDev 1.0 Design-Time Controls

In Visual InterDev 6.0, several product enhancements combine to create a richer, faster, more robust environment for using design-time controls (DTCs). In Visual InterDev 6.0, you’ll find a new set of DTCs that include enhanced design-time user interfaces for run-time effects. In addition, the philosophy behind the DTCs is expanded to allow you to code against the programming model as opposed to just coding script.

Your Visual InterDev 1.0 Legacy DTCs will continue to function when your Visual InterDev 1.0 project is opened in Visual InterDev 6.0, but the approach to using DTCs has changed since the previous version of Visual InterDev. For more information about using the DTCs, see Scripts in Web Applications and Scripting with Design-Time Controls and Script Objects.

In general, the Visual InterDev 6.0 design-time controls offer you a richer, more visual editing interface for creating data-enriched pages. Data-bound controls make it simple to incorporate data in your ASP or HTML pages to interact with your database.

The controls included with this version of Visual InterDev allow you to target a wide range of browsers, or to narrow your focus to the rich dynamic HTML available in Microsoft® Internet Explorer 4.0. For more information about the data-bound controls, see Design-Time Controls.

The Data Environment

In addition to the increased variety and functionality of DTCs in Visual InterDev 6.0, creating and modifying data-related objects is now collected in one place: the graphical data environment. The data environment will affect the way you use and think about your DTCs.

In the data environment, you can drag and drop objects onto ASP pages to automatically create data-bound design-time controls. The data environment provides a standard interface for creating reusable data-related objects and for placing them on Web pages.

Before creating new projects in Visual InterDev 6.0, and in order to take full advantage of the Visual InterDev 6.0 DTCs, you should become acquainted with the data environment and explore how it will affect your project plans. For details, see The Data Environment.

Installing a Script Library for Design Time Controls

The script library is a repository for code generated by Visual InterDev 6.0 design-time controls. Although this library was not part of the Visual InterDev 1.0 release, it is required by the Visual InterDev 6.0 Programming Model.

When using Design-Time Controls in Visual InterDev 6.0 projects, it is important that the script library be present in order for your Visual InterDev 6.0 design-time controls to function correctly.

When you first open a Visual InterDev 1.0 Web application in Visual InterDev 6.0, the following message box will prompt you to install the script library.

Click Yes to install the Script Library.

If you choose not to install the Script Library, your project’s design-time controls will not be able to find the code they are intended to generate and errors can occur.

If you choose No when asked to install the Script Library, then you later change your mind

  1. Create a folder in your Web project folder called _ScriptLibrary.

  2. Copy the contents of the Microsoft Visual Studio\VIntDev98\ScriptLibrary folder to the _ScriptLibrary folder.

    Note   It is important that the new folder has the name _ScriptLibrary.

Once the new folder is created and the contents of the script library are copied into it, your Visual InterDev 1.0 projects will be able to use design-time controls when opened in Visual InterDev 6.0.