HelloWorld.cpp
// IMPORTANT: Copy ByteScout.Spreadsheet.tlb into the project folder // HelloWorld.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include <windows.h> #pragma warning (disable: 4278) #import "c:\windows\system32\stdole2.tlb" rename_namespace("BytescoutSpreadsheet") exclude("GUID", "DISPPARAMS", "EXCEPINFO", \ "OLE_XPOS_PIXELS", "OLE_YPOS_PIXELS", "OLE_XSIZE_PIXELS", "OLE_YSIZE_PIXELS", "OLE_XPOS_HIMETRIC", \ "OLE_YPOS_HIMETRIC", "OLE_XSIZE_HIMETRIC", "OLE_YSIZE_HIMETRIC", "OLE_XPOS_CONTAINER", \ "OLE_YPOS_CONTAINER", "OLE_XSIZE_CONTAINER", "OLE_YSIZE_CONTAINER", "OLE_HANDLE", "OLE_OPTEXCLUSIVE", \ "OLE_CANCELBOOL", "OLE_ENABLEDEFAULTBOOL", "FONTSIZE", "OLE_COLOR") // To use managed-code servers like the C# server, // we have to import the common language runtime: #import <mscorlib.tlb> raw_interfaces_only #import <System.tlb> raw_interfaces_only #import <System.Drawing.tlb> raw_interfaces_only #import "Bytescout.Spreadsheet.tlb" rename_namespace("BytescoutSpreadsheet") //no_namespace named_guids int main(int argc, char* argv[]) { // initialize OLE HRESULT hr = CoInitialize(NULL); // check for errors if (FAILED(hr)) { MessageBox(0,"OLE initialization errp","error",MB_OK); return -1; } // declare document object ISpreadsheet * Doc = NULL; CLSID clsid; _Worksheets* worksheets = NULL; _Worksheet* worksheet = NULL; _Cell* cell = NULL; // get inuque ID for ISpreadsheet interface hr = CLSIDFromProgID(OLESTR("Bytescout.Spreadsheet.Spreadsheet"), &clsid); // check for errors if (FAILED(hr)) { MessageBox(0,"Can't get CLSID for ISpreadsheet interface","error",MB_OK); goto Uninit; }; // create Spreadsheet object hr = CoCreateInstance(clsid, NULL, CLSCTX_INPROC_SERVER, __uuidof(ISpreadsheet), (LPVOID*)&Doc); // check for errors if (FAILED(hr)) { MessageBox(0,"Can't create Spreadsheet object","error",MB_OK); goto Uninit; } //IWorksheets* worksheets = NULL; Doc->get_Worksheets(&worksheets); worksheet = reinterpret_cast<IWorksheets*>(worksheets)->Add("Sheet 1"); cell = reinterpret_cast<IWorksheet*>(worksheet)->Cell("A1"); reinterpret_cast<ICell*>(cell)->PutValueAsHTML("test value"); Doc->SaveAs("output.xls"); // release PDFDoc object Doc->Release(); // uninitialize OLE libraries Uninit: CoUninitialize(); return 0; }
StdAfx.cpp
// stdafx.cpp : source file that includes just the standard includes // HelloWorld.pch will be the pre-compiled header // stdafx.obj will contain the pre-compiled type information #include "stdafx.h" // TODO: reference any additional headers you need in STDAFX.H // and not in this file
Click here to get your Free Trial version of the SDK
also available as: