FIX: OLE Automation to Excel 8.0 Fails Using a 16-bit Client

ID: Q170402


The information in this article applies to:
  • Microsoft Office 2000 Developer
  • Microsoft Visual Basic Professional and Enterprise Editions, 16-bit only, for Windows, version 4.0
  • Microsoft Visual Basic Professional Edition for Windows, version 3.0
    on the following platforms: Win95
  • Microsoft Excel 97 for Windows


SYMPTOMS

If you use a 16-bit Visual Basic client to Automate Microsoft Excel 97 under Windows 95, you may receive the following error:

"<application> caused an invalid page fault in module kernel32.dll"
This error only occurs on Windows 95 with Microsoft Excel 97. The error does not happen on Windows NT 4.0 or with Microsoft Excel 95.


RESOLUTION

There are several solutions to this problem.

  • Use a 32-bit client,


  • -or-

  • use Windows NT 4.0,


  • -or-

  • install DCOM for Windows 95.

    DCOM for Windows 95 can be downloaded from the Microsoft Web Site at the following address:

    http://msdn.microsoft.com/library/default.htm


  • A License and Distribution Agreement can also be found at the above Web Site.


STATUS

Microsoft has confirmed this to be a bug in the Microsoft products listed at the beginning of this article. This problem has been fixed in Microsoft Windows 98.


MORE INFORMATION

The following example only fails on Windows 95 using a 16-bit client application to Microsoft Excel 97. This will only fail on machines that do not have DCOM for Windows 95 installed.

Steps to Reproduce Behavior

  1. Create a new Visual Basic 4.0 16-bit project.


  2. Add a CommandButton to Form1.


  3. Add the following code to Form1:


  4. 
    Dim oExcel as object
    
    Private Sub Form_Load()
    Set oExcel = CreateObject("Excel.Application")
    End Sub
    
    Private Sub Command1_Click()
      oExcel.Workbooks.add
      oExcel.Visible = True
      'The error usually happens on one of the next 3 lines
      oExcel.Sheets(1).Activate
      oExcel.Range("a1").Value = 1
      oExcel.Range("a2").Value = 2
    End Sub 
  5. Run the project by pressing the F5 Key.


  6. Click the CommandButton.


Additional query words: XL97 XL8 16bit ipf crash

Keywords : kbnokeyword kbExcel kbVBp300bug kbVBp400bug kbWinOS98fix kbGrpDSO kbOffice2000
Version : :; WINDOWS:3.0,4.0,97
Platform : WINDOWS
Issue type : kbbug


Last Reviewed: June 4, 1999
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.