home *** CD-ROM | disk | FTP | other *** search
- Overview of Windows 95 File Viewing
- -----------------------------------
-
- The Explorer is the centralized shell tool in which the end user will
- browse through information on the file system and the network under
- Windows 95. One of the features of the Explorer is the ability to
- quickly view the contents of a file without having to run the full
- application that created it and without even requiring the presence of
- that application. In order to view file contents, the end user selects
- one or more files in the Explorer and chooses the "Quick View" menu
- item from the context menu of that selection or from the
- Explorer's File menu.
-
- In response, the Explorer will invoke file-specific viewers for each
- selected file, using the class identifier (an OLE 2 CLSID) of the file to
- determine which viewer to invoke if the file is an OLE 2 compound file.
- Otherwise Explorer uses the extension of the file to determine which
- viewer to use. A file viewer associates itself with file classes and
- extensions in the system registry.
-
- A file viewer, referred to in this document as a FileViewer, is an OLE 2
- component object (not a compound document object) implemented inside an
- in-process server DLL which itself is associated with the FileViewer's
- CLSID. These components are responsible for providing all the top-level
- user interface for viewing a file including menu items, toolbar, and
- status bar as described in the FileViewer User Interface Guidelines.
-
- The FileViewer objects themselves, which are separate from the class
- factory objects in their respective in-process servers, implement the
- standard OLE 2 interface IPersistFile as well as a new interface called
- IFileViewer. The Explorer itself does not interact directly with
- FileViewer objects--instead, the Explorer launches an instance of a
- small program called QVStub (Quick View Stub, a Windows EXE but not a
- full application) for each file to view that serves to define a process,
- with its own message queue, for each FileViewer. QVStub is responsible
- for associating a pathname with a FileViewer, instantiating that
- FileViewer object, and instructing it to load the file and display it
- for viewing.
-
- Because a FileViewer is an OLE 2 component object, additional interfaces
- and functionality can be added later in future versions of Windows to
- support new and interesting features. For example, the FileViewer can
- act as an OLE 2 container application and in-place activate embedded
- objects inside the displayed file. It could allow the end user to
- make a selection in the document and copy it to the clipboard or source
- it in a drag & drop operation. But such functionality is entirely up to
- the implementor of the FileViewer component.
-