如何用VB.net直接向ACSSES和SQL SERVER读写图像?

fheb2003 2003-05-14 11:24:40
我是初学者,请详细些!
...全文
101 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
Montaque 2003-05-15
  • 打赏
  • 举报
回复
http://www.csdn.net/develop/read_article.asp?id=14963
Montaque 2003-05-15
  • 打赏
  • 举报
回复
http://expert.csdn.net/Expert/TopicView1.asp?id=1521284 101例子中有
我也写了一片:
http://www.csdn.net/develop/read_article.asp?id=14963
谜斯特段 2003-05-15
  • 打赏
  • 举报
回复
我是转抄坛子中一位高手的内容,是谁我忘了(不好意思):

Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim stm As ADODB.Stream

Private Sub SavePictureToDB(cn As ADODB.Connection)
'将BMP图片存入数据库
On Error GoTo EH
Set stm = New ADODB.Stream
rs.Open "select ImagePath,ImageValue from tbl_Image", cn, adOpenKeyset, adLockOptimistic
CommonDialog1.ShowOpen
Text1.Text = CommonDialog1.FileName

With stm
.Type = adTypeBinary
.Open
.LoadFromFile CommonDialog1.FileName
End With
With rs
.AddNew
.Fields("ImagePath") = Text1.Text
.Fields("ImageValue") = stm.Read
.Update
End With
rs.Close
Set rs = Nothing
Exit Sub
EH: MsgBox Err.Description, vbInformation, "Error"
End Sub


Private Sub LoadPictureFromDB(cn As ADODB.Connection)
'载数据库中读出BMP图片
On Error GoTo EH
Dim strTemp As String
Set stm = New ADODB.Stream
strTemp = "c:\temp.tmp" '临时文件,用来保存读出的图片
rs.Open "select ImagePath,ImageValue from tbl_image", cn, , , adCmdText
With stm
.Type = adTypeBinary
.Open
.Write rs("ImageValue")
.SaveToFile strTemp, adSaveCreateOverWrite
.Close
End With
Image1.Picture = LoadPicture(strTemp)
Set stm = Nothing
rs.Close
Set rs = Nothing
Exit Sub
EH: MsgBox Err.Description, vbInformation, "Error"
End Sub


image类型
用picture显示
'以下两个函数是从数据库中读出图片的核心程序

Public Function GetImage(Optional Filename As String) As Variant
On Error GoTo ProcErr

Dim objRS As adodb.Recordset
Dim strSQL As String
Dim Chunk() As Byte

Set objRS = New adodb.Recordset

'strSQL = "select thumb from tblpictures where idpict='" & tblID(ThumbIndex) & "'"
strSQL = "select thumb from tblpictures where idpict= " & thumb
'strSQL = "select thumb from tblpictures where idpict='387'"
'db.Execute strSQL
objRS.Open strSQL, db, adOpenForwardOnly, adLockReadOnly

If objRS.BOF And objRS.EOF Then
GetImage = 0
GoTo ProcExit
ElseIf IsNull(objRS.Fields(0)) Then
'ErrNumber = 1001
'ErrDesc = "字段为空"
GoTo ProcExit
End If

Chunk() = objRS.Fields(0).GetChunk(objRS.Fields(0).ActualSize)
Set GetImage = Chunk2Image(Chunk(), Filename)

ProcExit:
On Error Resume Next
'objRS.Close
' Chunk() = objRS.Fields(0).GetChunk(0)
Set GetImage = Chunk2Image(Chunk(), Filename)
' Set objRS = Nothing

Exit Function

ProcErr:
GetImage = 0
Resume ProcExit
End Function


Private Function Chunk2Image(Chunk() As Byte, Optional Filename As String) As Variant
On Error GoTo ProcErr
Dim KeepFile As Boolean
Dim Datafile As Integer

KeepFile = True
If Trim(Filename) = "" Then
Filename = "c:\tmpxxdb.fil"
KeepFile = False
End If

Datafile = FreeFile
Open Filename For Binary Access Write As Datafile
Put Datafile, , Chunk()
Close Datafile

ProcExit:
Set Chunk2Image = LoadPicture(Filename)
On Error Resume Next
' If Not KeepFile Then Kill filename
Exit Function

