程序在局域网电脑上拍照照片存储到本地D盘,然后利用 api CopyFile函数又将照片复制到了局域网服务器上的D盘文件夹,据了解照片存储在SQL会占用很大空间且对数据库有影响,所以暂时就这样操作了。现在想实现一个功能 就是在局域网电脑上 做一个查询,利用图片的名字查询局域网服务器的照片且图片显示在窗体上,怎么弄 是不是用将图片的路径放到SQL数据库 怎么实现,请老师讲解,谢谢 最好写上代码
Dim sFile As String
sFile = "D:\image\" & lingjiandabiaohaoma & ".bmp"
Call Form2.ezVidCap1.SaveDIB(sFile)
copytupian = CopyFile("D:\image\" & lingjiandabiaohaoma & ".bmp", "\\192.168.1.306\test\" & lingjiandabiaohaoma & ".bmp", 0)
If copytupian = 0 Then
MsgBox "失败"
Else
MsgBox "成功"
End If
还有就是可能当前网络不好306上图片没有, 那可以能就报错了。 你给加几个判断如果文件不存在,输错了 给个提示 而不是报错 ,因为这个功能我想单独使用
追答If Dir("\\192.168.1.306\test\" & lingjiandabiaohaoma & ".bmp")="" Then
MsgBox "图片文件不存在!"
Else
Picture1.Picture = LoadPicture("\\192.168.1.306\test\" & lingjiandabiaohaoma & ".bmp")
End If
写完了才发现,IP地址中怎么可能有306的?不可能大于255的啊?随便举的例子吗?
恩 举个例子。 你就等于空 就报错 只是一种情况 ,比如我的文件号是11 ,你输入的是22,程序也报错啊。所以这种方式不好,你说呢 没法判断,我想还是把文件放到sql 数据判断有没有 多保险??我连接数据库将 我拍照的文件号 填到数据库中,然后我在查询的时候利用数据库的文件名调图片 这不是很好?。但是不知道怎么弄啊 ,你帮我想想
追答文件不存在和输错了,意思都是一样的啊,文件名输错了那自然这个文件就不存在了啊。
追问晕死 , 你的判断不对啊 你的只是在文件名是空的时候是错的, 只要不是空 ,就不报错明白了吗
追答只要文件是不存在的(不管是本地硬盘文件还是局域网文件),dir()函数的返回值就是空字符串。
比如说
如果 \\192.168.1.xxx\test\123.bmp 这个文件是确实存在的,
那么dir("\\192.168.1.xxx\test\123.bmp")的值是"123.bmp";
而如果 \\192.168.1.xxx\test\123.bmp 这个文件是不存在的,
那么dir("\\192.168.1.xxx\test\123.bmp")的值是""。
话说你确实试过了吗?
先谢谢, 如果查到了 怎么显示在窗体上,查不到怎么办, 说全一点,最好都带上注释