首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何从数据库中读取CLongBinary字段并将其写入CFile对象?

如何从数据库中读取CLongBinary字段并将其写入CFile对象?
EN

Stack Overflow用户
提问于 2013-09-04 17:20:59
回答 1查看 511关注 0票数 2

我正在使用CRecordset从我的SQL Server获取数据。一个表存储二进制文件(pdf、odt等)。我的VisualStudio将列映射到CLongBinary字段。

如何从CLongBinary字段读取和打开文件?

我正在使用一些古老的MFC4.2版本,VisualStudio 6.0

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-09-04 18:49:51

做这样的事情。这只会给你一个概念。我还没有测试代码。

代码语言:javascript
复制
CLongBinary myfield ;

... retrive myfield from database here


BYTE *dataptr = (BYTE*)GlobalLock(myfield.m_hData) ;

// now dataptr points to your raw data, and myfield.m_dwDataLength is the length of that data

CString tempname = ... create temporary filename somewhere
CFile myfile ;
myfile.Open(tempfilename, CFile::modeCreate|CFile::modeWrite);
myfile.Write(dataptr, myfield.m_dwDataLength) ,
myfile.Close() ;
GlobalUnlock(myfield.m_hData) ;

ShellExecute(NULL, _T("open"), tempfilename, NULL, NULL, SW_SHOW) ;
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18609953

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档