| UseOfficeInitOffice Method | 
            Loads MS Office® library (MS Word, Excel, PowerPoint) from memory
            
Namespace: SautinSoftAssembly: UseOffice (in UseOffice.dll) Version: 2025.10.22
 Syntax
SyntaxPublic Function InitOffice As Integer
Return Value
Int32
            0 - Loading successfully
            1 - Can't load MS Excel (Word and PowePoint are loaded successfully)
            10 - Can't load MS Word (Excel and PowerPoint are loaded successfully)
            11 - Can't load MS Word and Excel (PowerPoint loaded successfully)
            100 - Can't load MS PowerPoint (Excel and Word are loaded successfully)
            101 - Can't load MS Excel and PowerPoint (Word loaded successfully)
            110 - Can't load PowerPoint and Word (Excel loaded successfully)
            111 - Can't load MS Office
            
 Example
ExampleHow to convert Word Excel PowerPoint files to PDF files in C#
using System;
using System.IO;
using System.Collections.Generic;
namespace Sample
{
    class Test
    {
        static void Main(string[] args)
        {
            
            
            
            
            
            
            
            SautinSoft.UseOffice u = new SautinSoft.UseOffice();
            
            string directoryWithFiles = Path.GetFullPath(@"..\..\..\..\..\..\TestFiles\");
            
            int ret = u.InitOffice();
            
            
            
            
            
            
            
            
            
            if (ret == 111)
                return;
            string[] filters = null;
            switch (ret)
            {
                case 0: filters = new string[] { "*.doc", "*.docx", "*.rtf", "*.txt", "*.xls", "*.xlsx", "*.csv", "*.ppt", "*.pptx" }; break;
                case 1: filters = new string[] { "*.doc", "*.docx", "*.rtf", "*.txt", "*.ppt", "*.pptx" }; break;
                case 10: filters = new string[] { "*.xls", "*.xlsx", "*.csv", "*.ppt", "*.pptx" }; break;
                case 11: filters = new string[] { "*.ppt", "*.pptx" }; break;
                case 100: filters = new string[] { "*.doc", "*.docx", "*.rtf", "*.txt", "*.xls", "*.xlsx", "*.csv" }; break;
                case 101: filters = new string[] { "*.doc", "*.docx", "*.rtf", "*.txt" }; break;
                case 110: filters = new string[] { "*.xls", "*.xlsx", "*.csv" }; break;
                default: return;
            }
            
            
            List<string> inpFiles = new List<string>();
            foreach (string filter in filters)
            {
                inpFiles.AddRange(Directory.GetFiles(directoryWithFiles, filter));
            }
            
            string ext = "";
            string outFilePath = "";
            DirectoryInfo outDir = new DirectoryInfo(Directory.GetCurrentDirectory()).CreateSubdirectory("Results");
            for (int i = 0; i < inpFiles.Count; i++)
            {
                SautinSoft.UseOffice.eDirection direction = SautinSoft.UseOffice.eDirection.DOC_to_PDF;
                ext = Path.GetExtension((string)inpFiles[i]).ToLower();
                
                if (ext.IndexOf("doc") > 0)
                    direction = SautinSoft.UseOffice.eDirection.DOC_to_PDF;
                else if (ext.IndexOf("rtf") > 0)
                    direction = SautinSoft.UseOffice.eDirection.RTF_to_PDF;
                else if (ext.IndexOf("txt") > 0)
                    direction = SautinSoft.UseOffice.eDirection.TEXT_to_PDF;
                
                else if (ext.IndexOf("xls") > 0)
                    direction = SautinSoft.UseOffice.eDirection.XLS_to_PDF;
                else if (ext.IndexOf("csv") > 0)
                    direction = SautinSoft.UseOffice.eDirection.XLS_to_PDF;
                
                else if (ext.IndexOf("ppt") > 0)
                    direction = SautinSoft.UseOffice.eDirection.PPT_to_PDF;
                
                string outFileName = (Path.GetExtension(inpFiles[i]) + "topdf.pdf").TrimStart('.');
                outFilePath = Path.Combine(outDir.FullName, outFileName);
                u.ConvertFile((string)inpFiles[i], outFilePath, direction);
                Console.WriteLine($"{i + 1} of {inpFiles.Count}...");
            }
            Console.WriteLine("Done!");
            u.CloseOffice();
            
            System.Diagnostics.Process.Start(new System.Diagnostics.ProcessStartInfo(outDir.FullName) { UseShellExecute = true });
        }
    }
}How to convert Word Excel PowerPoint files to PDF files in VB.Net
Imports System
Imports System.IO
Imports System.Collections.Generic
Namespace Sample
    Friend Class Test
        Shared Sub Main(ByVal args() As String)
            
            
            
            
            
            
            
