Microsoft Access 97 Readme File

November 1996

(C) Copyright 1996 Microsoft Corporation

Contents

Installation

IMPORTANT: Disable Virus Protection Before Running Setup

Minimum System Requirements for Microsoft Office 97

Installing Microsoft Office 97 or Microsoft Access 97 on a Network

ODBC Fails When You Upgrade to Windows NT After Installation

Office 97 ValuPack Contains Additional Clip Art Folder

AddInPath Registry Entry

Uninstalling Help Doesn't Remove All Help Files

Installing the ODBC SQL Server Driver Help File

Installing Microsoft Access 95 After Installing Microsoft Access 97

Removing a Stand-alone Version of a Microsoft Office 97 Application After Installing Microsoft

Access

Registration Error Installing Older Data Drivers

Uninstalling Several Microsoft Products Will Unregister Remote Data Object (RDO)

Several Northwind Reports Require Arial Narrow Font

Working with Sample Databases When You Run Microsoft Access from a CD-ROM

Web Browser Help File Has Same Name as Internet Explorer Help File

Keeping an Existing Version of Microsoft Access When You Install Microsoft Office 97

Removing Microsoft Access 95 After Installing Microsoft Access 97 Unregisters the Calendar Control

General

Supported ActiveX Controls

Microsoft Personal Web Server Generates 'Failed to get the expression service' Error

Changing Browsers Prevents Opening Home Pages in Northwind

Using ODBC and SQL Server Versions Prior to Version 6.5

Creating Charts with the Chart Wizard

Using the Web Post Option in the Publish to the Web Wizard Causes Microsoft Access to Fail on Windows NT Version 4.0

Jet/ISAM/DAO

Microsoft Exchange/Outlook Driver

Exporting Tables with Numeric Characters in Names to ODBC Sources

Using DAO Version 3.5 in Older OLE Automation Host Applications

RDO Appears in Reference List

dbFailOnError No Longer Rolls Back a Transaction

Can't Pass a QueryDef Object Name to an OpenRecordset Method Using ODBCDirect

ODBCDirect: GetRows Error 40035

Replication

Converting Replicated Databases

Opening a Replica Database Created Through Visual Basic for Applications Code

Conversion and Compatibility

Converting Expressions in VBA That Use the Line Continuation Character

Changes to Error Code Numbers

Change in How You Create Custom Menu Bars

Literal Dates Between the Years 1900 and 1929 May Cause Different Query Results

Programming and Visual Basic for Applications

Run-time Error Codes for FollowHyperlink and Follow Methods

Expression Service Fails with Broken Reference

Using the RefLibPaths Registry Key to Locate a Moved Project or Type Library

DDE and DDESend Functions Do Not Work Under Windows NT Version 3.51

Duplicate Declarations Compile Without Displaying a Warning

Using MsgBox Statements or Functions Can Interfere with ActiveX Control Mouse Events

Documentation

Updates to Microsoft Access Help

Updates to 'Building Applications with Microsoft Access 97'

Updates to Northwind Sample Database

File List

Installation

IMPORTANT: Disable Virus Protection Before Running Setup

Some virus protection programs, such as VSAFE.COM and Norton Anti-Virus Autoprotect, can interfere with the Microsoft Office 97 or Microsoft Access 97 stand-alone version Setup program. If you use a virus protection program on your computer, please disable it before running Setup. (You can re-enable the virus protection program after Setup is complete.) Note -- If your virus-detection program starts automatically when you start Windows, you can disable it by restarting Windows while holding down the SHIFT key.

Minimum System Requirements for Microsoft Office 97

To use Microsoft Office 97, you need:

· Personal or multimedia computer with a 486 or higher processor.

· Microsoft Windows 95 operating system or Windows NT Workstation version 3.51 with Service Pack 5 or later (will not run on earlier versions).

· For use on Windows 95: 8 MB of memory required to run applications individually (12 MB required to run Microsoft Access); more memory may be required to run additional applications simultaneously.

· For use on Windows NT Workstation: 16 MB of memory required to run applications individually; more memory may be required to run additional applications simultaneously.

· (PROFESSIONAL EDITION) 73-191 MB of hard disk space required; approximately 121 MB required for typical installation, depending on configuration. Use the Office Upgrade Wizard during Setup to maximize free disk space.

· (STANDARD EDITION) 60-167 MB of hard disk space required; approximately 102 MB required for typical installation, depending on configuration. Use the Office Upgrade Wizard during Setup to maximize free disk space.

· CD-ROM drive (coupon enclosed for 3.5-inch high-density disks). CD-ROM contains additional items such as Microsoft Internet Explorer, extra clip art, fonts, .avi files, and sounds not available on 3.5-inch disks.

· VGA or higher-resolution video adapter (Super VGA, 256-color recommended).

· Microsoft Mouse, Microsoft IntelliMouse, or compatible pointing device.

Additional items or services required to use certain features:

· 9600-baud or higher modem (14.4 recommended).

· Multimedia computer required to access sound and other multimedia effects.

· Microsoft Mail, Microsoft Exchange, Internet SMTP/POP3, or other MAPI-compliant messaging software required to use e-mail.

· Publish to the Web feature in Microsoft Access requires Microsoft Internet Information Server for Windows NT Workstation or Microsoft Personal Web Server for Windows 95.

· Microsoft Exchange Server required for certain advanced workgroup functionality in Microsoft Outlook.

· Some Internet functionality may require Internet access and payment of a separate fee to a service provider.

Installing Microsoft Office 97 or Microsoft Access 97 on a Network

For instructions on installing Microsoft Access 97 on a network, see the Network Readme file located on the CD-ROM at \Office\Netwrk8.txt. For additional information about network installations, you can obtain a copy of the Microsoft Office 97 Resource Kit, which is available wherever computer books are sold or directly from Microsoft Press.

ODBC Fails When You Upgrade to Windows NT After Installation