ProcErr:
On Error Resume Next
Kill Filename
Chunk2Image = 0
End Function
GisTool4.0说明: 一、功能说明: MAPGIS6.5实用工具,集成若干MAPGIS6.5不具有的实用功能,简单易用。 本软件有以下特色功能: 1、精确制图功能(类似于AutoCAD)。画线、移动、复制图元时,都可以输入距离和角度,还可以捕捉端点、垂足等,F2为正交开关。 2、支持鼠标滚轮窗口缩放操作。向前滚动图形放大,向后滚动图形缩小,按下滚轮图形平移。 3、格式刷功能。点、线、区都可以运用格式刷进行修改和编辑。 4、快速制表功能。利用画水平线、竖直线以及捕足功能,输入距离移动、复制、拉伸线条功能,可以快速绘制各种表格。 5、多种测量功能。测量面积不需要造区,且有多种简单快速的方法,带图上面积与实际面积转换的功能。可以直接测量线图元的方位角。 6、线段拉伸功能。能够将线图元进行拉伸操作,所有选中的线节点将同时拉伸,同时可以输入距离和角度。 7、属性编辑功能。采用电子表格的方式对图元属性进编辑,与excel、acsses能够直接互相复制、粘贴,并且能够实现图形联动、属性联动的操作。 8、条件删除图元功能。可以根据图元ID能及图元属性有条件地对图元批量删除,还可以自动删除重叠图元。 9、整图栽剪功能。不需要生成单独的栽剪框文件,只要选择工程文件中任一条封闭的线就会自动对工程中的所有可见文件进行栽剪,栽剪后的文件自动保存在新建的目录中,每次栽剪都会生成一个新的目录,栽剪后的文件名与原文件名一致。 10、CAD转MapGis。本功能可以将AutoCAD格式的图形文件转换成MapGis格式的图形文件,能将CAD中的充填图案直接转换成MapGis中的区图元,而且能将CAD中的内部块、多行文本直接转出,不需要在CAD中分解。完全按照CAD中的图层分层转出所有可见图元,颜色、线型自动转换,不需要对照表,所有操作全自动,速度快,是目前比较完美的转换程序。可打开安装目录中的 CADdata.dxf 文件试用。 11、Excel转MapGis。本功能可以将 Microsoft Office Excel 电子表格文件中的各种表格直接转换成MapGis格式的点、线、面文件。可打开安装目录中的 bookdata.xls 文件试用。 12、自动绘制钻孔柱状图。本功能可以将保存在 Microsoft Office Excel 电子表格文件中的钻孔数据绘制成钻孔柱状图,数据输入格式请参考软件安装目录中的 zkdata.xls,也可打开此文件试用。 13、自动绘等值线、等高线。将测量点数据录入到文本文件或电子表格中,然后打开点数据文件便可自动绘制等值线、等高线。 14、等值线、等高线加密。在绘制等值线、等高线时,可以先画计曲线,然后利用此功能在计曲线之间自动生成首曲线,可节省大量的绘图时间。 15、坐标转换功能。经纬度坐标、六度带坐标、三度带坐标都可以批量相互转换。 16、自动标注功能。等高线、等值线其值可以根据其线的方向自动调整角度标注。 17、坐标成图功能。可以根据坐标及比例尺生成点、生成线,可以在图上采集实际坐标,批量导入文本注释等。 18、图例排列功能。输入指定的间距,点或图例都可以进行横向、纵向的等距离自动排列。 19、显示顺序功能。点、线、区都可以调整其显示顺序,即图元置顶、图元置底。 20、常用注释功能。可以将常用的文本注释、子图等事先设置好,使用时直接从工具栏中调出。 21、图元搜索功能。可以根据图元的属性、颜色、注释、子图号在图面上将符合条件的图元逐个查找出来。 22、属性提取功能。输入属性提取条件,能够将点、线、区中的符合条件的图元提取到新的文件中。 23、储量计算功能。用来计算分段平均品位、剖面面积、体积公式判别、块段体积、单矿石类型体积等。 24、线头沿边处理。所有线头自动靠近线上(端点自动落到线上,用于拓朴前期处理)。 25、自动节点平差。周围线头自动相聚于一点。(端点自动相聚于一点,用于拓朴前期处理)。 26、编辑属性结构。用电子表格的方式编辑属性结构,整个文件的属性结构可以任意复制和粘贴。 注:拉框选点时,从左到右拉框,需要包住整个点才能选中;从右到左拉框,只要框压住点的任何部位都可选中(与AutoCAD类似)。 二、安装说明: 1、安装前,请先关闭XP的数据执行保护功能(我的电脑→右键→属性→高级→启动和故障恢复→设置→编辑→optin改为alwaysoff→保存→重启电脑),并重新启动计算机。 2、安装MapGis65,需要原版光盘提供的安装程序,版本号为021010,日期是2002-10-25,其它版本的可能不太好用。 3、先
软件简介: MAPGIS6.5实用工具,集成若干MAPGIS6.5不具有的实用功能,简单易用。 普通版有以下特色功能: 1、精确制图功能(类似于AutoCAD)。画线、移动、复制图元时,都可以输入距离和角度,还可以捕捉端点(按SHIFT)、中点(按CTRL)、交点(按SPACE)、垂足(按ALT)等,F2为正交开关,CTRL+D为线段单选开关。 2、滚轮缩放功能。向前滚动图形放大,向后滚动图形缩小,按下滚轮图形平移。 3、格式刷功能。点、线、区都可以运用格式刷进行修改和编辑。 4、查询图元功能。自动查找文本、属性、子图、颜色等。 5、参数拾取功能。拾取点、线、区参数作为当前编辑参数。 6、等距排列功能。文本或图例都可以进行横向、纵向的等距离自动排列。 7、快速制表功能。利用画水平线、竖直线以及捕足功能,输入距离移动、复制、拉伸线条功能,可以快速绘制各种表格。 8、测量距离功能。测量直线段或多段折线的距离或长度,可以使用捕捉功能。 9、测量面积功能。测量面积不需要造区,按顺序点击拐点即可,也可选择一条闭合的线段,即可测量面积。可以直接测量线图元的方位角。 10、测量角度功能。选择直线段可以测量该线段的的方位角及象限角。 11、面积换算功能。直接将测量出来的图上面积转换为实际面积。 12、面积标注功能。点击某块区域,自动标注该区域的面积,可带引线标注。 13、坐标标注功能。在图上单击某个点,即可标出该点的图上坐标或实际坐标值,可带引线标注。 14、比例造线功能。确定比例尺后,输入以米为单位的数据时,可以自动转换为图上距离,不需要人工换算,同时可以输入距离和角度。 15、线段拉伸功能。能够将线段进行拉伸,所有选中的线节点将同时拉伸,同时可以输入距离和角度。 16、线段切除功能。互相相交的线段,选择其中一条,可以切除另外一条线段在该线段两侧的部分,也可以切除夹在两条线段中间的部分。 17、线段交会功能。选择两条不平行的线段,可以使其相交于某一点,已经相交的两条线段,可以切除交点任意一侧的部分。 18、线段炸开功能。将多段线在节点处分开,生成若干条线段。 19、线段旋转功能。输入一个角度值,并确定一个旋转基点,即可精确旋转一条线段。 20、改线长度功能。选项择一条线段,可以直接修改该线段的长度值。 21、属性编辑功能。采用电子表格的方式对图元属性进编辑,与excel、acsses能够直接互相复制、粘贴,并且能够实现图形联动、属性联动等操作。 22、属性提取功能。输入属性提取条件,能够将点、线、区中符合条件的图元提取到新的文件中。 23、属性标注功能。选择某个字段,可以将该字段的属性值标注在图元的相应位置上。 24、属性动态显示。选择某个点线区文件,可以将某个字段或所有字段的属性值,随着鼠标的移动,适时动态地显示出来。 25、ID关联功能。将点线区相应位置上的图元ID修改为同一属性值,排序后能够将点线区对应的属性值进行批量拷贝。 26、删除指定图元。可以根据图元ID能及图元属性有条件地对图元批量删除。 27、删除重叠图元。自动搜索互相重叠的图元,删除多余的重叠图元。 28、匹配图例参数。选择某个图例,可以将该图例的参数及属性值全部赋给相应的图元。 29、自动生成样槽。选择两条节点数相同的平行线段,能够自动生成黑白相间的样槽。 30、批量替换注释。输入若干条需要替换的注释,可以一次性进行替换,并自动保存替换数据,下次或打开另外一张图时仍可使用,不需要重新输入。 31、整图栽剪功能。不需要生成单独的栽剪框文件,只要选择工程文件中任一条封闭的线就会自动对工程中的所有可见文件进行栽剪,栽剪后的文件自动保存在新建的目录中,每次栽剪都会生成一个新的目录,栽剪后的文件名与原文件名一致。 32、CAD转MapGis。本功能可以将AutoCAD格式的图形文件转换成MapGis格式的图形文件,能将CAD中的充填图案直接转换成MapGis中的区图元,而且能将CAD中的内部块、多行文本直接转出,不需要在CAD中分解。完全按照CAD中的图层分层转出所有可见图元,颜色、线型自动转换,不需要对照表,所有操作全自动。并能够将CASS中生成的地物编码转为MapGis图元属性。 33、Excel转MapGis。本功能可以将 Microsoft Office Excel 电子表格文件中的各种表格直接转换成MapGis格式的点、线、面文件。 34、自动画柱状图。本功能可以将保存在 Microsoft Office Excel 电子表格文件中的钻孔数据绘制成钻孔柱

16,721

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