In the system32
directory I saw an .OCX
file with a corresponding .OCA
file.
I had thought .OCA
files are used only by Visual Basic. Are they therefore unnecessary for program execution and could be removed?
If they are unnecessary, why would there be an .OCA
in the system32
folder in the first place?
.OCA
files serve as a cache of the extended type library information for its corresponding .OCX
file.
If you delete an .OCA
file for a control VB recognizes and uses, VB will recreate the .OCA
file when you load a project requiring the control. The recreation process takes a little time but comes with no penalty otherwise.
Last reviewed: April 4, 1996
Article ID: Q149429
SUMMARY For every custom control file (.OCX) that Visual Basic uses, there is an accompanying .OCA file of the same file name. For example, GRAPH16.OCX has an accompanying .OCA file called GRAPH16.OCA. An .OCA file is a binary file that functions as both an extended type library file and a cache for the custom control file.
MORE INFORMATION
A type library is a file or component within another file that contains OLE Automation standard descriptions of exposed objects, properties, and methods. The actual working type library for a custom control used in Visual Basic is a combination of the type library of the control itself and the additional properties provided by the framework that wrap the control.
Some of the properties of the control are provided by the framework and some by the control itself. Programmatically, the properties from the framework and the control all appear as properties of the control.
In order for these properties to appear, Visual Basic creates an extended type library when the control is loaded into the toolbox. Because the process of reading the control's type library and creating the extended type library is time consuming, Visual Basic caches the extended type library information into an OCA file.
If you delete the OCA file for a control Visual Basic recognized, Visual Basic will re-create the .OCA file when you load a project requiring the control. This re-creation process comes with a time penalty.
(http://support.microsoft.com/kb/149429)
So, don't worry about including them when you deploy your application.