If you install Microsoft Office 97 or Microsoft Access 97 on Windows NT version 3.51, and then upgrade to Windows NT version 4.0, ODBC data sources will fail with a message that one of the components is a different version than the ODBC Driver Manager. To fix this problem, upgrade to Windows NT version 4.0 before installing Microsoft Office 97 or Microsoft Access 97. Or, reinstall Microsoft Office 97 or Microsoft Access 97 after upgrading to Windows NT version 4.0.

Office 97 ValuPack Contains Additional Clip Art Folder

In addition to the \ValuPack root folder, The ValuPack contains another root folder, \Clipart, that contains clip art and .avi files. If you are running Microsoft Office 97, Professional Edition, you can add these files to the Clip Gallery in Microsoft Word.

AddInPath Registry Entry

In the registry, there is an entry called AddInPath at \HKey_Local_Machine\Software\Microsoft\Office\8.0\Access\Wizards.

Microsoft Access uses this registry key as an alternate location for add-ins, such as the Import Text and Export Text wizards or ones that you add through the Add-In Manager. Although the value for the AddInPath is usually the default path for Msaccess.exe, it can be different, for example, on development machines, network installations, or CD-ROM installations.

Uninstalling Help Doesn't Remove All Help Files

If you do a complete installation of Microsoft Access and then uninstall Help by clearing the Help Topics check box in the Setup dialog box, several Help files (Vbaoff.* and Veenlr.*) in the \Program Files\Common Files\Microsoft Shared\Vba\ folder will remain on your machine.

You will need to manually delete these files if you are attempting to save disk space. If you do not manually delete these files, the keyword Help in the Module window will still partially work.

Installing the ODBC SQL Server Driver Help File

If you do a complete installation (click Custom in the Setup dialog box and click Select All) of Microsoft Access but only do a Typical installation of the other Office Professional applications, the ODBC SQL Server Driver Help file, Drvssrvr.hlp, is not installed. If you then use Microsoft Access Help and attempt to display the "Use the SQL Server Driver and the ODBC Help files" topic, you will not be able to see the topic and Help may not work.

To install the ODBC SQL Server Driver Help file, follow these steps:

1. Start Microsoft Office 97 Professional Setup.

2. Click Add/Remove.

3. In the Options box, select Data Access.

4. Click the Change Option button.

5. In the Options box, select Database Drivers.

6. Click the Change Option button.

7. In the Options box, make sure the box next to Microsoft SQL Server Driver is selected.

8. Click OK.

9. Click OK again.

10. Click Continue.

Installing Microsoft Access 95 After Installing Microsoft Access 97

If you do a complete installation of Microsoft Access 97 and then attempt to do a complete installation of Microsoft Access 95, you may not be able to complete the installation. For example, if you get the error message "Unable to load installable ISAM; Can't load mspdox35.dll," you will need to install the Paradox driver for Microsoft Access 97 before you can successfully complete the installation of Microsoft Access 95. If this error occurs with other ISAM drivers, then install the specific driver that is causing the problem.

To install any ISAM driver, start the Microsoft Office 97 ValuPack, and go to the Data Access Pak component.

Removing a Stand-alone Version of a Microsoft Office 97 Application After Installing Microsoft Access

If you install any stand-alone version of a Microsoft Office 97 application along with Microsoft Access 97, and then uninstall the stand-alone Microsoft Office 97 application, you might not be able to use Microsoft Access. For example, Microsoft Access closes when you click the option "Start using Microsoft Access," in the Office Assistant. In this case, you must reinstall Microsoft Access 97.

Registration Error Installing Older Data Drivers

You may get a registration error if you attempt to install an older data driver such as the Paradox or Lotus 1-2-3 driver after installing Microsoft Office 97. For instance, installing Microsoft Visual FoxPro version 5.0 after installing Microsoft Office 97 or Microsoft Access 97 will cause the registration error.

To work around this, install the new version of the appropriate driver in the Data Access Pak of the Office 97 ValuPack before installing Visual FoxPro version 5.0.

Uninstalling Several Microsoft Products Will Unregister Remote Data Object (RDO)

If you have Visual Basic version 4.0 installed on your computer (which uses Remote Data Object (DAO) version 1.0), and either Microsoft Office 97, Microsoft Access 97 stand-alone version, Microsoft Excel 97 stand-alone version, or Visual Basic version 5.0 also installed (which use RDO version 2.0), if you uninstall Visual Basic version 4.0, RDO version 2.0 will no longer work in Microsoft Office 97, Microsoft Access 97 stand-alone version, Microsoft Excel 97 stand-alone version, or Visual Basic version 5.0. If you uninstall Microsoft Office 97, Microsoft Access 97 stand-alone version, Microsoft Excel 97 stand-alone version, or Visual Basic version 5.0, RDO version 1.0 will no longer work in Visual Basic version 4.0.

To work around this, re-register the version of RDO you are using. To do this, for RDO version 1.0, on the Start menu, click Run, and then type regsvr32 msrdo32.dll in the Open box. For RDO version 2.0, on the Start menu, click Run, and then type regsvr32 msrdo20.dll in the Open box.

Several Northwind Reports Require Arial Narrow Font

When you preview or print the Catalog, Invoice, and Sales By Category reports in the Northwind sample database, some of the text will be truncated if you don't have the Arial Narrow font installed on your machine. You can install the Arial Narrow as well as other fonts from the Office 97 ValuPack.

Working with Sample Databases When You Run Microsoft Access from a CD-ROM

If you choose the Run From CD-ROM option when you install Microsoft Access, the sample databases remain in the CD-ROM \Office\Samples folder. To make changes to the sample databases, copy them to the \Program Files\Microsoft Office\Office folder on your hard drive. Then, rename Nwind.mdb to Northwind.mdb and Solution.mdb to Solutions.mdb.

Web Browser Help File Has Same Name as Internet Explorer Help File

