以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  关于提示已经添加具有相同键的项  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=161367)

--  作者:lisangyu
--  发布时间:2021/3/15 12:31:00
--  关于提示已经添加具有相同键的项

图片点击可在新窗口打开查看此主题相关图片如下:qq截图20210315122025.jpg
图片点击可在新窗口打开查看

蓝总:我是将某个xls后缀的excel文件转成mhtml文件并在webbroser里打开就报这个错误,但是其他的excel都正常打开,这个报错究竟是什么原理?我在sql数据库里查看这个文件名对应的记录主键值是唯一的

--  作者:有点蓝
--  发布时间:2021/3/15 13:34:00
--  
上面提示的出错事件代码发上来
--  作者:lisangyu
--  发布时间:2021/3/15 13:53:00
--  
Dim webCtl As WinForm.WebBrowser = e.Form.Controls("WebBrowser1")
Dim webb = webCtl.BaseControl
\'webb.ScrollBarsEnabled = False \'禁止滚动条
webb.ScriptErrorsSuppressed = True  \'禁止js错误提示
webb.IsWebBrowserContextMenuEnabled = False \'禁止快捷菜单
webb.WebBrowserShortcutsEnabled = False \'禁止快捷键
\'\'\'\'\'\'禁用鼠标右键

If Tables("主窗口_table1").Current IsNot Nothing Then
    Dim ftp1 As new ftpclient
    Tables("FTP配置信息").Position =0 \'移动到第一行,以免出错
    ftp1.Host=trim(Tables("FTP配置信息").current("地址"))
    ftp1.Account = trim(Tables("FTP配置信息").current("账号"))
    ftp1.password = trim(Tables("FTP配置信息").current("密码"))
    Dim lj As String = Tables("主窗口_table1").Current("路径")
    Dim fp As String = lj
    Dim wjm As String = Tables("主窗口_table1").Current("文件名")
    Dim hz As String = Tables("主窗口_table1").current("后缀")
    
    If ftp1.Download(fp,projectpath & "RemoteFiles\\" & wjm) = True Then
        If hz = "doc" Or hz =  "docx" Then
            Dim tmp As String  =  projectpath & "RemoteFiles\\" & wjm  \'\'\'下载的文件路径
            Dim mht As String =  projectpath & "RemoteFiles\\" & wjm & ".mhtml"   \'\'\'\'转换为MHTML格式的文件路径
            Dim doc As New Spire.Doc.Document
            doc.LoadFromFile(tmp)
            \'保存为Png格式的图片
            Dim images() As Image = doc.SaveToImages(Spire.Doc.Documents.ImageType.Metafile)
            Dim i As Integer = 0
            Do While (i < images.Length)
                Dim outputfile As String = String.Format(projectpath & "RemoteFiles\\" & "image-{0}.png", i)
                images(i).Save(outputfile, System.Drawing.Imaging.ImageFormat.Png)
                i = (i + 1)
            Loop
            \'\'\'\'\'\'==========
            vars("p") = 0
            Dim s As String =  projectpath  & "RemoteFiles\\" & "image-"  & vars("p") & ".png "
            e.Form.Controls("WebBrowser1").Address = s \'\'\'\'\'为打开生成的照片
            
            \'\'\'\'\'===============================打开word
        ElseIf hz = "xls" Or hz =  "xlsx" Then
            Dim tmp As String  = projectpath & "RemoteFiles\\" & wjm
            Dim mht As String = projectpath & "RemoteFiles\\" & wjm & ".mhtml"
            Dim rpt As New XLS.Book(tmp)
            rpt.Build()
            \'rpt.Sheets(0).Rows(0).Visible = False \'隐藏第一个空行
            rpt.SaveToMHT(mht)
            e.Form.Controls("WebBrowser1").Address = mht
            \'\'\'\'===============================打开excel
        ElseIf hz = "PDF" Or hz = "jpg" Or hz = "png" Or hz = "gif" Or hz = "bmp" Or hz =  "jpeg"
            Dim tmp As String  = projectpath & "RemoteFiles\\" & wjm
            e.Form.Controls("WebBrowser1").Address = tmp
            
            \'\'\'\'=============================打开PDF,照片
        Else
            Messagebox.show("暂不支持该格式文件,请下载到本地打开!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
            
        End If
    Else
        e.Form.text = "浏览器   打开失败...."
    End If
End If

我打开的是excel文件,后缀是xls

--  作者:有点蓝
--  发布时间:2021/3/15 13:59:00
--  
调试看看
        ElseIf hz = "xls" Or hz =  "xlsx" Then
            Dim tmp As String  = projectpath & "RemoteFiles\\" & wjm
            Dim mht As String = projectpath & "RemoteFiles\\" & wjm & ".mhtml"
msgbox(mht )
            Dim rpt As New XLS.Book(tmp)
            rpt.Build()
            \'rpt.Sheets(0).Rows(0).Visible = False \'隐藏第一个空行
            rpt.SaveToMHT(mht)
msgbox(1)
            e.Form.Controls("WebBrowser1").Address = mht
msgbox(2)

--  作者:lisangyu
--  发布时间:2021/3/15 14:52:00
--  

图片点击可在新窗口打开查看此主题相关图片如下:1.jpg
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:2.jpg
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:3.jpg
图片点击可在新窗口打开查看

文件excel下载了, 但是没有转化成mhtml,所以最后一个报错是没找到文件

,可能是文件本身有问题!蓝总辛苦
[此贴子已经被作者于2021/3/15 14:55:32编辑过]

--  作者:有点蓝
--  发布时间:2021/3/15 15:01:00
--  
把程序设置为“以管理员身份运行此程序”

试试保存为其它名称的xls文件有没有问题
试试保存其它简单的路径有没有问题,比如:d:\\a.mhtml