            Dim u As New SautinSoft.UseOffice()
            
            Dim directoryWithFiles As String = Path.GetFullPath("..\..\..\..\..\..\TestFiles\")
            
            Dim ret As Integer = u.InitOffice()
            
            
            
            
            
            
            
            
            
            If ret = 111 Then
                Return
            End If
            Dim filters() As String = Nothing
            Select Case ret
                Case 0
                    filters = New String() {"*.doc", "*.docx", "*.rtf", "*.txt", "*.xls", "*.xlsx", "*.csv", "*.ppt", "*.pptx"}
                Case 1
                    filters = New String() {"*.doc", "*.docx", "*.rtf", "*.txt", "*.ppt", "*.pptx"}
                Case 10
                    filters = New String() {"*.xls", "*.xlsx", "*.csv", "*.ppt", "*.pptx"}
                Case 11
                    filters = New String() {"*.ppt", "*.pptx"}
                Case 100
                    filters = New String() {"*.doc", "*.docx", "*.rtf", "*.txt", "*.xls", "*.xlsx", "*.csv"}
                Case 101
                    filters = New String() {"*.doc", "*.docx", "*.rtf", "*.txt"}
                Case 110
                    filters = New String() {"*.xls", "*.xlsx", "*.csv"}
                Case Else
                    Return
            End Select
            
            
            Dim inpFiles As New List(Of String)()
            For Each filter As String In filters
                inpFiles.AddRange(Directory.GetFiles(directoryWithFiles, filter))
            Next filter
            
            Dim ext As String = ""
            Dim outFilePath As String = ""
            Dim outDir As DirectoryInfo = (New DirectoryInfo(Directory.GetCurrentDirectory())).CreateSubdirectory("Results")
            For i As Integer = 0 To inpFiles.Count - 1
                Dim direction As SautinSoft.UseOffice.eDirection = SautinSoft.UseOffice.eDirection.DOC_to_PDF
                ext = Path.GetExtension(CStr(inpFiles(i))).ToLower()
                
                If ext.IndexOf("doc") > 0 Then
                    direction = SautinSoft.UseOffice.eDirection.DOC_to_PDF
                ElseIf ext.IndexOf("rtf") > 0 Then
                    direction = SautinSoft.UseOffice.eDirection.RTF_to_PDF
                ElseIf ext.IndexOf("txt") > 0 Then
                    direction = SautinSoft.UseOffice.eDirection.TEXT_to_PDF
                    
                ElseIf ext.IndexOf("xls") > 0 Then
                    direction = SautinSoft.UseOffice.eDirection.XLS_to_PDF
                ElseIf ext.IndexOf("csv") > 0 Then
                    direction = SautinSoft.UseOffice.eDirection.XLS_to_PDF
                    
                ElseIf ext.IndexOf("ppt") > 0 Then
                    direction = SautinSoft.UseOffice.eDirection.PPT_to_PDF
                End If
                
                Dim outFileName As String = (Path.GetExtension(inpFiles(i)) & "topdf.pdf").TrimStart("."c)
                outFilePath = Path.Combine(outDir.FullName, outFileName)
                u.ConvertFile(CStr(inpFiles(i)), outFilePath, direction)
                Console.WriteLine($"{i + 1} of {inpFiles.Count}...")
            Next i
            Console.WriteLine("Done!")
            u.CloseOffice()
            
            System.Diagnostics.Process.Start(New System.Diagnostics.ProcessStartInfo(outDir.FullName) With {.UseShellExecute = True})
        End Sub
    End Class
End Namespace See Also
See Also