If Tables("B02订单报价").Current Is Nothing Then
Return
End If
Dim dr As DataRow = Tables("B02订单报价").Current.DataRow
If dr.RowState = DataRowState.Added Then \'如果是新增行,必须先保存才能插入文件
dr.Save()
End If
Dim dlg As New OpenFileDialog
dlg.Filter = "pdf文件|*.jpg"
If dlg.ShowDialog =DialogResult.OK Then
Dim fl As String = dlg.FileName
Dim ex As String = fl.SubString(fl.LastIndexOf(".") + 1) \'获取文件后缀名
ex = ex & "|" & CRCCheckFile(fl) \'将后缀名和文件的crc校验值组合成一个字符串
dr.SQLInsertFile("回执单",fl) \'插入文件
dr.SQLSetValue("回执CRC",ex) \'将文件的后缀名和crc校验值保存在信息列
dr.Save()
End If
打开文件代码:
Dim dr As DataRow = Tables("B02订单报价").Current.DataRow
Dim pts() As String = dr.SQLGetValue("回执CRC").Split("|")
Dim fl As String = ProjectPath & "Reports\\报价单(回执)." & pts(0) \'指定目标PDF文件
msgbox(fl)
msgbox(pts(1))
If FileSys.FileExists(fl) AndAlso CRCCheckFile(fl) = pts(1) Then \'如果本地存在同名文件且CRC校验值相同
msgbox(1) \'则直接使用本地文件
Else \'否则从数据库提取文件
msgbox(dr("回执CRC"))
If dr.SQLLoadFile("回执单",fl) = False Then \'如果提取文件失败
Messagebox.Show("附件提取失败,可能并不存在附件!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information)
Return
End If
End If
Dim Proc As New Process \'打开文件
Proc.File = fl
Proc.Start()
想请问老师,代码有问题吗?
如果有问题,哪里出了问题?(这是按照帮助文件里的代码写的)
如果没有问题,为什么报错?
另外,系统重启过了,也新建了项目试过了,bin文件夹也删了,都是这样的,不明白为什么?
请问老师,这是啥情况?