Skip Headers
Oracle® Outside In Viewer for ActiveX Developer's Guide
Release 8.3.7

Part Number E12847-02
Go to Documentation Home
Go to Table of Contents
Go to Index
Go to Feedback page
Contact Us

Go to previous page
Go to next page
View PDF

2 Getting Started

The Outside In Viewer for ActiveX control provides developers of container-aware applications the ability to view and print documents of varying types from within their own application. This is the same technology that is provided through the Outside In Viewer Technology API. Developers using Microsoft Visual Basic/C++/C# and Borland's Delphi will all find this control easy to use and powerful enough to handle document viewing needs.

2.1 Installation and System Requirements

In order for applications to use this control, the control must be installed on each workstation on which the application is to run.

Outside In requires the msvcr80.dll redistributable module.

C++.NET sample applications require Visual Studio 2005 SP1 C-runtime libraries.

The system requirements for this product are as follows:

Requirement Value
Disk Space 18 Mb
CPU Intel 486 or higher
Operating System Microsoft Windows 2000 or newer
Memory 16Mb
Compiler Visual C++ and Visual Basic Reference 6.0

2.1.1 NSF Support

Notes Storage Format (NSF) files are produced by the Lotus Notes Client or the Lotus Domino server. The NSF filter is the only Outside In filter that requires the native application to be present to filter the input documents. Due to integration with an outside application, NSF support will not work with redirected I/O nor will it work when an NSF file is embedded in another file. Either Lotus Notes version 8 or Lotus Domino version 8 must be installed on the same machine as OIT. SysLotusNotesPath should be set to the directory containing the nnotes.dll. NSF support is only available on the Win32 platform.

2.1.2 Options and Information Storage

The technology creates two sets of information: the default options, and a list of available display engines. In the Windows implementations, these lists are built by the technology as needed, usually the first time ActiveX is run. You do not need to ship these lists with your application. The lists are automatically regenerated if corrupted or deleted.

The files used to store this information are stored in a .oit subdirectory in the following location:

\documents and settings\user name\Application Data

If an .oit directory does not exist in the user's directory, the directory is created automatically by the technology. The files are automatically regenerated if corrupted or deleted.

The files are:

  • Display engine lists: *.d

  • Persistent options:*.opt

These file names are intended to be unique enough to avoid conflict for any combination of machine name and install directory. This allows the user to run products in separate directories without having to reload the files above. The file names are built from an 11-character string derived from the directory the Outside In technology resides in and the name of the machine it is being run on. The string is generated by code derived from the RSA Data Security, Inc. MD5 Message-Digest Algorithm.

2.1.3 Getting Started With Visual Basic 6.0

Before using the control, it must be added to the Visual Basic toolbox.

  1. Start Visual Basic 6.0.

  2. Open an existing project or select New Project.

  3. Select the Project Menu, choose Components.

  4. Check the box next to Outside In for ActiveX Control and click OK.

The control appears in the toolbox and may be added to a form as any other control would be added.

2.1.4 Getting Started With Visual C++

To install the ActiveX control into the Microsoft Visual C++ 6.0 developers' environment:

  1. Start Visual C++.

  2. Open an Existing workspace or select a New workspace.

  3. From the Project menu, select Add to Project then Components and Controls.

  4. Open the Registered ActiveX Controls folder.

  5. Select the ActiveX control and click Insert.

2.1.5 Getting Started with .NET Applications

To install the ActiveX control into the .NET developers' environment:

  1. Start Visual Studio.

  2. Open an Existing project or select a New project.

  3. From the toolbox tab, select Choose Items.

  4. Select the COM Components tab and select the ActiveX Control.

  5. Select the ActiveX control and drop it on the dialog box.

2.2 Installing the ActiveX Control as Part of Your Application

Please do not ship the development installation package. Instead, add the following tasks to the installer for your application:

  1. Copy the Filters directory onto the target machine.

  2. Create a registry key for your application:

    HKEY_LOCAL_MACHINE\Software\OIX\executable name

    To minimize the chance of conflicts with other installations, the key name should be specified as a full path to your executable, with forward slashes for path separators.


    Versions of this control prior to 8.3.5 had the default location of the FilterPath entry as HKLM\Software\OIX\OutsideX. Versions 8.3.7 and beyond will be using the HKLM\Software\OIX\OutsideX\{CLSID of control}\FilterPath. For the current version, the CLSID is {E1F90ECB-B75C-43C7-8102-6761A1DA6B3D}. If you cannot or do not use a unique FilterPath, then use this default value when installing the ActiveX product with your application.
  3. Create a string value in that registry key with the name "FilterPath," whose value is the full path to the filters directory on the target machine.

  4. Copy the outsidex.ocx to the \system directory.

  5. Register the outsidex.ocx control.


    Starting with the 8.3.7 release of OutsideIn Technology, the control has been branded with a new GUID/CLSID everytime the API changes. This would require a rebuild of your application (after changing references to the new control and this varies from development environment to environment) to use this control.