The Help file for the Web Browser control is in the Office 97 ValuPack, in a file called Iexplore.hlp. You can open this file directly from the CD-ROM by double-clicking it. If you copy this file (along with Iexplore.cnt) to your machine, be careful not to overwrite the Help file for Internet Explorer version 3.0, which has the same name and is installed by default in the \Windows\Help directory.

Keeping an Existing Version of Microsoft Access When You Install Microsoft Office 97

If you want to keep your existing version of Microsoft Access on your computer in addition to Microsoft Access 97, you can use the Microsoft Office Upgrade Wizard located in the \ValuPack\OffClean folder of the Microsoft Office 97 CD-ROM before you install Microsoft Office 97 or Microsoft Access 97.

To start the Microsoft Office Upgrade Wizard, perform one of the following steps:

· In Windows Explorer or in the File Manager, locate \ValuPack\OffClean\OffCln97.exe on the CD-ROM and then double-click OffCln97.exe.

· In Microsoft Windows 95 or Microsoft Windows NT Workstation version 4.0, click Run on the Start menu and type d:\valupack\offclean\offcln97.exe.

· In Microsoft Windows NT version 3.51, click Run on the File menu and type d:\valupack\offclean\offcln97.exe.

In the Upgrade Wizard, select the Let Me Decide Which Microsoft Office Applications Will Be Removed option. For more information about OffCln97.exe, see Microsoft ValuPack Help (Valupk8.hlp) in the \ValuPack folder on the CD-ROM.

Removing Microsoft Access 95 After Installing Microsoft Access 97 Unregisters the Calendar Control

If you have Microsoft Access 95 installed on your machine, install Microsoft Office 97, Professional Edition or Microsoft Access 97 stand-alone version, then remove Microsoft Access 95 using Setup, Setup will remove and unregister the Microsoft Access 95 Calendar control (Msacal70.ocx), but also inadvertently unregister the Microsoft Access 97 Calendar control (Mscal.ocx).

To fix the probem, you can re-register the Microsoft Access 97 Calendar control with the following MS-DOS commands:

Windows 95: regsvr32.exe \windows\system\mscal.ocx

Windows NT: regsvr32.exe \windows\system32\mscal.ocx

General

Supported ActiveX Controls

The following table lists ActiveX controls that have been tested and verified for Microsoft Access 97.

There may be additional controls available from the Insert ActiveX Control dialog box (choose the ActiveX Control command on the Insert menu in form or report Design view) or the menu displayed from the More Controls button in the toolbox, but they may not work with Microsoft Access 97. You may also see several Forms version 2.0 controls on your machine. Although these ActiveX controls work in Microsoft Access 97, you don't need to use them because they provide less functionality than the native Microsoft Access form and report controls.

ActiveX control name Installed with

---------------------------------------------------------------------------------------------

Calendar Control 8.0 Microsoft Access 97

Chart Object Control Microsoft Access 97

Common Dialog Control Microsoft Office 97 Developer

Edition (ODE)

ImageList Control ODE

ListView Control ODE

Microsoft Rich Textbox Control ODE

Microsoft Web Browser Control Internet Explorer 3.0 (Also in the

Office 97 ValuPack)

MSInet Control ODE

ProgressBar Control ODE

Slider Control ODE

StatusBar Control ODE

TabStrip Control ODE

Toolbar Control ODE

TreeView Control ODE

UpDown Control (Replaces the ODE

SpinButton Control)

WinSock Control ODE

Microsoft Personal Web Server Generates 'Failed to get the expression service' Error

If you use Microsoft Personal Web Server on Windows 95 to run a Web application published by Microsoft Access 97, Personal Web Server may no longer be able to connect to the Microsoft Access database after the first 50 to 60 queries. The Microsoft Access ODBC driver will return the error message, "Failed to get the expression service." To fix the problem, obtain the updated file, Rpcrt4.dll version 4.00.953 (dated 7/23/96 or later), and replace the existing one on your Windows 95 machine.

You can find this update in Rpcrtupd.exe, a self-extracting file, on the following services:

· The Microsoft home page on the Internet, http://www.microsoft.com/. (On the Help menu, point to Microsoft On The Web, and then click Microsoft Home Page. Click the Support icon. Click Search the Knowledge Base. Select Windows 95 And Internet Explorer in step 1, enter kbfile rpcrtupd.exe in step 3, and then click GO!. Open the article, and then click the button to download the file.)

· Anonymous FTP on the Internet. (Type ftp ftp.microsoft.com, type cd softlib/mslfiles, and then type get rpcrtupd.exe.)

· Microsoft Download Service (MSDL). (Dial (206) 936-6735 to connect to MSDL, and then download Rpcrtupd.exe.)

Changing Browsers Prevents Opening Home Pages in Northwind

If you remove Microsoft Internet Explorer from your machine, install Netscape Navigator, and then attempt to open an HTML home page in Northwind, you will receive the following message: "Unable to open filename. No program is registered to open this file."

To fix this problem, run Windows Explorer, select any HTML file, hold down SHIFT and right-click the HTML file, and then click the Open With command. Click Netscape from the list of available programs, and then select the Always Use This Program To Open This Type Of File check box.

Using ODBC and SQL Server Versions Prior to Version 6.5

The file Instcat.sql is used with the SQL Server ODBC Driver and is stored on the CD-ROM in the \Os\System folder. Instcat.sql is an SQL command file that installs catalog stored procedures on the Microsoft SQL Server. If you plan on using the SQL Server ODBC Driver included in Microsoft Access 97, and you are running Microsoft SQL Server prior to version 6.5, you will need to run this command file on the server. For more information, search for the keyword "Instcat.sql" in the Microsoft SQL Server Books Online. Note that the functionality provided in the file Instcat.sql is integrated into SQL Server version 6.5 and later.

Creating Charts with the Chart Wizard

When a chart on a form or report displays data that is related to a specific record on the form or report, you must include the field that links the chart and the form or report in the query for the chart. However, if you don't use the linking field as a displayed field on the chart, the Chart Wizard doesn't add it to the query. To work around this problem, you can add the linking field to the query for the chart after you create the chart. For an example, see "Updates to Northwind Sample Database" in the Documentation section.

Using the Web Post Option in the Publish to the Web Wizard Causes Microsoft Access to Fail on Windows NT Version 4.0

On Windows NT version 4.0, if you run the Publish to the Web Wizard, and then choose one or more of the Web Post Options, Microsoft Access fails. Alternatively, you can copy the files created by the Publish to the Web Wizard using Windows Explorer.

Jet/ISAM/DAO

Microsoft Exchange/Outlook Driver

The Microsoft Exchange/Outlook driver (Msexch35.dll) is available in the Office 97 ValuPack. You can use this driver to access data (read-only) in mail folders and address books stored in the Windows Messaging data store of Microsoft Exchange and Microsoft Outlook.

You can use Data Access Objects (DAO) to program the Microsoft Exchange/Outlook driver. You must install the Messaging Application Programming Interface (MAPI) on your machine. Also, you must use a new connection string keyword, MAPILEVEL=, which specifies the path to the Exchange/Outlook container that is the parent of the folder you want to access. For example, to link to the Exchange folder named Dave in the Dev folder under the People folder in the mailbox Mailbox - Sam Smith, define the connection string as, "Exchange 4.0;MAPILEVEL=Mailbox - Sam Smith|People\Dev;". Then, use the OpenTable action or method to specify the table name as "Dave." There is an additional connect string parameter, TABLETYPE, you can use to specify either an Address book or a folder, where 1 = AddressBook and 0 = folder (this is the default).

To open a Microsoft Exchange/Outlook folder directly, use the OpenDatabase method and specify values for the following parts: database, options = True, read-only = True, and a dbname data source. The following code example uses the OpenDatabase method to open a Microsoft Exchange/Outlook folder named Barbara and count the number of messages received from a user named Jim Harris:

Public Sub OpenExchangeFolder()

Dim dbsExchange As Database, intCount As Integer

Dim rst As Recordset, str As String

str = "Exchange 4.0;MAPILEVEL=" _

& "Dave Jones (Exchange)|People\Important;TABLETYPE=0;"

Set dbsExchange = OpenDatabase _

("C:\Data\Temp.mdb", 0, 0, str)

Set rst = dbsExchange.OpenRecordset("Barbara")

rst.MoveFirst

While Not rst.EOF

If rst!From = "Jim Harris" Then

intCount = intCount + 1

End If

rst.MoveNext

Wend

rst.Close

dbsExchange.Close

End Sub

Important

· You cannot directly link to a Microsoft Exchange database that's opened exclusively. If you need to work around this, create a back-end database containing the link to the Exchange database.

· When you use the OpenDatabase method to open a folder in a Microsoft Exchange/Outlook mailbox, you must supply the path and name of an existing Microsoft Jet database as the first argument. The Microsoft Exchange/Outlook driver creates system tables in this database to store information about the structure of the Microsoft Exchange folders being accessed, including all the new fields you've appended to these folders. It is usually best to create a new, empty Microsoft Jet database for this purpose and use this same database each time you want to access data in a folder. If you delete this database and use a new one, all the information about fields you added to the folders will be lost, and you will need to recreate them.

· If the Microsoft Exchange/Outlook folder was created by a client other than the Microsoft Exchange/Outlook driver, and not all of the default MAPI columns are present, the Microsoft Exchange/Outlook driver will not be able to read the folder. For example, if an application is a MAPI client and writes a new folder with a number of defined columns other than the MAPI default columns, the Microsoft Exchange/Outlook driver will not be able to read the folder.

Exporting Tables with Numeric Characters in Names to ODBC Sources

If you use an SQL statement, SELECT/INTO, to export Microsoft Access tables that have a numeric character as the first character in their names to an ODBC source, the numeric character is replaced with an underscore (_). For example, if you export "123Table" to SQL Server, the exported table will be named "_23Table" in SQL Server.

Using DAO Version 3.5 in Older OLE Automation Host Applications

Data Access Objects (DAO) version 3.5 is designed to work with Visual Basic for Applications version 5.0. Although DAO 3.5 will appear in Office 95 or Visual Basic version 4.0 or earlier reference lists, you can't use DAO 3.5 in either Microsoft Office 95 or Visual Basic version 4.0 or earlier.

RDO Appears in Reference List

If you have installed ODBCDirect on your machine (in Custom Setup, select Data Access, click Choose Options, and then select Data Access Objects For Visual Basic), Remote Data Objects (RDO) appears in the reference list, but you can't program RDO unless you purchase software, such as Visual Basic version 5, Enterprise, that explicitly installs it for development. You can enable the reference to RDO, but you will receive OLE Automation errors when you use the RDO model in code.

dbFailOnError No Longer Rolls Back a Transaction

In previous releases of Data Access Objects (DAO), if you executed SQL statements, they were internally treated as transactions. If you executed a statement with the dbFailOnError flag on and the query failed, the operation was rolled back. For performance reasons, an SQL statement is no longer treated as a transaction. Therefore, if an SQL query fails in Microsoft Access, an incomplete operation may occur. If you think an error may occur, you should explicitly use the statement within a transaction by using the BeginTrans method and the CommitTrans method. However, note that explicit transactions may slow query performance.

Can't Pass a QueryDef Object Name to an OpenRecordset Method Using ODBCDirect

When you use ODBCDirect, you cannot open a Recordset object from a QueryDef method object name. Instead, you should perform the OpenRecordset method directly from the QueryDef object. This is because QueryDef objects in ODBCDirect are not permanent objects as they are in a Microsoft Jet database.

ODBCDirect: GetRows Error 40035

You should not use the GetRows method with long value fields. If you use the GetRows method on an ODBCDirect Recordset object containing long value fields (Memo or Long Binary), you will get an error variant stored in the array wherever the long value field should have been. If you read the array data value, it will be Error 40035 and the data type will be Variant.

Replication

Converting Replicated Databases

