- 博客(10)
- 收藏
- 关注
转载 Crash Dump Analysis Patterns (Part 20a)
Memory Leak is another pattern that may be finally manifested as Insufficient Memory pattern in a crash dump. In this part I’ll cover process heap memory leaks. They are usually identified when the
2008-11-15 17:50:00 890
转载 构建Filter Graph
3.3. 构建Filter Graph3.3.1. 用于构建Graph的组件 DirectShow提供了一系列用于构建filter graph的组件,包括: *Filter Graph Manager。这个对象用于控制filter graph,支持IGraphBuilder、IMediaControl和IMediaEventEx等许多接口。所有的directshow应用程序都需要
2008-11-07 20:03:00 617
转载 Filter Graph和它的组件
3.2. Filter Graph和它的组件 这一节描述了DirectShow的主要组件,为DirectShow应用程序和DirectShow Filter开发者提供一个介绍。应用程序开发者可以忽略掉很多底层部分,但是,了解底层对于理解DirectShow架构还是很有帮助的。3.2.1. 关于DirectShow Filter DirectShow使用一个模块化的架构,每个处理过
2008-11-07 20:01:00 917
转载 Filter Graph中的数据流
3.4. Filter Graph中的数据流 这一节主要描述媒体数据是如何在filter graph中流动的。如果你只是为了编写DirectShow应用程序,你不需要知道这些细节,当然,知道这些细节对于编写directshow应用程序仍然是有帮助的。但是如果你要编写directshow filter,那么你就必须掌握这部分知识了。3.4.1. DirectShow数据流概述 在这一部分
2008-11-07 19:58:00 545
转载 P2P之UDP穿透NAT的原理与实现
NAT(Network AddressTranslators),网络地址转换:网络地址转换是在IP地址日益缺乏的情况下产生的,它的主要目的就是为了能够地址重用。NAT分为两大类,基本的NAT和NAPT(Network Address/Port Translator)。 最开始NAT是运行在路由器上的一个功能模块。 最先提出的是基本的NAT,它的产生基于如下事实:一个私有网络(域
2008-11-07 19:17:00 344
转载 文件操作
各种关于文件的操作在程序设计中是十分常见,如果能对其各种操作都了如指掌,就可以根据实际情况找到最佳的解决方案,从而在较短的时间内编写出高效的代码,因而熟练的掌握文件操作是十分重要的。本文将对Visual C++中有关文件操作进行全面的介绍,并对在文件操作中经常遇到的一些疑难问题进行详细的分析。 1.文件的查找 当对一个文件操作时,如果不知道该文件是否存在,就要首先进行查找。MFC中有一个专门
2008-11-07 19:09:00 471
转载 C++内存管理结构
mainCRTStartup 的头几步工作是初始化一些预定义的全局变量, _osplatform, _winmajor, _winminor, _osver, _winver等与Windows Version 有关的. 然后很重要的一步就是初始化 Heap. 大多的内存都是 Heap 上分配的, 如 new, malloc. 所以必须要先初始化才能干别的. 这个函数是_heap_init. 以前
2008-11-07 19:04:00 512
转载 HTTP服务器上断点下载文件
从HTTP服务器上下载一个文件有很多方法,“热心”的微软提供了 WinInet 类,用起来也很方便。当然,我们也可以自己实现这些功能,通过格式化请求头很容易就能实现断点续传和检查更新等等功能 。 连接主机 格式化请求头 设置接收,发送超时 要想从服务器下载文件,首先要向服务器发送一个请求。HTTP 请求头由若干行字符串组成。下面结合实例说说 HTT
2008-11-07 19:00:00 735
转载 Windows线程的系统空间堆栈
漫谈兼容内核之二十:Windows线程的系统空间堆栈 毛德操 在计算机技术的发展史上,堆栈的发明有着划时代的意义。从那以后,实际上已经不再存在可以脱离堆栈而运行的程序。我们从堆栈的用途和内容可以看出其重要 性: l 记录子程序调用的轨迹,使嵌套的(多层的)子程序调用成为可能。 l 通过堆栈传递子程序调用参数,使程序设计得以简化。要是不能通过堆栈传递参数,实际上就不会有现
2008-11-07 18:59:00 2777
转载 Windows的结构化异常处理
我们知道,异常就像中断,不管是什么原因(“软异常”除外)所引起,一旦发生首先进入的是内核中的异常响应/ 处理程序的入口,这就是类似于KiTrap0()那样的底层内核函数,只是因为引起异常的原因不同而进入不同的入口,就像对于不同的中断向量有不同的入口 一样。在内核中,仍以页面异常为例,正如读者已经看到,CPU会从KiTrap14()进入函数KiPageFaultHandler()。在那儿,如果 所发
2008-11-07 18:51:00 836
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人