The specific steps necessary to accomplish these tasks depend on the installer software you are using. However, if you are creating your own installer; you can register the outsidex.ocx by calling regsvr32.exe outsidex.ocx. Regsvr32.exe is also located in the System directory.


Versions of this control prior to 8.2.0 stored the filter path in a particular location in the system registry, even if multiple versions of the control were installed in different locations on the same system. Therefore only the last copy of the control installed on the system had access to its correct configuration information. Any other copy on the same system could experience errors or incompatibilities at runtime. Steps 2 and 3 above now enable multiple copies of the control to co-exist peacefully on the same system. Steps 2 and 3 can be skipped if the application will be responding to the GetTechPath event to provide the filter location.

The following is an example of a .reg file entry for registering the filter path:

[HKEY_LOCAL_MACHINE\SOFTWARE\OIX\c:/Program Files/App/myapp.exe]
"FilterPath"="c:\\Program Files\\App\\OIX\\Filters"

2.3 Libraries and Structure

The OutsideIn Technology modules have been renamed from previous versions by appending the version number. This is to prevent conflicts in applications required to run multiple versions of the technology simultaneously. We recommend that the previous version of the modules be removed before installing the update. If multiple versions are found in the technology directory, the latest version will be used.

Here is an overview of the files contained in the main installation directory for this product.


These DLLs implement the API. They should be linked with the developer's application. LIB files are included in the SDK.

File Description
oswin32837.dll Interface to native GDI implementation
outsidex.ocx Outside In module installed in windows\system32
sccca837.dll Content Access module (provides organized chunker data for the developer)
sccanno837.dll Annotation module
sccch837.dll Chunker (provides caching of and access to filter data for the display engine)
sccda837.dll Data Access module
sccdu837.dll Display Utilities module (includes text formatting)
sccfa837.dll Filter Access module
sccfi837.dll File Identification module (identifies files based on their contents). The File ID Specification may not be used directly by any application or workflow without it being separately licensed expressly for that purpose.
sccfmt837.dll Formatting module (resolves numbers to formatted strings)
sccfut837.dll Filter utility module
sccind837.dll Indexing engine
scclo837.dll Localization library (all strings, menus, dialogs and dialog procedures reside here)
sccole837.dll OLE rendering module
sccta837.dll Text Access module (provides straight text data for the developer)
sccut837.dll Utility functions (including IO subsystem)
sccvw837.dll Viewer module (this is the DLL that your application loads, providing control of all viewer functions)
wvcore837.dll The GDI Abstraction layer

Display Engine DLLs

File Description
debmp837.dll Bitmap (TIFF, GIF, BMP, PCX…)
dehex837.dll Hexadecimal
devect837.dll Vector/Presentation (PowerPoint, Impress, Freelance…)
dess837.dll Spreadsheet/Database (Excel, Calc, Lotus 123…)
detree837.dll Archive (ZIP, GZIP, TAR…)
dewp837.dll Document (Word, Writer, WordPerfect…)

Filter and Export Filter Libraries

File Description
vs*837.dll Filters for specific file types (there are more than 150 of these filters, covering more than 500 file formats)

Premier Graphics Filters

File Description
i*2837.flt 30 .flt files (the import filters for premier graphics formats)
isgdi32837.dll Interface to premier graphics filters

Additional Files

File Description
adinit.dat Support file for the vsacd2 filter
cmmap000.bin Tables for character mapping (all character sets)




Support files for the vslwp filter Support file for the vsnsf filter

2.4 Samples Overview

This SDK includes several sample applications that demonstrate the use of various features of the ActiveX control. Various samples are provided that were created with Visual C++ 6.0, Visual Basic 6.0, and Inprise Delphi 4.0.

The following applications were created in Microsoft Visual Studio 2005. The following .Net sample applications are provided: SimpleCS, SearchAnnoCS, SimpleVB, SearchAnnoVB, SimpleCPP, and SearchAnnoCPP.