Microsoft Access 97 can't open a replica created with Microsoft Access 95. You must convert the Design Master and associated replicas to Microsoft Access 97, or first open the replica in the version in which it was created and try again.

You can enable a Microsoft Access 95 replica to run using Microsoft Access 97. If you open an enabled Microsoft Access 95 replica in Microsoft Access 97 and there is a synchronization pending, synchronization will not occur. You will be warned that there is a synchronization pending that cannot occur until the replica is opened and synchronized using Microsoft Access 95.

Opening a Replica Database Created Through Visual Basic for Applications Code

If you make a database replicable using Data Access Objects (DAO) through Visual Basic for Applications, then move the database to a different directory without first opening it in Microsoft Access, then you will receive an error when you try to open the database. If you create a replica using DAO, then try to open the replica in Microsoft Access before opening the Design Master, you will also get an error. In both cases, some commands may not be available when you open the database. To solve this problem, when you replicate a database using DAO, open the Design Master in Microsoft Access and synchronize all replicas before moving the Design Master or opening a replica.

Conversion and Compatibility

Converting Expressions in VBA That Use the Line Continuation Character

Microsoft Access 97 sometimes doesn't correctly convert expressions in VBA that use the line continuation character (_) and displays a compile error when you try to execute the code. You can correct this problem after you convert the database to Microsoft Access 97. Open any module in Design view and then click the Compile And Save All Modules command on the Debug menu. When Microsoft Access finds an expression that it can't compile, edit the expression to restore its original syntax.

Changes to Error Code Numbers

Some error codes have changed and this may affect existing applications. For example, when you reference a PaletteSource property of a text box that doesn't exist, Microsoft Access 95 returned error message 2455, "Application-defined or object-defined error," but Microsoft Access 97 returns error message 438, "Object doesn't support this property or method." After you convert your database applications to Microsoft Access 97, some Visual Basic for Application code might not work because you are no longer trapping the correct error numbers. To fix this problem, test your converted application and make changes to error events where necessary so they are trapping the correct error numbers.

Change in How You Create Custom Menu Bars

When you create a custom menu bar, you can use the Customize dialog box. (On the View menu, point to Toolbars and click Customize). If you create a custom menu bar using the Built-in Menus category on the Commands tab in the Customize dialog box, any changes you make to the custom menu will also be made to the built-in menu. Similarly, any changes you make to the built-in menu will also be made to the custom menu. To avoid making unintended changes to menus, use the New Menu category instead of the Built-in Menus category.

Literal Dates Between the Years 1900 and 1929 May Cause Different Query Results

If you have used a literal date specifying the years 1900 through 1929 as part of your criteria in a query, and you created this query in a version of a Microsoft Access database prior to Microsoft Access 97, when you convert the query to Microsoft Access 97, it may return different results. You may even see different results from the same query if the query is run under an enabled database. This is caused by the new interpretation of year dates ending in the digits 00 through 29 as the year 2000.

To work around this, change the date to cdate("date as string") in the criteria to force Microsoft Access to accept the correct date.

Programming and Visual Basic for Applications

Run-time Error Codes for FollowHyperlink and Follow Methods

The following table summarizes errors that can occur when you use the FollowHyperlink method of the Application object or the Follow method of the Hyperlink object. These error codes explain why you can't connect to a specific World Wide Web site and occur because of conditions outside your application.

VBA

Err.Number VBA Err.Description

--------------------------------------------------------------------------------------------------------------------------------

-2146697214 The address of this site is not valid. Check the address and try again.

-2146697213 Cannot start an Internet session.

-2146697212 Cannot connect to the Internet server.

-2146697211 Cannot locate the Internet server or proxy server.

-2146697210 The site reports that the item you requested could not be found. (HTTP/1.0 404)

-2146697209 The Internet site reports that a connection was established but the data is not available.

-2146697208 Cannot download the information you requested. (WebDownloadFailure)

-2146697207 The item you requested requires proper authentication. (HTTP/1.0 401)

-2146697206 The Internet site cannot return the object you request. (HTTP/1.0 403)

-2146697205 The connection to this Internet site took longer than the allotted time.

-2146697204 The site reports that the request is not valid.

-2146697203 The required Internet protocol is not installed on your computer, or the Internet address

you requested may not be valid.

-2146697202 A security problem has occurred.

-2146697201 Cannot open the specified file.

-2146697200 Cannot start the program needed to open this file.

-2147221018 No program is registered to open this file.

-2147221164 No program is registered to open this file.

-2147467260 The hyperlink cannot be followed to the destination.

-2147221020 The address of this site is not valid. Check the address and try again.

-2147221014 Cannot open the specified file.

-2147012891 The address of this site is not valid. Check the address and try again.

-2147012868 The site reports that the item you requested could not be found. (HTTP/1.0 404)

-2147012867 Cannot connect to the Internet server.

-2147012894 The connection to this Internet site took longer than the allotted time.

-2147012888 The required Internet protocol is not installed on your computer, or the Internet address

you requested may not be valid.

You can trap these errors and display the appropriate error message as the following example shows.

Function GetUserAddress() As Boolean

Dim strInput As String

On Error GoTo Error_GetUserAddress

strInput = InputBox("Enter a valid address")

Application.FollowHyperlink strInput, , True

GetUserAddress = True

Exit_GetUserAddress:

Exit Function

Error_GetUserAddress:

Dim Number As Long

Number = Err.Number

Select Case Number

Case -2146697214

MsgBox "The address of this site is not valid. Check the address and try again."

Case -2146697213

MsgBox "Cannot start an Internet session."

' And so on, for each error….

End Select

GetUserAddress = False

Resume Exit_GetUserAddress

End Function

Expression Service Fails with Broken Reference

If you set a reference from a Microsoft Access 97 database to any project or type library and the reference is subsequently broken, then your database may not behave as expected. Your code may not run properly, and expressions in queries and on forms may also fail. To fix this problem, either remove the reference or reestablish the reference to the project or type library.

