| UseOfficeCloseOffice Method | 
            Releases MS Office® library (MS Word, Excel, PowerPoint) from memory
            
Namespace: SautinSoftAssembly: UseOffice (in UseOffice.dll) Version: 2025.10.22
 Syntax
Syntaxpublic void CloseOffice()
 Example
ExampleASP.Net - Convert Word Excel PowerPoint to PDF files in C#
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.IO;
using System.Drawing;
public partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            convDir.DataSource = Enum.GetNames(typeof(SautinSoft.UseOffice.eDirection));
            convDir.DataBind();
        }
        resultMessage.Text = "";
        fileMessage.Text = "";
    }
    protected void convDir_SelectedIndexChanged(object sender, EventArgs e)
    {
        if (uploadedDocument.PostedFile.FileName.Length == 0)
        {
            resultMessage.Text = "Please select an input document at first!";
            return;
        }
    }
    protected void convert_Click(object sender, EventArgs e)
    {
        if (uploadedDocument.PostedFile.FileName.Length == 0)
        {
            resultMessage.Text = "Please select an input document at first!";
            return;
        }
        
        
        string workDirectory = @"/converted/";
        string workPath = Server.MapPath(".") + workDirectory;
        Directory.CreateDirectory(workPath);
        string[] allFiles = Directory.GetFiles(workPath, "*.*");
        foreach (string file in allFiles)
            File.Delete(file);
        
        
        string fileName = String.Format("{0: h-m-s-f}", DateTime.Now);
        string tempFilePath = Path.Combine(workPath, fileName + Path.GetExtension(uploadedDocument.PostedFile.FileName));
        File.WriteAllBytes(tempFilePath, uploadedDocument.FileBytes);
        resultMessage.Text = "Converting ...";
        
        
        string ext = ".rtf";
        
        int pos = convDir.Text.LastIndexOf('_');
        pos++;
        ext = (convDir.Text.Substring(pos, convDir.Text.Length - pos)).ToLower();
        if (ext.CompareTo("text") == 0)
        {
            ext = "txt";
        }
        ext = "." + ext;
        
        string resultPath = Path.Combine(workPath, Path.ChangeExtension(uploadedDocument.FileName, ext));
        
        SautinSoft.UseOffice u = new SautinSoft.UseOffice();
        
        if (convDir.Text == "DOC_to_RTF" || convDir.Text == "DOCX_to_RTF" || convDir.Text == "DOC_to_HTML" || convDir.Text == "DOCX_to_HTML" || convDir.Text == "DOC_to_Text" || convDir.Text == "HTML_to_DOC" || convDir.Text == "HTML_to_RTF" || convDir.Text == "HTML_to_Text" || convDir.Text == "RTF_to_Text" || convDir.Text == "RTF_to_HTML" || convDir.Text == "RTF_to_DOC" || convDir.Text == "DOC_to_PDF" || convDir.Text == "DOCX_to_PDF" || convDir.Text == "RTF_to_PDF")
        {
            u.InitWord();
        }
        
        if (convDir.Text == "XLS_to_HTML" || convDir.Text == "XLS_to_XML" || convDir.Text == "XLS_to_CSV" || convDir.Text == "XLS_to_Text")
        {
            u.InitExcel();
        }
        
        if (convDir.Text == "XLS_to_RTF" || convDir.Text == "XLS_to_PDF" || convDir.Text == "XLSX_to_RTF" || convDir.Text == "XLSX_to_PDF")
        {
            u.InitWord();
            u.InitExcel();
        }
        
        if (convDir.Text == "PPT_to_PDF" || convDir.Text == "PPT_to_HTML" || convDir.Text == "PPT_to_RTF" || convDir.Text == "PPTX_to_PDF")
        {
            u.InitPowerPoint();
        }
        SautinSoft.UseOffice.eDirection convDirection = (SautinSoft.UseOffice.eDirection)Enum.Parse(typeof(SautinSoft.UseOffice.eDirection), convDir.SelectedValue);
        if (File.Exists(resultPath))
        {
            File.Delete(resultPath);
        }
        
        int result = u.ConvertFile(tempFilePath, resultPath, convDirection);        
        switch (result)
        {
                
            case 0: resultMessage.Text = "Converting successfully!";
                string href = Request.UrlReferrer.AbsoluteUri;
                href = href.Remove(href.LastIndexOf("/"));                
                href+= workDirectory + Path.GetFileName(resultPath);
                fileMessage.NavigateUrl = href;
                fileMessage.Target = "_blank";
                fileMessage.Text = Path.GetFileName(resultPath);
                break;
            case 1: resultMessage.Text = "Can't open input file."; break;
            case 2: resultMessage.Text = "Can't create output file."; break;
            case 3: resultMessage.Text = "Converting error!"; break;
            default: break;
        }
        
        
        
        u.CloseOffice();
        
        File.Delete(tempFilePath);
    }    
}<%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>UseOffice .Net - You will likely be surprised at the amount of conversion ways!</title>
    <style type="text/css">
    </style>
