| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2932 人关注过本帖, 2 人收藏
标题:在VC中直接写屏的方法
取消只看楼主 加入收藏
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
这个资料比较有趣,各方面都有,可以看看:http://baike.baidu.com/view/8187.htm

授人以渔,不授人以鱼。
2015-07-09 21:44
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
人眼和人头脑中的世界,不是真实图像。现代操作系统下用户程序看到的计算机设备,与此相似。在Windows NT中,Kernel把真实物理内存映射为虚拟内存,用户程序所谓的对内存寻址,那个地址是虚拟地址,它可能在物理内存中,也可能在磁盘交换页中;每个用户程序都有自己的虚拟内存,没有交集,互相也不能访问,要在进程之间共享数据,有系统提供的另外方法,总之不能直接访问物理内存。驱动程序最接近内核,权限也最大,这些程序要安装在系统中并允许运行,要经过系统的(比如证书)检查和用户的明确允许——其实很多问题,是用户乱放行造成的,现在的网站越做越复杂,请求的权限也越来越大,ActiveX之类之所以在Edge中不予支持,自然有道理。

授人以渔,不授人以鱼。
2015-07-09 22:02
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
设备有提供访问协议,就可以在用户态下实现。这些控制和访问,在Windows下也可以。

授人以渔,不授人以鱼。
2015-07-09 22:25
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
以下是引用wfoo在2015-7-9 22:39:02的发言:

是直接操作硬件,调用协议最终还是会进入系统态,如果频繁的io操作很影响性能。
不过不是专用的项目,还是安装常规方法比较好。

是的,所以我前面提到,除非写驱动求效率,通常按常规做。普通的应用,效率取决于算法和数据结构,不是完全靠底层,只有在实践证明万不得已的情况,才针对瓶颈部位做优化,走底层道路是最后的选项。

比如现在我写的这个,就是测试过各种实现的。在.net的C++中,可以用Console类实现自由显示的效果,但那有一个缺陷,就是必须同时移动光标,这会很明显的拖慢速度,而且,一个无法解决的问题,是在屏幕右下角输出字符之后,屏幕内容会上移一行,那是不可接受的,解决的办法,只有用这个。

[ 本帖最后由 TonyDeng 于 2015-7-9 22:48 编辑 ]

授人以渔,不授人以鱼。
2015-07-09 22:44
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 

授人以渔,不授人以鱼。
2015-07-17 11:25
快速回复:在VC中直接写屏的方法
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016422 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved