以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]代码在试用版正常,但是在开发版报错 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=114688) |
-- 作者:5159518 -- 发布时间:2018/2/13 14:07:00 -- [求助]代码在试用版正常,但是在开发版报错 If e.name = "PDFname" If Vars("PDFname") <> "" Then If Forms("PDF reader").Opened = False Then Forms("PDF reader").open() End If Dim tab As WinForm.TabControl = Forms("PDF reader").Controls("TabControl1") \'声明页面集合 Dim pdf As new AxFoxitReaderSDKProLib.AxFoxitReaderSDK \'声明PDF的SDK pdf.Dock = System.Windows.Forms.DockStyle.Fill \'定义打开的PDF文件填充范围为页面集合区域) Dim finfo As new FileInfo(Vars("PDFname")) \'声明打开文件的"路径+文件名" Dim name = finfo.Name.Replace(finfo.Extension, "") \'声明打开文件的文件名 Dim fn = finfo.Name \'声明打开文件的文件名,包含扩展名(修改) Dim dx As DataRow = DataTables("资料").Find("文件名 = \'" & fn & "\'") Dim xn As String = dx("显示名") MessageBox.Show("1") \'重命名初始空白页面,查找已打开文件并定位,添加新页面<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< For i As Integer = 0 To tab.TabPages.count - 1 MessageBox.Show("2") If tab.TabPages(i).name = "page1" Then \'如果找到初始空白页面,则将该页面的页面名称及页面标题重定义为需打开的文件名 tab.tabpages(i).name = xn tab.tabpages(i).text = xn Dim pb = tab.BaseControl MessageBox.Show(xn) MessageBox.Show(name) pb.TabPages(xn).Controls.add(pdf) MessageBox.Show("3") tab.SelectedPage = tab.TabPages(xn) pdf.openfile(Vars("PDFname"),"") \'打开PDF文件 MessageBox.Show("4") pdf.ShowTitleBar(False) \'重定义工具栏按钮<<<<<<<<<<<<<<<<<<<<< For z As Integer = 0 To 11 pdf.ShowToolbarButton(z,False) Next pdf.ShowToolbarButton(26,False) pdf.ShowToolbarButton(30,False) pdf.ShowToolbarButton(31,False) \'重定义工具栏按钮结束>>>>>>>>>>>>>>>>>>>>>> Exit For MessageBox.Show("5") Else If tab.TabPages(i).name = xn Then \'如果查找到同名已打开文件,则定位到该页面 tab.SelectedIndex = i Exit For MessageBox.Show("6") Else If i = tab.TabPages.count - 1 Then \'如果查找完所有页面尚未找到空白页面,并且也未找到同名已打开文件,则添加新页面并以需打开的文件名定义新页面的页面名称及页面标题 tab.TabPages.Add(xn, xn) Dim pb = tab.BaseControl PB.TabPages(xn).Controls.add(pdf) tab.SelectedPage = tab.TabPages(xn) pdf.openfile(Vars("PDFname"),"") \'打开PDF文件 pdf.ShowTitleBar(False) MessageBox.Show("7") \'重定义工具栏按钮<<<<<<<<<<<<<<<<<<<<< For z As Integer = 0 To 11 pdf.ShowToolbarButton(z,False) Next pdf.ShowToolbarButton(26,False) pdf.ShowToolbarButton(30,False) pdf.ShowToolbarButton(31,False) \'重定义工具栏按钮结束>>>>>>>>>>>>>>>>>>>>>> End If Next MessageBox.Show("8") \'重命名初始空白初始页面,查找已打开文件并定位,添加新页面结束>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> \'为页面集合添加关闭按钮<<<<<<<<<<<<<<<<< Dim t As C1Command.C1DockingTab = Forms("PDF reader").Controls("TabControl1").BaseControl t.CanCloseTabs = 1 \'显示关闭按钮 t.CloseBox = 1 \'关闭按钮显示位置为页面标签 \'关闭按钮添加结束>>>>>>>>>>>>>>> End If End If ![]() 问题出在 MessageBox.Show(name) pb.TabPages(xn).Controls.add(pdf) MessageBox.Show("3") 这一句代码,不知道咋回事,在试用版中是可以的,但是在开发版中就报错 |
-- 作者:有点甜 -- 发布时间:2018/2/13 14:22:00 -- 应该和你这段代码无关吧?是在同一台电脑吗?
1、你确定是你那段代码造成的?重新注册你的控件。然后单独做一个项目做一个简易例子测试。
2、试试修复tts http://www.baidu.com/baidu?wd=win7+tts&tn=monline_4_dg |
-- 作者:5159518 -- 发布时间:2018/2/13 14:44:00 -- 谢谢版主,解决了,dll文件是由ocx文件转换过来的,所以即使注册了dll文件依然无效,后来重新注册了ocx文件解决问题了
|