</head>
<body style="margin-left: 20px;">
<form id="form1" runat="server">
    <table width="100%"  border="0" cellspacing="0" cellpadding="0">
      <tr>
        <td colspan="2" class="auto-style1"><span class="style1"><strong>UseOffice .Net</strong> <span style="font-size: 10pt"> - Requires MS Office installed, any version: 2000, XP, 2003, 2007, 2010, 2013, 2016 or 2019.</span></span></td>
      </tr>
      <tr>
        <td width="247"><img src="box_useoffice_net.jpg" width="247" height="250" alt=""/></td>
        <td>
          <p class="style1">Before deploying this sample at your server, please take a look at:<br />
              <a href="https://www.sautinsoft.com/products/useoffice/examples/installation-on-server.php" target="_blank">How to install UseOffice .Net
          at Windows Servers.</a></p>             
        </td>
      </tr>
      <tr>
        <td> </td>
        <td></td>
      </tr>
      <tr>
        <td colspan="2" style="height: 168px"><div style="font-size: 12pt; font-family: Verdana"><p><b>Step 1:</b> Select a document (PDF, DOC, DOCX, RTF, HTML, XLS, XLSX, Text, CSV, PPT, PPTX):</p>
            <asp:FileUpload ID="uploadedDocument" runat="server" Width="805px" style="font-size: 12pt; font-family: Verdana" />
            <p><b>Step 2:</b> Specify the direction:  
            <asp:DropDownList ID="convDir" runat="server" Font-Names="Verdana" Font-Size="12pt"
                Width="173px" OnSelectedIndexChanged="convDir_SelectedIndexChanged" style="font-size: 12pt; font-family: Verdana">
            </asp:DropDownList></p>            
            <p><b>Step 3: </b>
            <asp:Button ID="convert" runat="server" Font-Names="Verdana" Font-Size="12pt" Text="Convert" OnClick="convert_Click" style="font-size: 12pt; font-family: Verdana; width: 150px; height: 35px;" /></p>
                        <p>
            <asp:HyperLink ID="fileMessage" runat="server">[fileMessage]</asp:HyperLink>
            <br />
            <asp:Label ID="resultMessage" runat="server" Font-Bold="True" Font-Names="Verdana" ForeColor="#FF8000" Width="1024px"></asp:Label></p>            
                                              </div></td>
      </tr>
    </table>
    <div>        
        <br />
         
                     </div>
    <div align="center"><br />
        <span style="font-size: 9pt; font-family: Verdana"><a href="https://www.sautinsoft.com" target="_blank">Copyright © SautinSoft 2002 - <script>document.write(new Date().getFullYear())</script></a> </span>
    </div>
