online大兄征集经验贴,我虽是个大菜鸟,但这几天搞这个方面的问题已经头大了,我想让以后遇见这类问题的人们都快些明白问题所在,谢谢...问题是这样的:
要求在Form1 中能够新建Word文档,编辑过后存入数据库;
在Form2 中能够将数据库中的文档按一定要求提取出来并连接显示到一个新的Word文档中,当然打印成文那是后话了我最初想利用OLE控件实现这一功能,查到online大哥贴文:
保存文件到数据库中
Sub s_SaveFile()
Dim iStm As ADODB.Stream
Dim iRe As ADODB.Recordset
Dim iConcStr As String
'数据库连接字符串
iConcStr = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False" & _
";Data Source=F:\csdn_vb\database\保存图片\img.mdb"
Dim iConc As ADODB.Connection
Set iConc = New ADODB.Connection
iConc.Open iConcStr
'读取文件到内容
Set iStm = New ADODB.Stream
With iStm
.Type = adTypeBinary '二进制模式
.Open
.LoadFromFile App.Path + "\com.doc"
End With
'打开保存文件的表
Set iRe = New ADODB.Recordset
With iRe
.Open "select * from img", iConc, 1, 3
.AddNew '新增一条记录
.Fields("photo") = iStm.Read
.Update
End With
'完成后关闭对象
iRe.Close
iStm.Close
End Sub
要求在Form1 中能够新建Word文档,编辑过后存入数据库;
在Form2 中能够将数据库中的文档按一定要求提取出来并连接显示到一个新的Word文档中,当然打印成文那是后话了我最初想利用OLE控件实现这一功能,查到online大哥贴文:
保存文件到数据库中
Sub s_SaveFile()
Dim iStm As ADODB.Stream
Dim iRe As ADODB.Recordset
Dim iConcStr As String
'数据库连接字符串
iConcStr = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False" & _
";Data Source=F:\csdn_vb\database\保存图片\img.mdb"
Dim iConc As ADODB.Connection
Set iConc = New ADODB.Connection
iConc.Open iConcStr
'读取文件到内容
Set iStm = New ADODB.Stream
With iStm
.Type = adTypeBinary '二进制模式
.Open
.LoadFromFile App.Path + "\com.doc"
End With
'打开保存文件的表
Set iRe = New ADODB.Recordset
With iRe
.Open "select * from img", iConc, 1, 3
.AddNew '新增一条记录
.Fields("photo") = iStm.Read
.Update
End With
'完成后关闭对象
iRe.Close
iStm.Close
End Sub
都怪小生驽钝,没完全理解代码,
因为当时一心想的就是完全用OLE进行存储和读取
现在有些懂了,解释一下,
s_SaveFile其实实现的是从一个存在的文档读取数据存入数据库,
而通过OLE读取出来的文档是带有OLE文件头的,存入数据库后,如果想再从数据库中读取出来,就还需要用OLE实现,它是不能读成可以打开的Word文档的(不知观点是否正确),
当时我在这里转了一天零十四个小时....
最后在CSDN里找到了一点信息,才恍然大悟,
一切又重头再来......
http://community.csdn.net/Expert/topic/3040/3040090.xml?temp=.2912256
http://community.csdn.net/Expert/topic/3170/3170327.xml?temp=.7352869
http://community.csdn.net/Expert/topic/3206/3206839.xml?temp=5.350894E-02
http://community.csdn.net/Expert/topic/3221/3221304.xml?temp=.2025873
这里记录了我的成长历程,我也想记录一下,请版主允许......
直接调用打开文档显得太难看(一点...蹦出个大Word,Client还不知道是不是需要自己保存多难看),然后我找到了关于使用API的setparent方法,说实话,以我现在的功力,看这些API的东东还很困难,我还要继续去研读啦,
大家都发表发表意见,
提供一些解决这一类问题的方法
直接调用打开文档显得太难看(一点...蹦出个大Word,Client还不知道是不是需要自己保存多难看),然后我找到了关于使用API的setparent方法,说实话,以我现在的功力,看这些API的东东还很困难,我还要继续去研读啦,
============================
参考:
http://community.csdn.net/Expert/topic/3217/3217721.xml?temp=.2717249