The registry contains a .vbd extension entry
The registry may contain one or all of the following keys:
Check the following registry keys on Microsoft Windows 2000 clients:
HKEY_USERS S-1-5-21-117609710-152049171-1957994488-500 Software Microsoft Windows CurrentVersion Explorer FileExts .VBD "Application"="iexplore.exe" HKEY_USERS S-1-5-21-117609710-152049171-1957994488-500 Software Microsoft Windows CurrentVersion Explorer FileExts .VBD OpenWithListHKEY_USERS S-1-5-21-2127521184-1604012920-1887927527-22087 Software Microsoft Windows CurrentVersion Explorer FileExts .vbd
where "S-1-5-21-117609710-152049171-1957994488-500" is the identifier for your user.
These .vbd extension entries in the registry cause Internet Explorer to make false assumptions. Internet Explorer assumes that if an extension for a file is registered, there is an appropriate server already installed on the system for that file. Thus, Internet Explorer does not use the CodeBaseSearchPath
key information in the Active Document to perform the component download, and the .cab file is not downloaded and unpacked.
If the server is already installed on the system (like your development machine), the .vbd should work. If the server is not installed, or if the version is out of date, the newer server is not downloaded, and the process fails. To resolve this problem, remove these entries from your registry.Important
This section, method, or task contains steps that tell you how to modify the registry. However, serious problems might occur if you modify the registry incorrectly. Therefore, make sure that you follow these steps carefully. For added protection, back up the registry before you modify it. Then, you can restore the registry if a problem occurs. For more information about how to back up and restore the registry, click the following article number to view the article in the Microsoft Knowledge Base:
How to back up and restore the registry in Windows
For more information about the CodeBaseSearchPath
key, see the "Internet Component Download Implementation" article on the Microsoft Developer Network (MSDN):
You are trying to download an MDAC component with your .vbd File
If you use Microsoft ActiveX Data Objects (ADO), MDAC does not lend itself to component-oriented installs. During component download, MDAC may install itself repeatedly and reboot the computer repeatedly. For more information, click the following article number to view the article in the Microsoft Knowledge Base:
Using MDAC with Internet component downloads
By default, the Package and Deployment Wizard (PDW) adds the MDAC component in your package. Make sure that you clear any MDAC component check boxes that are referenced in the PDW, and instruct your users to install MDAC prior to use of your component. You can download MDAC from the following Microsoft Web site:
The wrong version of Visual Basic Run-time or OLE files are referenced
When you package your Active Document on computers that have newer versions of these files (as included with Windows 2000 or Microsoft Office 2000), the .inf file that is created by the PDW contains information that asks for newer versions of OLE .dll files. This results in endless reboots, as well as the above-mentioned error message.
For a list of newer versions of OLE .dll files, click the article numbers below to view the articles in the Microsoft Knowledge Base:
CAB files distributed with Visual Basic 5.0
This problem is fixed in Microsoft Visual Studio 6.0 Service Pack 4. For more information, click the following article number to view the article in the Microsoft Knowledge Base:
Endless reboot requests occur when Internet Explorer attempts to download Visual Basic components
You are using the wrong .vbd file
To resolve this problem, use the .vbd file that the Microsoft Visual Basic Setup Wizard creates. The Setup Wizard creates a directory of all the files that are needed for a successful Internet download. To avoid compatibility issues, do not mix and match these files with other versions on your computer.
You are using an outdated .vbd file
The CLSID must be same in the .vbd, .htm (if used), and .exe files of your Active Document project. One of the most common sources of errors for Visual Basic Active Documents is when CLSIDs get out of synchronization. By default, Visual Basic 5.0 creates a new CLSID (and new registry entries) every time you remake your project. Most likely, you do not want this to occur. To preserve the CLSID across builds, perform the following steps:
- From the Project menu, click Project Properties.
- On the Component tab, under Version Compatibility, click Binary Compatibility.
- In the text box below that selection, put the DocObject (the .exe or .dll, depending on the Active Document) file name of your project.
If you do not set Binary Compatibility and rebuild the project, Visual Basic generates a new CLSID for the same ProgID. When downloading, if Internet Explorer on the client computer sees that it is trying to register a different CLSID for the same ProgID, it creates a conflict.X directory under Occache or the Downloaded Program Files folder.
To avoid this, if the project is not backwards compatible, set Binary Compatibility on your Active Document project. For more information, click the following article number to view the article in the Microsoft Knowledge Base:
Why CONFLICT directories are created during code download
The Actxprxy.dll file is missing or is not registered properly
If the ActiveX .dll file works but the ActiveX .exe file does not, Actxprxy.dll is probably missing or not registered properly. This file is installed by IE3.0X and should be registered. If it is not, use the Regsvr32 utility to register Actxprxy.dll.
The ActiveX .exe or .dll file is not registered properly
If your Active Document does not appear after you select Add from File
on the Section
menu to add the .vbd file to Office Binder, there is a registry problem or the DocObject cannot instantiate. If you can add the .vbd file to Binder, the .vbd file has the wrong CLSID. To resolve this problem, recompile and use the .vbd file that is created.
The Active Document is not signed or is not safe for scripting
At higher security levels, an unsigned .cab file does not download. When a .vbd file is navigated to, the Save As
dialog box appears. To resolve this problem, use a digital certificate to sign the .cab file. Users or enterprises that cannot sign the .cab file can also lower security settings temporarily. For example, users or enterprises can add the Web site to the Trusted Sites zone. Note
You must sign your .cab file, not the .vbd file. The .vbd file cannot be signed.
Run-time error in initialization code of Active Document
Make sure that you perform run-time error checking in your Active Document project. You can encounter problems if you have a run-time error in either of the following routines:
- Private Sub UserDocument_Initialize()
- Private Sub UserDocument_InitProperties()
If a run-time error occurs while in these routines, Internet Explorer displays the above-mentioned error message rather than the actual error message in your code.
Because the Initialize
event can fire multiple times under Internet Explorer, do not use this event. When the Initialize
event fires, the document is not fully sited in Internet Explorer. It is recommended that you use the Show
event instead. In addition, use the Hide
event instead of the UnInitialize
event to match the event firing sequences.For more information, click the following article number to view the article in the Microsoft Knowledge Base:
Internet Explorer 4.0 keeps Active Document servers running
Dependent files are not being downloaded
If users are running Internet Explorer with a High security setting, the files are not installed on their client computer, and the Active Document does not run; this returns the above-mentioned error message. When you use PDW to repackage your .cab file, set the Visual Basic run-time and OLE files to download from default Microsoft Web Sites.
You can also download and place these .cab files on your own server as follows:
- To download the desired .cab file, type the entire .cab file URL in the address bar of Internet Explorer. Internet Explorer prompts you to Open or Save the .cab file. Save the .cab file on your Web server.
For a list of .cab file URLs, click the article numbers below to view the articles in the Microsoft Knowledge Base:
172991Note Do not change the file date, time, or any other attributes because this invalidates the signature.
CAB files distributed with Visual Basic 5.0
- While creating Internet Component Setup, specify that the files be downloaded from your Web server instead of Microsoft Web site.
Note Do not create your own .cab files for Microsoft components.
Other problems that can occur
- Set the Internet Explorer security settings to allow the (signed/unsigned) ActiveX components to download.
- Turn on the version number increment in your document project, and put the version number in a field so that it appears on the main form of your downloaded page. By doing this, you can see whether your project actually downloaded or you are looking at an old version.
To change the version number for the Active Document project, perform the following steps:
- On the Project menu, click Run-Time Error in Initialization Code of Active Document.
- On the Make tab, under Version Number, update the version number manually, or select the Auto Increment check box.
- Always close and re-open Internet Explorer between component download attempts to avoid caching the old page.
- To reference remote objects, use CreateObject for debugging.
- Make your Active Document an .exe file rather than a .dll file for debugging.
- Make sure that you are using the latest versions of the controls and DLLs that ship with Visual Basic in your Active Document. You should use MSFlxGrd.ocx instead of Grid32.ocx.
- Files are not downloaded if there is a copy of that file loaded in the system. When you are downloading, make sure that you are only running Internet Explorer on your system. This minimizes the chance of a file being loaded that your Active Document needs to download.
- If the computer requires a proxy server to access the Internet, make sure that you are logged on to it before downloading the Active Document.