</form>
</body>
</html>ASP.Net - Convert Word Excel PowerPoint to PDF files in VB.Net
Imports System
Imports System.Data
Imports System.Configuration
Imports System.Web
Imports System.Web.Security
Imports System.Web.UI
Imports System.Web.UI.WebControls
Imports System.Web.UI.WebControls.WebParts
Imports System.Web.UI.HtmlControls
Imports System.IO
Imports System.Drawing
Partial Public Class _Default
    Inherits System.Web.UI.Page
    Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
        If Not IsPostBack Then
            convDir.DataSource = System.Enum.GetNames(GetType(SautinSoft.UseOffice.eDirection))
            convDir.DataBind()
        End If
        resultMessage.Text = ""
        fileMessage.Text = ""
    End Sub
    Protected Sub convDir_SelectedIndexChanged(ByVal sender As Object, ByVal e As EventArgs)
        If uploadedDocument.PostedFile.FileName.Length = 0 Then
            resultMessage.Text = "Please select an input document at first!"
            Return
        End If
    End Sub
    Protected Sub convert_Click(ByVal sender As Object, ByVal e As EventArgs)
        If uploadedDocument.PostedFile.FileName.Length = 0 Then
            resultMessage.Text = "Please select an input document at first!"
            Return
        End If
        
        
        Dim workDirectory As String = "/converted/"
        Dim workPath As String = Server.MapPath(".") & workDirectory
        Directory.CreateDirectory(workPath)
        Dim allFiles() As String = Directory.GetFiles(workPath, "*.*")
        For Each file As String In allFiles
            System.IO.File.Delete(file)
        Next file
        
        
        Dim fileName As String = String.Format("{0: h-m-s-f}", DateTime.Now)
        Dim tempFilePath As String = Path.Combine(workPath, fileName & Path.GetExtension(uploadedDocument.PostedFile.FileName))
        File.WriteAllBytes(tempFilePath, uploadedDocument.FileBytes)
        resultMessage.Text = "Converting ..."
        
        
        Dim ext As String = ".rtf"
        
        Dim pos As Integer = convDir.Text.LastIndexOf("_"c)
        pos += 1
        ext = (convDir.Text.Substring(pos, convDir.Text.Length - pos)).ToLower()
        If ext.CompareTo("text") = 0 Then
            ext = "txt"
        End If
        ext = "." & ext
        
        Dim resultPath As String = Path.Combine(workPath, Path.ChangeExtension(uploadedDocument.FileName, ext))
        
        Dim u As New SautinSoft.UseOffice()
        
        If convDir.Text = "DOC_to_RTF" OrElse convDir.Text = "DOCX_to_RTF" OrElse convDir.Text = "DOC_to_HTML" OrElse convDir.Text = "DOCX_to_HTML" OrElse convDir.Text = "DOC_to_Text" OrElse convDir.Text = "HTML_to_DOC" OrElse convDir.Text = "HTML_to_RTF" OrElse convDir.Text = "HTML_to_Text" OrElse convDir.Text = "RTF_to_Text" OrElse convDir.Text = "RTF_to_HTML" OrElse convDir.Text = "RTF_to_DOC" OrElse convDir.Text = "DOC_to_PDF" OrElse convDir.Text = "DOCX_to_PDF" OrElse convDir.Text = "RTF_to_PDF" Then
            u.InitWord()
        End If
        
        If convDir.Text = "XLS_to_HTML" OrElse convDir.Text = "XLS_to_XML" OrElse convDir.Text = "XLS_to_CSV" OrElse convDir.Text = "XLS_to_Text" Then
            u.InitExcel()
        End If
        
        If convDir.Text = "XLS_to_RTF" OrElse convDir.Text = "XLS_to_PDF" OrElse convDir.Text = "XLSX_to_RTF" OrElse convDir.Text = "XLSX_to_PDF" Then
            u.InitWord()
            u.InitExcel()
        End If
        
        If convDir.Text = "PPT_to_PDF" OrElse convDir.Text = "PPT_to_HTML" OrElse convDir.Text = "PPT_to_RTF" OrElse convDir.Text = "PPTX_to_PDF" Then
            u.InitPowerPoint()
        End If
        Dim convDirection As SautinSoft.UseOffice.eDirection = CType(System.Enum.Parse(GetType(SautinSoft.UseOffice.eDirection), convDir.SelectedValue), SautinSoft.UseOffice.eDirection)
        If File.Exists(resultPath) Then
            File.Delete(resultPath)
        End If
        
        Dim result As Integer = u.ConvertFile(tempFilePath, resultPath, convDirection)
        Select Case result
                
            Case 0
                resultMessage.Text = "Converting successfully!"
                Dim href As String = Request.UrlReferrer.AbsoluteUri
                href = href.Remove(href.LastIndexOf("/"))
                href &= workDirectory & Path.GetFileName(resultPath)
                fileMessage.NavigateUrl = href
                fileMessage.Target = "_blank"
                fileMessage.Text = Path.GetFileName(resultPath)
            Case 1
                resultMessage.Text = "Can't open input file."
            Case 2
                resultMessage.Text = "Can't create output file."
            Case 3
                resultMessage.Text = "Converting error!"
            Case Else
        End Select
        
        
        
        u.CloseOffice()
        
        File.Delete(tempFilePath)
    End Sub
