⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 csdn_文档中心_如何提高截取屏幕的速度?.htm

📁 csdn10年中间经典帖子
💻 HTM
📖 第 1 页 / 共 2 页
字号:
      <TABLE bgColor=#eeeeee border=0 cellPadding=0 cellSpacing=0 width=600>
        <TBODY>
        <TR bgColor=#ffffff>
          <TD align=middle height=10 width=50></TD>
          <TD align=right><A href="http://www.csdn.net/">CSDN</A> - <A 
            href="http://www.csdn.net/develop/">文档中心</A> - <FONT 
            color=#003399>Visual C++</FONT>&nbsp;&nbsp;&nbsp;&nbsp; </TD></TR>
        <TR>
          <TD align=middle height=5></TD>
          <TD align=middle width=500></TD></TR>
        <TR>
          <TD align=middle bgColor=#003399 height=10><FONT 
            color=#ffffff>标题</FONT></TD>
          <TD><B>&nbsp;&nbsp;&nbsp;&nbsp;如何提高截取屏幕的速度?</B>&nbsp;&nbsp;&nbsp;&nbsp;ghj1976(转贴) 
          </TD></TR>
        <TR>
          <TD align=middle height=5></TD>
          <TD align=middle width=500></TD></TR>
        <TR>
          <TD align=middle bgColor=#003399><FONT color=#ffffff>关键字</FONT></TD>
          <TD width=500>&nbsp;&nbsp;&nbsp;&nbsp;如何提高截取屏幕的速度?</TD></TR>
        <TR>
          <TD align=middle height=5></TD>
          <TD align=middle width=500></TD></TR>
        <TR>
          <TD align=middle bgColor=#003399 height=10><FONT 
            color=#ffffff>出处</FONT></TD>
          <TD height=10>&nbsp;&nbsp;&nbsp;&nbsp;<A 
            href="http://www.xici.net/board/doc.asp?id=151703&amp;sub=0">http://www.xici.net/board/doc.asp?id=151703&amp;sub=0</A></TD></TR>
        <TR>
          <TD align=middle height=10></TD>
          <TD height=10></TD></TR></TBODY></TABLE><!--文章说明信息结束//-->
      <TABLE border=0 width=600>
        <TBODY>
        <TR>
          <TD align=left><BR>作者: <STRONG><A 
            href="http://www.xici.net/mail/sendto.asp?id=Seaky">Seaky</A></STRONG> 
            发表日期: <STRONG>1999-10-14 23:29:18</STRONG> <A 
            href="http://www.xici.net/board/board.asp?id=3359">返回《VC论坛》</A> <A 
            href="javascript:history.go(-1);">快速返回</A> 
            <P></P>
            <P>我用如下的方法截取屏幕,但我发现截取整个800x600x24屏幕需约200ms,有没有更快的方法? <BR>越快越好! 
            <BR><BR>HDC hScrDC,hMemDC; <BR>HBITMAP hBitmap,hOldBitmap; 
            <BR><BR>hScrDC=CreateDC("DISPLAY",NULL,NULL,NULL); 
            <BR>hMemDC=CreateCompatibleDC(hScrDC); 
            <BR>hBitmap=CreateCompatibleBitmap(hScrDC,nWidth,nHeight); 
            <BR>hOldBitmap=(HBITMAP)SelectObject(hMemDC,hBitmap); 
            <BR>BitBlt(hMemDC,0,0,nWidth,nHeight,hScrDC,nX,nY,SRCCOPY); 
            <BR>hBitmap=(HBITMAP)SelectObject(hMemDC,hOldBitmap); <BR><BR>谢谢各位。 
            <BR><BR>
            <P><IMG height=15 src="CSDN_文档中心_如何提高截取屏幕的速度?.files/doc0.gif" 
            width=15> 补充日期: <STRONG>1999-10-14 23:32:06</STRONG></P>
            <P>smalltalk  1999-10-02 
            23:30:53  <BR>把BitBlt换成其他的函数试试,<BR>比如StretchBlt 或者 
            StretchDIBits.<BR>或许会快很多的。<BR><BR><BR><BR>Seaky (555079468) 
             1999-10-05 
            08:39:29  <BR>我试了一下StretchBlt函数和BitBlt函数的效果几乎一样,我想StretchDIBits也差不到哪儿去吧!<BR>我觉得应该换个角度...<BR>我现在用DirectDraw,且已获得主表面的指针但不知下面该怎么做?<BR>是否是这样...<BR>LPDIRECTDRAWSURFACE 
            lpDDSPrimary;<BR>HDC lphDC=NULL;<BR>HBITMAP 
            hBitmap;<BR><BR>lpDDSPrimary-&gt;GetDC(&amp;lphDC);<BR>hBitmap=CreateCompatibleBitmap(lphDC,nWidth,nHeight);<BR>... <BR><BR><BR>Seaky 
            (555079468)  1999-10-08 
            22:17:11  <BR>我已知获得主表面的指针后怎么做。<BR>用Lock获取当前帧,然后获得当前屏幕的数据指针“scr”。<BR><BR>但是,我发现这种方法速度仍然不是很快!<BR>我需要抓一次800x600x24的屏幕只需50ms左右的时间!<BR>DirectDraw的高手门,你们在哪儿? <BR><BR><BR>tengel  1999-10-09 
            11:21:37  <BR>其实用Lock锁住之后,你一个点一个点的取位图肯定很慢,能不能使用像汇编的REP MOVS 
            来做呢,我也不太清楚<BR><BR><BR><BR>Seaky  1999-10-09 
            23:11:17  <BR>是一个好的建议!可是这方面我也不清楚。<BR><BR></P>
            <P><IMG height=15 src="CSDN_文档中心_如何提高截取屏幕的速度?.files/doc0.gif" 
            width=15> 补充日期: <STRONG>1999-10-15 23:12:31</STRONG></P>
            <P>Seaky (555079468)  1999-10-10 
            23:02:57  <BR>有高手会tengel所建议的方法吗?<BR><BR><BR><BR>lwm  1999-10-11 
            16:33:09  <BR>vc中sdk sample wincap 速度很快 <BR><BR><BR>kasper 
            (555081595)  1999-10-11 21:52:27  <BR>wincap 所用的方法与Seaky的方法完全一样。</P>
            <P><IMG height=15 src="CSDN_文档中心_如何提高截取屏幕的速度?.files/doc0.gif" 
            width=15> 补充日期: <STRONG>1999-10-16 11:55:48</STRONG></P>
            <P>Seaky (555079468)  1999-10-11 
            23:11:05  <BR>谢谢lwm、kasper、tengel、smalltalk!有没有其它建议?<BR>一位朋友建议我用DirectShow来做,因为DirectShow比DD的速度快,但这方面我不太熟悉,有没有哪位知道?<BR>不管用什么方法,只要达到我的要求,我就佩服他(她)! <BR><BR><BR>hwzhang 
            (555050397)  1999-10-12 
            09:22:34  <BR>如果不在乎图形质量的话,可以进行抽点,比如每四个像素抽一个,速度会快不少,图形质量也损失不大. <BR><BR><BR>Seaky 
            (555079468)  1999-10-13 
            23:08:58  <BR>速度是加快了,但是图形质量损失较大,毕竟是4取1啊!<BR>还有高手吗? <BR><BR><BR>hephaestus  1999-10-14 
            19:40:17  <BR>我见过的很多纯软件的多媒体教学系统的屏幕传输没有用DirectX技术,却有很好的效率。 <BR><BR><BR>Seaky 
            (555079468)  1999-10-14 
            22:35:02  <BR>我并没要求一定用DirectX,只要达到要求,什么方法都可以!<BR>高手们,加油啊!</P>
            <P><IMG height=15 src="CSDN_文档中心_如何提高截取屏幕的速度?.files/doc0.gif" 
            width=15> 补充日期: <STRONG>1999-10-18 01:15:15</STRONG></P>
            <P>smalltalk  1999-10-14 
            22:36:34  <BR>我知道这些纯软件的多媒体教学系统的屏幕传输是如何做的,它们是通过用DDK,将<BR>现有widows 
            video device driver加上陷阱,直接从GDI数据区取得显示设备上的<BR>bitmap,这一定比用GDI 函数和 
            DirectX<BR>做要快的多,但我没研究过。 <BR><BR><BR>Seaky (555079468)  1999-10-14 
            22:51:43  <BR>谢谢smalltalk的建议!<BR></P>
            <P><IMG height=15 src="CSDN_文档中心_如何提高截取屏幕的速度?.files/doc0.gif" 
            width=15> 补充日期: <STRONG>1999-10-19 22:30:29</STRONG></P>
            <P>tengel  1999-10-15 
            09:09:35  <BR>其实即使使用DDK,估计也不会达到seaky所要求的性能,我斗胆问一句Seaky这么快的截屏,想完成什么任务? <BR><BR><BR>Seaky 
            (555079468)  1999-10-15 
            23:22:41  <BR>想完成一个跟“多媒体教学系统”差不很多的一个系统,目前正在试smalltalk的建议!<BR>欢迎tengel指教!<BR>我的E-mail:Seaky@990.net <BR><BR><BR>无情剑客 
            (555079522)  1999-10-17 
            21:36:34  <BR>我也想知道如何做的,可否公布一下最佳方案的详细做法? <BR><BR><BR>Seaky 
            (555079468)  1999-10-18 
            01:20:48  <BR>目前我正在测试各种方法,暂时还没有发现符合要求的最佳方案,发现后一定整理公布!<BR></P>
            <DIV align=right>
            <TABLE border=0 cellPadding=0 cellSpacing=0>
              <TBODY>
              <TR>
                <TD class=p9><FONT 
                  color=#ff0000>                       海阔凭鱼跃, <BR>                       天高任鸟飞! <BR>                          --Seaky </FONT></TD></TR></TBODY></TABLE></DIV>
            <P></P>
            <P><IMG height=15 src="CSDN_文档中心_如何提高截取屏幕的速度?.files/doc0.gif" 
            width=15> 补充日期: <STRONG>1999-10-21 22:36:40</STRONG></P>
            <P>Seaky (555079468)  1999-10-21 00:40:42   
            <BR>我好象已经找到答案了!就是smalltalk所说的用DDK,但还没有最终完成! 
            <BR>谢谢smalltalk、tengel、lwm、kasper、hwzhang、hephaestus、无情剑客各位最近的参与和建议,谢谢! 

            <DIV align=right>
            <TABLE border=0 cellPadding=0 cellSpacing=0>
              <TBODY>
              <TR>
                <TD class=p9><FONT 
                  color=#ff0000>                       海阔凭鱼跃, <BR>                       天高任鸟飞! <BR>                          --Seaky </FONT></TD></TR></TBODY></TABLE></DIV>
            <HR>
            <BR></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE><BR>
<TABLE align=center bgColor=#006699 border=0 cellPadding=0 cellSpacing=0 
width=770>
  <TBODY>
  <TR bgColor=#006699>
    <TD align=middle bgColor=#006699 id=white><FONT 
    color=#ffffff>对该文的评论</FONT></TD>
    <TD align=middle>
      <SCRIPT src="CSDN_文档中心_如何提高截取屏幕的速度?.files/readnum.htm"></SCRIPT>
    </TD></TR></TBODY></TABLE><BR>
<DIV align=center>
<TABLE align=center bgColor=#cccccc border=0 cellPadding=2 cellSpacing=1 
width=770>
  <TBODY>
  <TR>
    <TH bgColor=#006699 id=white><FONT 
color=#ffffff>我要评论</FONT></TH></TR></TBODY></TABLE></DIV>
<DIV align=center>
<TABLE border=0 width=770>
  <TBODY>
  <TR>
    <TD>你没有登陆,无法发表评论。 请先<A 
      href="http://www.csdn.net/member/login.asp?from=/Develop/read_article.asp?id=2798">登陆</A> 
      <A 
href="http://www.csdn.net/expert/zc.asp">我要注册</A><BR></TD></TR></TBODY></TABLE></DIV><BR>
<HR noShade SIZE=1 width=770>

<TABLE border=0 cellPadding=0 cellSpacing=0 width=500>
  <TBODY>
  <TR align=middle>
    <TD height=10 vAlign=bottom><A 
      href="http://www.csdn.net/intro/intro.asp?id=2">网站简介</A> - <A 
      href="http://www.csdn.net/intro/intro.asp?id=5">广告服务</A> - <A 
      href="http://www.csdn.net/map/map.shtm">网站地图</A> - <A 
      href="http://www.csdn.net/help/help.asp">帮助信息</A> - <A 
      href="http://www.csdn.net/intro/intro.asp?id=2">联系方式</A> - <A 
      href="http://www.csdn.net/english">English</A> </TD>
    <TD align=middle rowSpan=3><A 
      href="http://www.hd315.gov.cn/beian/view.asp?bianhao=010202001032100010"><IMG 
      border=0 height=48 src="CSDN_文档中心_如何提高截取屏幕的速度?.files/biaoshi.gif" 
      width=40></A></TD></TR>
  <TR align=middle>
    <TD vAlign=top>百联美达美公司 版权所有 京ICP证020026号</TD></TR>
  <TR align=middle>
    <TD vAlign=top><FONT face=Verdana>Copyright &copy; CSDN.net, Inc. All rights 
      reserved</FONT></TD></TR>
  <TR>
    <TD height=15></TD>
    <TD></TD></TR></TBODY></TABLE></DIV>
<DIV></DIV><!--内容结束//--><!--结束//--></BODY></HTML>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -