问题描述:

1.把pdf文件写入access
2.读出时用AcroPDF控件

问题解答:

使用流对象保存和显示图片与文件
打开vb6,新建工程。

添加两个按钮,一个image控件
注意:Access中的photo字段类型为OLE对象.
SqlServer中的photo字段类型为Image

'**
引用 Microsoft ActiveX Data Objects 2.5 Library
及以上版本
‘2.5版本以下不支持Stream对象
Dim iConcstr As String
Dim iConc As
ADODB.Connection

'保存文件到数据库中
Sub s_SaveFile()
Dim iStm As
ADODB.Stream
Dim iRe As ADODB.Recordset
Dim iConcstr As
String

'读取文件到内容
Set iStm = New ADODB.Stream
With iStm
.Type =
adTypeBinary '二进制模式
.Open
.LoadFromFile App.Path + "\test.jpg"
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

Sub
s_ReadFile()
Dim iStm As ADODB.Stream
Dim iRe As
ADODB.Recordset
'打开表
Set iRe = New
ADODB.Recordset
‘得到最新添加的纪录
iRe.Open "select top 1 * from img order by id
desc", iConc, adOpenKeyset, adLockReadOnly
'保存到文件
Set iStm = New
ADODB.Stream
With iStm
.Mode = adModeReadWrite
.Type =
adTypeBinary
.Open
.Write
iRe("photo")
‘这里注意了,如果当前目录下存在test1.jpg,会报一个文件写入失败的错误.
.SaveToFile App.Path
& "\test1.jpg"
End With

Image1.Picture =
LoadPicture(App.Path &
"\test1.jpg")
'关闭对象
iRe.Close
iStm.Close
End Sub

Private
Sub Command1_Click()
Call s_ReadFile
End Sub

Private Sub
Command2_Click()
Call s_SaveFile
End Sub

Private Sub
Form_Load()
'数据库连接字符串
iConcstr = "Provider=Microsoft.Jet.OLEDB.4.0;Persist
Security Info=False" & _
";Data
Source=F:\csdn_vb\database\保存图片\access图片\img.mdb"

‘下面的语句是连接sqlserver数据库的.
‘iConcstr
= "Provider=SQLOLEDB.1;Persist Security Info=True;" & _
‘ "User
ID=sa;Password=;Initial Catalog=test;Data Source=yang"

Set iConc =
New ADODB.Connection
iConc.Open iConcstr
End Sub

Private Sub
Form_Unload(Cancel As Integer)
iConc.Close
Set iConc = Nothing
End Sub

摘要:PDF文件可以当作图片来保存,参考:http://download.csdn.net/source/1467817

VB将PDF流写入ACCESS数据库,通过AcroPDF控件读出PDF流之实现的更多相关文章

  1. 如何使用免费PDF控件从PDF文档中提取文本和图片

             如何使用免费PDF控件从PDF文档中提取文本和图片 概要 现在手头的项目有一个需求是从PDF文档中提取文本和图片,我以前也使用过像iTextSharp, PDFBox 这些免费的PD ...

  2. VB高效导入Excel2003和Excel2007文件到MSHFlexGrid控件显示

    1.VB高效导入Excel2003和Excel2007文件到MSHFlexGrid控件显示 2.以前也有Excel导入通用功能,但速度有些慢一会把两种实现方式都提供出为参考对比. 一.原通用导入exc ...

  3. 如何显示二进制流的图片(利用img控件)

    之前在http://www.cnblogs.com/JsonZhangAA/p/5568575.html博文中是利用的image控件来显示的二进制流图片,我现在想的是能 通过普通的<img id ...

  4. Android控件进阶-自定义流式布局和热门标签控件

    技术:Android+java   概述 在日常的app使用中,我们会在android 的app中看见 热门标签等自动换行的流式布局,今天,我们就来看看如何 自定义一个类似热门标签那样的流式布局吧,类 ...

  5. SQLite数据库、ListView控件的使用

    android下数据库的创建(重点) 在Android平台上,集成了一个轻量级嵌入式关系型数据库—SQLite,SQLite3支持 NULL.INTEGER.REAL(浮点数字).TEXT(字符串文本 ...

  6. 使用数据库绑定ListBox控件

    1. The HTML Markup <div> <asp:ListBox ID="ListBox1" runat="server">& ...

  7. 在VB中动态执行VBS代码,可操控窗体控件

    通过执行一段VBS代码来操控窗体内的控件也可以使用AddObject方法添加自己的类,那么在动态VBS代码中也一样可以使用在增加程序扩展性或是有脚本化需求的时候,这个方法还是不错的. Option E ...

  8. C#与数据库有关的控件和属性

    BindingNavigator  数据记录导航 BindingSource 与数据源绑定, 常用属性:DataSource.DataMember 常用方法: DataGridView 以表格形式显示 ...

  9. PDF创建及动态转换控件程序包ActivePDF Portfolio

    ActivePDF Portfolio是将4个activePDF最优秀的服务器产品捆绑成一个价格适中的控件程序包.它提供了开发一个完整的服务器端的PDF解决方案所需的一切. 具体功能: activeP ...

随机推荐

  1. iBeacon

    iBeacon[1] 是苹果公司2013年9月发布的移动设备用OS(iOS7)上配备的新功能.其工作方式是,配备有 低功耗蓝牙(BLE)通信功能的设备使用BLE技术向周围发送自己特有的ID,接收到该I ...

  2. Android报错:The content of the adapter has changed...与Channel is unrecoverably broken and will be disposed的分析与解决办法

    在Android中adapter错误: The content of the adapter has changed but ListView did not receive a notificati ...

  3. Viewpager+Fragment出现空白页面的问题

    写了三个Fragment,一次点击跳转显示正常,如果从第一个直接跳转到第三个,第三个页面会出现空白界面. 问题找到了:原来动态获取数据页面数据不显示,页面显示空白,就是onCreateView每次都调 ...

  4. Jquery 模糊匹配ID

    [属性名称] 匹配包含给定属性的元素[att=value] 匹配包含给定属性的元素 (大小写区分)[att*=value] 模糊匹配[att!=value] 不能是这个值[att$=value] 结尾 ...

  5. CSS选择器介绍

    一.元素选择器 E{...} 二.属性选择器 E[attr]{...}:指定该CSS对具有attr的元素起作用: E[attr=value]{...}::指定该CSS对具有attr的值为value的元 ...

  6. 对JavaScript莫名的愤怒

    很多时候,我都察觉JavaScript有一中描述性语言的特性,为了实现他的功能,在浏览器中完美的发挥作用,他就像是一个巨型的工厂工程模式,外挂了很多API和功能集,他们试图用完美的方案去解释所有必须的 ...

  7. 使用ckplayer搭建rtmp视频直播应用

    视频直播才有的是RTMP协议进行视频实时流传输,在这里我们用到的软件都是 adobe 公司的一个是:Flash Media Server4 另一个是flash media live encoder 这 ...

  8. java中的synchronized关键字

    参考:http://www.cnblogs.com/devinzhang/archive/2011/12/14/2287675.html 多线程并发问题的根因: 在一个对象中有一个变量i=0,有两个线 ...

  9. selector的理解

    对于nio这块最近几年一直就有关注,知道非阻塞,线程池,缓冲池,io的模式select,poll,epoll,甚至epoll中的et,lt. 但是最近才有时间实际看了看netty的源码,才发现原来se ...

  10. C# Winform程序打包

    1.新建一个安装项目,起名“Setup3” 2.点击应用程序文件夹 3.在右侧右键点击添加文件 注意:是Debug文件夹下所有程序 接着在添加你的应用程序项目的时候,多添加一个msiexec.exe进 ...