End Class<%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>UseOffice .Net - You will likely be surprised at the amount of conversion ways!</title>
    <style type="text/css">
    </style>
</head>
<body style="margin-left: 20px;">
<form id="form1" runat="server">
    <table width="100%"  border="0" cellspacing="0" cellpadding="0">
      <tr>
        <td colspan="2" class="auto-style1"><span class="style1"><strong>UseOffice .Net</strong> <span style="font-size: 10pt"> - Requires MS Office installed, any version: 2000, XP, 2003, 2007, 2010, 2013, 2016 or 2019.</span></span></td>
      </tr>
      <tr>
        <td width="247"><img src="box_useoffice_net.jpg" width="247" height="250" alt=""/></td>
        <td>
          <p class="style1">Before deploying this sample at your server, please take a look at:<br />
              <a href="https://www.sautinsoft.com/products/useoffice/examples/installation-on-server.php" target="_blank">How to install UseOffice .Net
          at Windows Servers.</a></p>             
        </td>
      </tr>
      <tr>
        <td> </td>
        <td></td>
      </tr>
      <tr>
        <td colspan="2" style="height: 168px"><div style="font-size: 12pt; font-family: Verdana"><p><b>Step 1:</b> Select a document (PDF, DOC, DOCX, RTF, HTML, XLS, XLSX, Text, CSV, PPT, PPTX):</p>
            <asp:FileUpload ID="uploadedDocument" runat="server" Width="805px" style="font-size: 12pt; font-family: Verdana" />
            <p><b>Step 2:</b> Specify the direction:  
            <asp:DropDownList ID="convDir" runat="server" Font-Names="Verdana" Font-Size="12pt"
                Width="173px" OnSelectedIndexChanged="convDir_SelectedIndexChanged" style="font-size: 12pt; font-family: Verdana">
            </asp:DropDownList></p>            
            <p><b>Step 3: </b>
            <asp:Button ID="convert" runat="server" Font-Names="Verdana" Font-Size="12pt" Text="Convert" OnClick="convert_Click" style="font-size: 12pt; font-family: Verdana; width: 150px; height: 35px;" /></p>
                        <p>
            <asp:HyperLink ID="fileMessage" runat="server">[fileMessage]</asp:HyperLink>
            <br />
            <asp:Label ID="resultMessage" runat="server" Font-Bold="True" Font-Names="Verdana" ForeColor="#FF8000" Width="1024px"></asp:Label></p>            
                                              </div></td>
      </tr>
    </table>
    <div>        
        <br />
         
                     </div>
    <div align="center"><br />
        <span style="font-size: 9pt; font-family: Verdana"><a href="https://www.sautinsoft.com" target="_blank">Copyright © SautinSoft 2002 - <script>document.write(new Date().getFullYear())</script></a> </span>
    </div>
</form>
</body>
</html> See Also
See Also