RESOLUTION
The registry contains a .vbd extension entry
The registry may contain one or all of the following keys:
HKEY_CLASSES_ROOT\.vbd
HKEY_CLASSES_ROOT\vbd_auto_file
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.vbd
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
OpenWithList
HKEY_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.
Warning Serious problems might occur if you modify the registry incorrectly by using Registry Editor or by using another method. These problems might require that you reinstall your operating system. Microsoft cannot guarantee that these problems can be solved. Modify the registry at your own risk.
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:
251325
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:
172991 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:
257642
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:
196150
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:
177269
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:
172991 CAB files distributed with Visual Basic 5.0
Note Do not change the file date, time, or any other attributes
because this invalidates the signature. - 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.