Notice: This website is an unofficial Microsoft Knowledge Base (hereinafter KB) archive and is intended to provide a reliable access to deleted content from Microsoft KB. All KB articles are owned by Microsoft Corporation. Read full disclaimer for more details.

BUG: Cannot Run a Compiled ActiveX DLL From IE


View products that this article applies to.

Symptoms

Internet Explorer (IE) fails to load an ActiveX DLL that is compiled in Microsoft Visual Basic 5.0 or 6.0.

↑ Back to the top


Cause

The Class_Initialize event is not fired correctly.

↑ Back to the top


Resolution

In Visual Basic 6.0, run the DLL project in the Visual Basic IDE (Integrated Development Environment) before loading it in IE to correct this problem.

There is no resolution for a Visual Basic 5.0 project.

↑ Back to the top


Status

Microsoft has confirmed this to be a bug in the Microsoft products listed at the beginning of this article.

↑ Back to the top


More information

Steps to Reproduce Behavior

  1. Create a new ActiveX DLL project in Visual Basic. Class1 is created by default.
  2. Add a new form (Form1) to the project.
  3. Paste the following code into Class1:
          Option Explicit
    
          Private myform As Form1
    
          Private Sub Class_Initialize()
             Set myform = New Form1
             myform.Visible = True
          End Sub
    
          Private Sub Class_Terminate()
             Set myform = Nothing
          End Sub
    
    					
  4. Save the project.
  5. Compile the project by selecting Make Project1.dll from the File menu.
  6. Select Add-In Manager under Add-Ins and check Visual Basic 6.0 Package and Deployment Wizard (PDW) to load it.
  7. Start the PDW by selecting it from the Add-Ins menu.
  8. Select Package. In the Package Type screen, select Internet Package and click Next. Follow the PDW to completion. The PDW will create a HTM file for your project in your desired Package directory.
  9. Press the F5 key to run the project in the IDE. Select "Wait for component to be created" and click OK.
  10. Launch Internet Explorer and browse to the HTM file created in step 8. The form shows up correctly.
  11. Close IE and stop the Visual Basic project from running in the IDE.
  12. Reopen IE and browse to the HTM file again. The page loads without error, but the form is not created.

↑ Back to the top


Keywords: kbbug, kbaddin, kbwizard, kbpending, KB193087

↑ Back to the top

Article Info
Article ID : 193087
Revision : 2
Created on : 5/13/2003
Published on : 5/13/2003
Exists online : False
Views : 442