Set conn=Server.CreateObject("ADODB.Connection")
on error resume nextconn.open "DRIVER={SQL Server};SERVER=(local);UID=sa;PWD=password;DATABASE=database"if err then
response.write "系统升级中,暂时无法与数据库建立连接"
response.end
end if
set rec=server.createobject("ADODB.recordset") strsql="select image from movie where movieid='" & request("movieid")&"'"rec.open strsql,conn,1,1 Response.ContentType = "image/*" Response.BinaryWrite rec("image").getChunk(7500000) rec.close set rec=nothing

解决方案 »

  1.   

    // VC6 读取sql server 图片
    // 使用了class CADORecordset
    CString strSql = "select layerimage from EMAP_LAYER where imageid=1";
    CADORecordset recordset;
    if (recordset.Open(m_adoDb.GetActiveConnection(),strSql)
     && !recordset.IsEof())
    {
    CADOFieldInfo fldInfo;
    recordset.GetFieldInfo("layerimage",&fldInfo);
    char *pBmpBuf = new char [fldInfo.m_lSize];
    recordset.GetChunk("layerimage",pBmpBuf);
    recordset.Close(); CClientDC dc(this);
    BITMAPFILEHEADER bmfh;
    memcpy(&bmfh,pBmpBuf,sizeof(BITMAPFILEHEADER));
    BITMAPINFO *pbmi = (BITMAPINFO *)(pBmpBuf + sizeof(BITMAPFILEHEADER));
    BITMAPINFOHEADER *pbmih = (BITMAPINFOHEADER *)pbmi;
    m_hBitmap = ::CreateDIBitmap( // 构造DDB位图
    dc, // handle to DC
    pbmih, // bitmap data
    CBM_INIT, // initialization option
    (char *)(pBmpBuf+bmfh.bfOffBits), // initialization data
    pbmi, // color-format data
    DIB_RGB_COLORS ); // color-data usage delete [] pBmpBuf;
    }//显示图片很简单,用 BitBlt()就可以,参考msdn
      

  2.   

    附加说明:m_hBitmap 就是要显示的图像的句柄
      

  3.   

    到愚弟站上看看,可能有你想要的,图文并茂,不便与考过来,
    麻烦自己去看吧,如果有问题,请通知我。
    http://www.kaer.com.cn/default.aspx
      

  4.   

    是个ACCSES的例子,不过通用嘛,平你的悟性啦
      

  5.   

    到愚弟站上看看,可能有你想要的,图文并茂,不便与考过来,
    麻烦自己去看吧,如果有问题,请通知我。
    http://www.kaer.com.cn/default.aspx
    参考一下或许对你有利
    接分!!!!!!!!!!!!!!!!