Using the RefLibPaths Registry Key to Locate a Moved Project or Type Library

If you set a reference to a project or type library from Microsoft Access and then move the file that contains that project or type library to a different folder, Microsoft Access will attempt to locate the file and reestablish the reference. If the \RefLibPaths key exists in the registry, Microsoft Access will first search there. You must add this key to the registry and then add the names and locations of any add-ins or libraries as string value beneath that key. Create the \RefLibPaths key in H_KEY_LOCAL_MACHINE\Software\Microsoft\Office\8.0\Access. Within the key, add a string value that specifies the name and location of the file to which the reference is set. The name should be the file name, including the extension, and the location should be the path plus the file name. For example, if you have set a reference to the Northwind sample database, you can add the following values:

Name: Northwind.mdb

Data: C:\Program Files\Microsoft Office\Office\Samples\Northwind.mdb

DDE and DDESend Functions Do Not Work Under Windows NT Version 3.51

The DDE and DDESend functions do not work under Windows NT version 3.51. For example, you might use the following function as the ControlSource property of a text box on a form: =DDESend("Excel", "Sheet1", "R1C1", "Hello"). If Microsoft Excel isn't running when you open the form in Form view, Microsoft Access displays a message asking if you want to start Microsoft Excel. When you click Yes, Microsoft Excel won't open if you are running Windows NT version 3.51. You can avoid this problem by starting Microsoft Excel before you open the form in Form view.

These functions work properly on later versions of Windows NT.

Duplicate Declarations Compile Without Displaying a Warning

If you create duplicate declarations in two modules, and then use the Compile And Save All Modules command on the Debug menu in the Module window, Microsoft Access doesn't display a warning message. Having duplicate declarations in two modules may cause unexpected behavior in your application. There is no way to predict which declaration Microsoft Access will use when you run your application. If you update only one of the declarations, you may not see the changes in your application that you expect because the other declaration may be used.

To avoid this problem, do not create duplicate declarations in two modules.

Using MsgBox Statements or Functions Can Interfere with ActiveX Control Mouse Events

Using MsgBox statements or functions in certain events can interfere with other mouse events generated by Microsoft Access or an ActiveX control. For example, using Visual Basic code containing a MsgBox statement in the BeforeClick event of a TabStrip control prevents the TabStrip control's Click event from being triggered.

Documentation

Updates to Microsoft Access Help

In the example for the "Hyperlink Property" topic, replace:

Sub CreateHyperlink(ctlSelected As Control, strSubAddress As String, Optional strAddress As String)

with:

Sub CreateHyperlink(ctlSelected As Control, strSubAddress As Textbox, Optional strAddress As Textbox)

In the "Convert Access Basic Code to Visual Basic" topic, ignore the section entitled "Renaming a Database." This is no longer true for Microsoft Access 97.

In the "DoMenuItem Action Commands Not Available with the RunCommand Action" topic, remove the following menu command from the table. (The topic is available from the DoMenuItem Action and RunCommand Action topics.)

View Menu name Menu command Use instead

--------------------------------------------------------------------------------------------------------------------------------

Form View Records AllowEditing Command not available. Use AllowEdits,

AllowAdditions, AllowDeletions, and

DataEntry properties.

In the same topic, add the following menu commands to the table.

View Menu name Menu command Use instead

--------------------------------------------------------------------------------------------------------------------------------

Module View Next Procedure Command not available. Navigate in the

Module window.

Module View Previous Procedure Command not available. Navigate in the

Module window.

Table Design Help Cue Cards Command not available. For all other views,

this command now brings up the Answer

Wizard.

Table Design Help Technical Support Command not available. For all other views,

this command now brings up the Answer

Wizard.

In the "Create a label by dragging and dropping an Internet shortcut" topic, in step 2, remove the text "an icon on your desktop or."

In the "Create a hyperlink by copying and pasting a hyperlink or hyperlink address" topic, replace step 4 with the following text:

"4. In the datasheet, place the insertion point in the field that precedes the Hyperlink field, and then press TAB to move to the Hyperlink field. In the form, place the insertion point in the text box or other control that precedes the text box that's bound to a Hyperlink field or the combo box that displays a hyperlink in its text box portion. Then press TAB to move to the text box or combo box that displays the hyperlink."

In the "Microsoft Access Objects" topic, the Application object also contains the References collection, and Forms and Reports objects also contain a Modules object.

In the "Connect Property" topic in the second table, replace the specifier, "Excel 97," with "Excel 8.0."

In the "View the online Getting Results book" topic, replace the two paragraphs in the second bullet with the following text:

"If you are not running the Office Shortcut Bar, insert the CD in your CD-ROM drive or connect to the network drive you installed Office from. Double-click the Cdonline folder on the CD or in the Microsoft Office folder on the network, and then double-click the file Result97.htm."

In the "Import or link data from a spreadsheet" topic, ignore the phrase at the end of the second paragraph "or its column order is the same." You cannot use column order as the criteria for appending an imported spreadsheet to an existing table.

In the "Initialize, ItemAdded, ItemRemoved, Terminate Event Procedures Example" and "Remove Method (References Collection) Example" topics, the Calendar control library is incorrectly called Mscal; It should be CalendarObjects. You will need to revise the code examples that use the incorrect name to make them work.

In the "OutputTo Method" topic, change the "acFormatActiveXServer" intrinsic constant of the outputformat argument to "acFormatASP."

In the "Set Options from Visual Basic" topic in the Hyperlinks/HTML Tab table, replace the string argument "ActiveX Session Timeout" with "Active Server Pages Session Timeout" and "ActiveX Server URL" with "Active Server Pages URL."

Delete the topic, "Add a built-in menu to a toolbar or menu bar."

In the "Create a custom menu bar for the current database" topic, step 7 should read:

"To complete the menu bar, add custom menus. For more information, click (button)."

In the "Export a datasheet to static HTML format" topic, remove the following item from the Notes:

"The layout of the HTML page simulates the page orientation and margins set for the datasheet. To change these settings, display the datasheet, and then use the Page Setup command on the File menu before you export it. For more information, click (button)."

Ignore the topic, "UserForm Object, UserForms Collection" and all related jumps. Microsoft Access does not support either the UserForm object or the UserForms collection.

In the "Callback Property" topic, in the Example, replace the information with the following:

This example shows an Office Assistant balloon that contains a list of three printers. After the user clicks a printer, the ProcessPrinter procedure runs and the balloon closes.

Sub shar()

Set bln = Assistant.NewBalloon

With bln

.Heading = "Select a Printer."

.Labels(1).Text = "Network Printer"

.Labels(2).Text = "Local Printer"

.Labels(3).Text = "Local Color Printer"

.BalloonType = msoBalloonTypeButtons

.Mode = msoModeModeless

.Callback = "ProcessPrinter"

.Button = msoButtonSetNone

.Show

End With

End Sub

A callback procedure is passed three arguments: the Balloon object whose Callback property was assigned the callback procedure's name, the index of the label button or balloon button the user clicked, and - if the assistant is being controlled by a wizard - an integer that uniquely identifies that wizard.

Sub ProcessPrinter(bln As Balloon, ibtn As Long, _

iPriv As Long)

Assistant.Animation = msoAnimationPrinting

Select Case ibtn

Case 1

' Insert printer-specific code

Case 2

' Insert printer-specific code

Case 3

' Insert printer-specific code

End Select

bln.Close

End Sub

In the "Checkboxes Property" topic, in the Example, replace the information with the following:

It's possible for a user to select more than one check box before clicking the OK button. If you anticipate this happening, you can alter the code to account for it. The following example evaluates each check box individually.

With Assistant.NewBalloon

.Heading = "Regional Sales Data"

.Text = "Select the region(s) you want to print."

For i = 1 To 3

.CheckBoxes(i).Text = "Region " & i

Next

.Button = msoButtonSetOkCancel

If .Show = msoBalloonButtonOK Then

For i = 1 To 3

If .CheckBoxes(i).Checked = True Then

sstring = sstring & " Region " & i

End If

Next

MsgBox "The report will print section(s): " & sstring

Else

MsgBox "The report will print no sections."

End If

End With

Updates to 'Building Applications with Microsoft Access 97'

The following changes occurred after the book went to press:

On page 81, the Internet address given for the Microsoft Access page of the Microsoft Support Online Web site should be http://www.microsoft.com/msaccesssupport/.

On page 622, replace the last two sentences in the second paragraph under the heading "Adding the WebBrowser Control to a Form," with:

"Run Msie30.exe to install Microsoft Internet Explorer 3.0 for both Microsoft Windows 95 and Microsoft Windows NT Workstation. The Microsoft Internet Explorer 3.0 Setup program will detect which version of Windows you are using and install the appropriate files."

Updates to Northwind Sample Database

Microsoft Access doesn't update the chart in the "Sales by Category" report correctly when you preview or print the report from the Database window. To fix this problem, open the report in Design view, and display the property sheet for the SalesChart control. Click the Build button next to the RowSource property box to display the query. Add the CategoryID field to the query design grid, and then save and close the query.

File List

Notes

· \Program Files\Microsoft Office is the default root folder for a Microsoft Access installation and \Windows is the default root folder for a Windows 95 installation, but your machine may be different.

· Files marked with an asterisk (*) are included in a Typical installation.

\Program Files\Common Files\Microsoft Shared\Dao\

Dao2535.tlb *

Dao35.aw

Dao35.cnt

Dao35.hlp

Dao350.dll *

\Program Files\Common Files\Microsoft Shared\Grphflt\

Gifimp32.flt *

Ms.gif *

\Program Files\Common Files\Microsoft Shared\Msinfo\

Imgwalk.dll *

Msinf16h.exe *

Msinfo32.cnt *

Msinfo32.exe *

Msinfo32.hlp *

\Program Files\Common Files\Microsoft Shared\Proof\

Custom.dic

Mssp2_en.lex *

Mssp232.dll *

\Program Files\Common Files\Microsoft Shared\Vba\

Mrt7enu.dll

Vba332.dll *

Vbacv20.dll *

Veena3.aw

Veencn3.cnt

Veencn3.hlp

Veendf3.hlp

Veenlr3.cnt

Veenlr3.hlp

\Program Files\Microsoft Office\Office\

Accfil80.ode

Accore80.aw *

Accspec.ini *

Acdef80.cnt *

Acdef80.hlp *

Acmain80.aw *

Acmain80.cnt *

Acmain80.hlp *

Acnew80.cnt *

Acnew80.hlp *

Acread80.wri *

Acspc80.cnt

Acspc80.hlp

Actip80.cnt *

Actip80.hlp *

Acvba80.aw

Acvba80.cnt *

Acvba80.hlp *

Commtb32.hlp *

Eula8.cnt *

Eula8.hlp *

Gr8409.dll *

Gr8galry.gra *

Graph8.aw *

Graph8.cnt *

Graph8.exe *

Graph8.hlp *

Graph8.olb *

Graph8.srg *

Grintl32.dll *

Hlink.srg *

Misc2.srg *

Msacc8.olb *

Msaccess.exe *

Msaccess.srg *

Msacnv30.dll *

Msacnv30.exe *

Msaexp30.dll *

Msain800.dll *

Mso7enu.dll *

Mso7ftp.exe *

Mso7ftpa.exe *

Mso7ftps.exe *

Mso97.dll *

Mso97fx.dll *

Msoc.dll

Msoffice.srg *

Msrclr35.dll

Msrecr35.dll

Msroute.dll

Oftip8.hlp *

Osa.exe

Osaintl.dll

Pss8.cnt *

Pss8.hlp *

Rplbrf35.cnt

Rplbrf35.hlp

Soa800.dll *

Utility.mda *

Vbagrp8.cnt

Vbagrp8.hlp

Vbaoff8.aw

Vbaoff8.cnt

Vbaoff8.hlp

Wizard.srg *

Wzcnf80.mda

Wzdat80.mdt *

Wzlib80.mde *

Wzmain80.mde *

Wztool80.mde

\Program Files\Microsoft Office\Office\Actors\

Clippit.act *

Logo.act

\Program Files\Microsoft Office\Office\Bitmaps\Dbwiz\

Books.gif *

Contacts.gif *

Dbmusic.gif *

Eatdrink.gif *

Houshold.gif *

Invntory.gif *

Members.gif *

Monytrak.gif *

Phonordr.gif *

Photos.gif *

Resource.gif *

School.gif *

Videos.gif *

Workout.gif *

\Program Files\Microsoft Office\Office\Bitmaps\Styles\

Clouds.wmf *

Confidential.bmp *

Flax.bmp *

Globe.wmf *

Pattern.bmp *

Sea_dusk.wmf *

Stone.bmp *

\Program Files\Microsoft Office\Office\Samples\

Cajbkgrn.gif *

Cajlogo.gif *

Cajun.htm *

Forbkgrn.gif *

Forlogo.gif *

Formaggi.htm *

Northwind.mdb *

Nwind80.cnt *

Nwind80.hlp *

Nwindtem.htm *

Nwlogo.gif *

Orders.mdb

Orders80.cnt

Orders80.hlp

Products.doc *

Soltn80.cnt

Soltn80.hlp

Solutions.mdb

Whatsnew.gif *

\Program Files\Microsoft Office\Office\Setup\

Acc97inv.dll *

Acmeacc.exe *

Acmeacc.lst *

\Program Files\Microsoft Office\Templates\Access\

100.htm *

100.jpg *

Default.htm *

Gray.htm *

Gray.jpg *

Grayst.htm *

Grayst.jpg *

Mc.htm *

Mc.jpg *

Mcst.htm *

Mcst.jpg *

Msaccess.jpg *

Sky.htm *

Sky.jpg *

Stones.htm *

Stones.jpg *

Tiles.htm *

Tiles.jpg *

Zigzag.htm *

Zigzag.jpg *

\Program Files\Microsoft Office\Templates\Databases\

Address Book.mdz *

Asset Tracking.mdz *

Book Collection.mdz *

Contact Management.mdz *

Donations.mdz *

Event Management.mdz *

Expenses.mdz *

Household Inventory.mdz *

Inventory Control.mdz *

Ledger.mdz *

Membership.mdz *

Music Collection.mdz *

Order Entry.mdz *

Picture Library.mdz *

Recipes.mdz *

Resource Scheduling.mdz *

Service Call Management.mdz *

Students and Classes.mdz *

Time and Billing.mdz *

Video Collection.mdz *

Wine List.mdz *

Workout.mdz *

\Windows\

Ctl3d32.dll *

Mso97.acl *

\Windows\Fonts\

Hatten.ttf *

Tahoma.ttf *

Tahomabd.ttf *

\Windows\System\

12520437.cpx

12520850.cpx

Accwiz.dll *

Comcat.dll *

Commtb32.dll *

Dbnmpntw.dll

Docobj.dll *

Drvssrvr.hlp

Ds16gt.dll

Ds32gt.dll

Hlink.dll *

Hlinkprx.dll *

Hlp95en.dll *

Inetcpl_cpl *

Jetdef35.hlp *

Jeterr35.cnt *

Jeterr35.hlp *

Jetsql35.cnt

Jetsql35.hlp

Mfcans32.dll *

Mscal.cnt

Mscal.dep

Mscal.hlp

Mscal.ocx

Mscpxl32.dll

Msexcl35.dll *

Msjet35.dll *

Msjint35.dll *

Msothunk.dll *

Msrd2x35.dll *

Msrdo20.dll *

Msrepl35.dll

Msstkprp.dll *

Mstext35.dll *

Msvcrt20.dll *

Msvcrt40.dll *

Msxbse35.dll

Odbc16gt.dll

Odbc32.dll

Odbc32gt.dll

Odbcad32.exe

Odbccp32.cpl

Odbccp32.dll

Odbccr32.dll

Odbcinst.cnt

Odbcinst.hlp

Odbcint.dll

Odbcjet.cnt

Odbcjet.hlp

Odbcji32.dll

Odbcjt32.dll

Odbcjtnw.cnt

Odbcjtnw.hlp

Odbckey.inf

Odbcstf.dll

Odbctl32.dll

Odbctrac.dll

Oddbse32.dll

Odexl32.dll *

Odfox32.dll

Odtext32.dll *

Oleaut32.dll *

Olepro32.dll *

Rdocurs.dll *

Regwiz.exe

Riched20.dll *

Scp32.dll *

Selfreg.dll

Sqlsrv32.dll

Stdole2.tlb *

System.mdw *

T2embed.dll *

T2embed.srg *

Urlmon.dll *

Vba3en.dll *

Vbajet32.dll

Vbar332.dll *

Ven2232.olb

Wininet.dll *

Winsspi.dll*

Wrkgadm.exe *


© BugNet material copyright 1994-1999 by BugNet.
® BugNet is a Registered Trademark of KeyLabs.
Astonisher.com material is

© Copyright 1973 - 2020 by Bruce Brown and BF Communications Inc.
Astonisher.com is a trademark of BF Communications Inc.

This historic replica of BugNet from the period 1994-1999
is presented by astonisher.com with the permission of BugNet.

BF Communications Inc.
P.O. Box 393
Sumas, WA 98295 USA
(360) 927-3234

Website by Running Dog


* Here's Bruce Brown's BugNet Memoir...
* Here's the free BugNet from 1999...
BugNet
"Vernon Louis Parrington" by Bruce Brown

"Opal Whiteley" by Bruce Brown

Temixwten.net - The Museum of the Salish

"The Histroy of hte Corporation" by Bruce Brown

Mountain in the Clouds by Bruce Brown