Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/29.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 在vb.net中打开和保存word文档-关闭可见性时出错_Asp.net_Vb.net_Ms Word - Fatal编程技术网

Asp.net 在vb.net中打开和保存word文档-关闭可见性时出错

Asp.net 在vb.net中打开和保存word文档-关闭可见性时出错,asp.net,vb.net,ms-word,Asp.net,Vb.net,Ms Word,我正在打开一个word文档并用以下代码将其保存为html。如果我设置objWord.Visible=False,我会得到一个错误:HRESULT:0x800A1098中的异常,我认为这表明没有要打开的内容。 如果我设置objWord.Visible=True,代码将正常运行,但我不希望最终用户看到word的运行。非常感谢您的帮助 提前谢谢 Protected Sub btnUpload_Click(ByVal sender As Object, ByVal e As EventArgs)

我正在打开一个word文档并用以下代码将其保存为html。如果我设置objWord.Visible=False,我会得到一个错误:HRESULT:0x800A1098中的异常,我认为这表明没有要打开的内容。 如果我设置objWord.Visible=True,代码将正常运行,但我不希望最终用户看到word的运行。非常感谢您的帮助

提前谢谢

Protected Sub btnUpload_Click(ByVal sender As Object, ByVal e As EventArgs)
    Dim objWord As Microsoft.Office.Interop.Word.ApplicationClass = New ApplicationClass()
    If Not (fUpload.HasFile) Then
        lblMessage.Text = "Please choose file to upload"
    Else
        Try
            Dim strFileName As String = fUpload.FileName
            Dim strSep As String() = fUpload.FileName.Split("."c)
            Dim arrLength As Integer = strSep.Length - 1
            Dim strExt As String = strSep(arrLength).ToString().ToUpper()
            'Save the uploaded file to the folder

            strPathToUpload = Server.MapPath("Uploaded")
            strPathToConvert = Server.MapPath("WordToHtml")
            Dim FileName As Object = (strPathToUpload & "\") + fUpload.FileName

            Dim FileToSave As Object = (strPathToConvert & "\") + Left(fUpload.FileName, Len(fUpload.FileName) - 4) & ".htm"
            If strExt.ToUpper().Equals("DOC") Then
                fUpload.SaveAs((strPathToUpload & "\") + fUpload.FileName)
                lblMessage.Text = "File uploaded successfully"

                'open file in word
                objWord.Documents.Open(FileName, missing, [readOnly], missing, missing, missing, missing, missing, missing, missing, missing, isVisible)

                objWord.Visible = False 'error occures here if False

                Dim oDoc As Microsoft.Office.Interop.Word.Document = objWord.ActiveDocument

                If oDoc.Application.Version = "12.0" Then ' Word 2007 version
                    oDoc.SaveAs2(FileToSave, fltDocFormat, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing)
                Else ' word 2003 version
                    oDoc.SaveAs(FileToSave, fltDocFormat, missing, missing, missing, missing, missing, missing, missing, missing, missing)
                End If

            Else
                lblMessage.Text = "Invalid file selected!"
            End If

            'Close/quit word 
            objWord.Quit(missing, missing, missing)
        Catch ex As Exception
            objWord.Quit(missing, missing, missing)
            Response.Write(ex.Message)
        End Try
    End If
End Sub
你可以试试

Dim objWord As Microsoft.Office.Interop.Word.ApplicationClass = CreateoBject("Word.Application")
一般来说,除非已经加载了word,否则在以这种方式创建word自动化对象时,我从来不知道这些对象是可见的


另外,您似乎正在向DOCUMENTS.OPEN函数传递一个ISVISIBLE参数,但我无法判断它的值是什么。如果为FALSE,则应将文档加载到一个隐藏窗口中,即使Word已打开,用户也无法看到该窗口。

在打开文档之前,您是否尝试将Visible设置为FALSE?感谢drventure-是ISVISIBLE导致了此问题。我在本地主机上运行它,但当我下载到doscontasp.net时,我发现服务器必须安装word,而他们没有。是否有解决方法,或者无法将word文档保存为html?