Build 3.5.0.9 of xlsgen exposes two additional properties of OLE objects in XLS and XLSX files.
These additional properties are for cases where the file type cannot be inferred because there is no such information stored in the Excel file.
It so happens that, when you insert an OLE object in an Excel file, Excel will store information relative to the program associated to the file type installed on one's computer, not a standard MIME file type that could be shared internationally. As a result, any Excel file, by design, cannot work properly if you happen to try to open it and you don't have on your computer the one or more applications associated to run the OLE objects. In this scenario, all what Excel does is show you a screen capture of the OLE object, which is actually stored in the file so there is nothing being inferred or generated. And when you double-click on the OLE object, you get an error message saying the OLE server cannot start, or something of that nature.
To ease the pain, xlsgen introduces two properties that are meant, for a client application, to recognize the actual file type so something more relevant than what Excel does, can be done with the OLE object in question.
The additional properties are :
- FileContentType : this is the progId of the file being stored as an OLE object. Usually, the progId of the application installed on that computer, which is associated to the file type. For instance, if you read PDF using "Free PDF Reader", the progId will be a string identifying this application.
- ServerGUID : the server GUID associated to the OLE object is again another application selection string. It strictly identifies an application installed on that computer.