摘要:
最近我在准备一个关于Windows内存管理的演讲。其中的一个议题是堆(Heap)。众所周知,C++中的new操作符会调用到C中的malloc函数的,而malloc函数是依赖于KERNEL32.DLL中的HeapAlloc(…)。 为了演示这3个函数的关系,我写了一个简单的程序。在这个程序会分别调用new和malloc。我在KERNEL32!HeapAlloc上设置了断点。在程序运行起来... 阅读全文
posted @ 2010-11-15 13:31
夜深沉
阅读(506)
评论(0)
推荐(0)
摘要:
这里我向大家介绍一个Visual studio的宏(Macro)来给源代码添加注释。 打开Visual studio->Tools->Macros->Marcros IDE,添加下面的代码: 这样,当你每次运行这个宏的时候,都会给你Visual studio的当前的文档添加如下格式的文件头注释: 看起来还挺COOL的,哈。 阅读全文
posted @ 2010-11-15 12:50
夜深沉
阅读(1171)
评论(0)
推荐(0)
摘要:
最近,我尝试对我项目里面的DLL文件的基址重新定位,因为重定位可以提高系统的启动速度。在完成了重定位之后,我想测量一下我的应用的启动速度到底有了多大的提升。但是如何判断一个进程是不是已经完成了初始化呢?一个Windows API帮助了我:WaitForInputIdle"。 这个API函数一直等待知道指定的进程在创建该应用的第一个窗口的线程中没有任何阻塞的输入。 顺便提一下,在我的例子中基址重定位... 阅读全文
posted @ 2010-11-15 12:45
夜深沉
阅读(734)
评论(0)
推荐(0)
摘要:
这是Visual studio的一个隐藏功能。你可以在文本编辑器里面设置guidelines来避免输入过长的表达式,这将提搞你的代码的可维护性。 为了打开这个功能,你需要修改注册表: 在[HKEY_CURRENT_USER]\Software\Microsoft\VisualStudio\8.0\Text Editor] 下,创建一个名为“Guides ”字符串的值,设置G... 阅读全文
posted @ 2010-11-15 12:42
夜深沉
阅读(292)
评论(0)
推荐(0)
浙公网安备 33010602011771号