注册 登录
编程论坛 VFP论坛

请教各位大咖:这是什么原因?

dye_lio 发布于 2024-11-03 13:17, 365 次点击
用Filetostr()将BMP格式图片转化成字符串,存入SQL2008 R2版相关表格image字段中,在VFP9.0 中用Image控件的PictureVal显示出来.现在出现这个问题:在WIN10内部版本17134,无法正常显示,在WIN10内部版本19045中正常。我用的VFP 9.0 SP2中文汉化版。 请教吹老大及其它各位,这是什么原因。
10 回复
#2
kangss2024-11-03 14:31
1、图片字符串保存到SQL时,字符串尾部 + “Chr(0)”,试试
2、图片字符串保存到SQL时,字符串转成 base64 后再保存,读取出来后,再还原 base64 字符串还原一下,试试
#3
sych2024-11-03 15:42
PictureVal不是只支持XP吗?还是只支持WIN7?WIN10也支持?
#4
kangss2024-11-03 16:04
回复 3楼 sych
都支持,它是显示图片字节的
#5
dye_lio2024-11-03 17:59
回复 2楼 kangss
感谢回复。第2种方法试过了,不行。用第1种方法,文件尾部加入CHR(0)是用FWRITE(nFileHandle, cExpression [, nCharactersWritten])这个函数加入吗?
#6
kangss2024-11-03 19:32
回复 5楼 dye_lio
Filetostr() + chr(0)
#7
kangss2024-11-03 19:33
以下是引用dye_lio在2024-11-3 17:59:18的发言:

感谢回复。第2种方法试过了,不行。用第1种方法,文件尾部加入CHR(0)是用FWRITE(nFileHandle, cExpression [, nCharactersWritten])这个函数加入吗?


第二种方法一定行
#8
dye_lio2024-11-03 22:46
回复 7楼 kangss
感谢!用第2种方法,我是这样操作测试的,不知道对不对。存入前是strconv(filetostr(pic_name),13),显示:PictrueVal=strconv(sql_image,14)
#9
laowan0012024-11-04 07:48
回复 8楼 dye_lio
我用的就是这种方法,保存时对应的字段是varchar(max)类型,一切正常

#10
iswith2024-11-04 15:41
cast( file() as w)
#11
sxzjbb7 天前 10:12
在SQL里不用image字段
1