基于WinDbg的内存泄漏分析
摘要:基于WinDbg的内存泄漏分析在前面C++中基于Crt的内存泄漏检测一文中提到的方法已经可以解决我们的大部分内存泄露问题了,但是该方法是有前提的,那就是一定要有源代码,而且还只能是Debug版本调试模式下。实际上很多时候我们的程序会用到第三方没有源代码的模块,有些情况下我们甚至怀疑系统模块有内存泄露,但是有没有证据,我们该怎么办? 这时我们就要依靠无所不能的WinDbg了。WinDbg的!heap命令非常强大,结合AppVerifier可以对堆(heap)内存进行详细的跟踪和分析, 我们接下来对下面的代码进行内存泄漏的分析://MemLeakTest.cpp:Definestheentrypo
阅读全文
总结自己的Git常用命令
摘要:总结自己的Git常用命令使用git也有一段时间了,把自己常用的命令用自己的描述记录起来,方便自己备忘也方便其他人参考。最基本的命令:git clone 拷贝并跟踪远程的master分支。跟踪的好处是以后可以直接通过pull和push命令来提交或者获取远程最新的代码,而不需要指定远程分支名字。参考示意图HEAD 指向当前的commit 对象,同时也用来表明我们在哪个branch上工作。所以当我们使用HEAD来操作指针的时候,其实就是不改变当前的commit的指向。对照这张图来理解两段提交,工作区(working tree),暂存区(index)和 branch之间的关系显示信息类命令git ls
阅读全文
GitHub 的企业版
摘要:https://enterprise.github.com/大家都在提 GitHub 的企业版,不妨让我们看看 GitHub 企业版都提供哪些功能:1.代码审查:其中包括未来风格的代码审查、评论提交、分支分析、对比视图等功能。2.团队管理:30 秒即可让用户访问代码,不需 SSH key,同时提供进度信息主动更新。3.工业标准的 OVA:OVA 是 Open Virtualization Format(简称 OVF)的一种实现,OVF 是一种开放标准,用来定义对虚拟机中运行的虚拟应用和软件进行打包和分发的标准。GitHub Enterprise 版本以 OVA 格式分发,兼容 VMware 和
阅读全文
构建杀手级应用的 JavaScript 框架、工具和技术
摘要:构建杀手级应用的 JavaScript 框架、工具和技术 Web 浏览器正变得越来越强大,而 JavaScript 则让Web变得更加有趣。在这篇文章中,向大家推荐最有趣的JavaScript框架,工具和技术帮助你创造杀手级的应用和网站。记得收藏和推荐啊:)您可能感兴趣的相关文章经典的白富美型 jQuery 图片轮播插件2012年最佳 Web 前端开发工具和框架让人爱不释手的13套精美网页图标素材10套精美的免费网站后台管理系统模板精心挑选的优秀 jQuery Ajax 分页插件Impress.js:超炫的在线幻灯片 Impress.js 的灵感来自 prezi.com,是一个非常优秀的幻..
阅读全文
Chrome Extension 动手实操
摘要:最近想玩下chrome的插件主要有两个原因, 一个是前段时间对chrome new tab的功能太少很不满意, 现有插件又不能满足需求, 想自己搞个. 由于界面设计实在是我的障碍而且自身需求不急, 就没动手; 另个是最近想在公司内网求一个ipad mini, 僧多粥少, 往往刚有一个卖的半小时内就被预订了, 据此想借chrome的桌面提醒功能, 做一个能实时提醒的插件. 功能很简单, 大致如下:每x秒请求论坛前几页, 查到所有标"new"的新帖根据帖子的title, 匹配我需要的关键字"pad mini"进行展示桌面提醒, 展示帖子的楼主, 标题和地址,
阅读全文
SharePoint 2013 安装图解
摘要:介绍:文章就是SharePoint2013安装过程的图解,包括步骤截图和简单说明还有安装后的小问题,如果你已经安装完成,并没有问题,请跳过本文章,开始你的SharePoint之旅,谢谢。安装环境:Window Server 2012 DataCenter + Microsoft SQL 2012(sp1) + SharePoint Server 2013简单介绍:A、安装Windows2012操作系统(VMWare 9.0中)B、简单配置:改机器名、可以上网、禁用IE增强配置、静态IP、IIS、FM3.5、AD(其间安装DNS)C、安装SQL2012D、在线安装必备程序E、安装SharePoi
阅读全文
每周一荐:远程控制软件TeamViewer
摘要:TeamViewer是一款通过Internet进行远程访问和远程支持的软件。也可以用于远程会议,同时还可以进行演示,互相交换文件。如果用于个人用途,是免费的。商业用途需要购买序列号。支持多个平台:windows、mac、iphone、ipad及其它。只要你在连接在Internet上的电脑上启动课Teamviewer,就可以在任何地方访问用各种操作系统来远程访问和控制该电脑。甚至拿起你的iphone/ipad都可以进行远程控制。TeamViewer提供了一个简洁易用的用户界面。你可以选择是要远程控制你的伙伴、还是与伙伴共享你自己的桌面或仅传输文件而不共享桌面。极具吸引力的伙伴列表使你能够实现即时
阅读全文
PowerShell能干什么?
摘要:PowerShell能干什么呢?就像序言中提到的那样,PowerShell首先是个Shell,定义好了一堆命令与操作系统,特别是与文件系统交互,能够启动应用程序,甚至操纵应用程序;第二,PowerShell允许将几个命令组合起来放到文件里执行,实现文件级的重用,也就是说有脚本的性质;第三,PowerShell能够能够充分利用.Net类型和COM对象,来简单地与各种系统交互,完成各种复杂的、自动化的操作。 一、与文件系统交互、运行应用程序 就像在Dos中一样,在PowerShell的交互界面上键入"dir"并回车,会显示当前文件夹下的子文件夹和文件信息。?PS D:\Proj
阅读全文
IntelliJ IDEA 12 创建Web项目 教程 超详细版
摘要:IntelliJ IDEA 12新版本发布 第一时间去官网看了下黑色的主题 很给力 大体使用了下对于一开始就是用eclipse的童鞋们估计很难从eclipse中走出来当然 我也很艰难的走在路上 ...首先要说一点,在IntelliJ IDEA里面“new Project” 就相当于我们eclipse的“workspace”,而“new Module”才是创建一个工程。这个和Eclipse有很大的区别1.官网下载下来的默认不是黑色的主题这里需要修改一下工具栏上的扳手图标 或者是用ctrl+alt+s打开设置窗口在打开窗口的左侧 找到Appearance>Theme 选择Darcula主题
阅读全文
Chrome developer tool介绍(javascript调试)
摘要:Chrome浏览器得益于其优秀的V8解释器,javascript执行速度和内存占有率表现非常优秀。对于html+css+javascript前台技术的学习或者开发,浏览器developer tool的使用时必不可少的,也能极大的提高学习或者开发效率。本文根据版本23.0.1271.10。在window下,开启developer tool的快捷键为F12。1 Developer tool功能结构 Developer tool的功能栏有8个,分别是标签、资源、网络、源码、时间轴、性能、监察和显示(命令行)。2 Element panel2.1 Element控制面板基本功能 Element控...
阅读全文
Axure使用心得分享
摘要:因为之前很少涉及到原型设计,所以对这个原型设计工具也不太熟悉,第一次使用走了不少的弯路,在这里把自己在使用过程中的心得跟大家分享一下,希望能够对大家有所帮助。一、元素的选择我觉得这是Axure原型设计工具最让人不习惯的地方。举例说明,如果界面上的元素很多,而且有分层、遮盖的情况,这样的话下层的元素就无法显示了,但是有时候你可能只需要选择上层的一些元素,这个时候你不得不一个个的点击选中了,如果全选的话就可能将被遮盖的元素也给选中。下面就和大家分享一下常用的解决方法:1) 使用Lock锁定把你所需要的元素选择的元素选定之后选择锁定,这个被选定元素轮廓就会变为红色,不可操作,也不可移动。当你选择全选
阅读全文
部署应用
摘要:在很多情况下,我们都非常期待使用自动升级来帮我们发布和部署应用程序更新。对于一个上规模的产品,自动化部署、升级的实现,对于软件测试和最终部署都可以避免手工升级的麻烦,减少琐碎的工作,节省资源。在部署过程,或者开发/QA人员协作过程中,这种重复性的劳作非常厌烦且容易出错。此外,当一个产品最终发布后,自动升级对于很多产品来讲是无可或缺的。现在让我来分享一下我们的自动化升级方案,这个方案通用于.NET平台的任何应用,WinForm、WebForm、MVC等所有应用,都可以实现自动化部署和升级。1 我们如何自动化升级?1.1 更改程序,发布升级包当我们使用Visual Studio更改完成编译通过后,
阅读全文
GitHub被墙,我们还有更多Git托管服务
摘要:Git最近几年非常火的版本控制(Revision Control)软件,我也在大概一年前从SVN转到了使用Git。对于大部分业余项目其实就我一个人在操作的情况下,Git明显比SVN给我带来更多的优势。后来随着GitHub的兴起,我同样可以想SVN一样有一个中心代码库,而且还可以通过网页展示来当做一份在线简历。不过GitHub在国内真正被(非技术人员)广为知晓,还是感谢春运刷票插件拖垮GitHub这一事件吧。这也算是给GitHub做了一次超强压力测试吧。随后插件似乎被铁道部叫停,但是显然这是不可能阻止已经安装在各个浏览器上的插件的。于是他们直接拿出杀手锏:把GitHub阻挡在GFW之外。 不过好
阅读全文
如何在github上fork一个项目来贡献代码以及同步原作者的修改
摘要:作为一个IT人,通过github进行学习是最快的成长手段。我们可以浏览别人的优秀代码。但只看不动手还是成长得很慢,因此为别人贡南代码才是明智之举。比如我们看下片看,许多大片都是由字幕组免费翻译压制的。为什么他们要这样做呢?因为他们都是聪明的大学生,为了提高听力水平,提高笔译水平才这样干的!中国人都是非常实务的!因此贡献代码,参与开源项目都是有益无害的!好了,让我们开始吧!如何贡献自己的力量首先你总得有自己的github帐号吧,注册一个,非常简单,只需用户名,邮箱,密码,邮箱只是用来找回密码的,不做验证。因此注册后立即能用!比如我现在新注册一个叫JsLouvre的示范帐号。然后搜索我的项目——m
阅读全文
不再被墙后 一个全新GitHub到来
摘要:不再被墙后 一个全新GitHub到来投递人itwriter发布于 2013-01-24 11:00评论(12)有3753人阅读原文链接[收藏]«» 北京时间1 月 24 日消息,近一段时间国内无法正常访问的 GitHub,今天已经可以正常访问。不再封锁 GitHub 究竟是国内某些人大发善心的缘故,还是我们广大程序员不懈努力的功劳,在这都不再细究,今天我们所要关注的是——一个回归后全新的 GitHub。 今天 GitHub 在其官方博客发表博文指出,它已正式推出全新的代码搜索(Code Search)引擎,改进后的代码搜索引擎使得大家在 GitHub 上寻找好代码将变得更加
阅读全文
小工具,大智慧(一) ——notepad++
摘要:小工具,大智慧(一) ——notepad++ 说说初衷,有些时候总需要一些小工具,可是就是不知道什么样的是最适合、漂亮的。有时候能够看到一个小巧、高效、实用的软件的确让人心旷神怡。而那些使用起来方便、简洁,能大大提高工作效率的小巧软件,的确是我们装机的必备神器。本系列旨在寻求哪些神器。其实主要还是面向使用,有时候可能相同功能的软件(API)很多,为方便得心应手的使用,而着重去寻找开源软件。(还望大家多多支持,帮助!)<一>编辑软件 notepad++:(10M左右大小,windows平台,官网:http://notepad-plus-plus.org/...
阅读全文
Source Insight
摘要:Source Insight 3.X 标签插件v1.0发布 Source Insight可以说是一款程序员必备的开发/阅读源码工具,美中不足的是SI没有标签栏,多个源码之间切换很不方便,于是我就乘闲暇之余写了该作品sihook:标签插件;不过严格意义上来说sihook并不算是插件,而是一个内挂:) 如何给Source Insight添加标签栏呢?可以查看orbit的博客<<给Source Insight做个外挂>>系列;感谢orbit的分析,而且orbit再很早的时候就已经做了一个标签插件,我也下载和试用了他的插件,不过orbit的像个外挂,而我的更像内挂:),由于很久
阅读全文
修改 Windows Host 文件工具
摘要:修改 Windows Host 文件工具Hosts文件是一个用于储存计算机网络中各节点信息的计算机文件。这个文件负责将主机名映射到相应的IP地址。hosts文件通常用于补充或取代网络中DNS的功能。和DNS不同的是,计算机的用户可以直接对hosts文件进行控制。Hosts文件的位置hosts文件在不同操作系统(甚至不同Windows版本)的位置都有所区别:操作系统文件位置Windows NT/2000/XP/Vista/7(即微软NT系列操作系统)默认位置为%SystemRoot%\system32\drivers\etc\,但也可以改变。动态目录由注册表键\HKEY_LOCAL_MACHIN
阅读全文
Jenkins、Hudson安装、配置详细记录
摘要:Jenkins的前身是Hudson,是做持续集成必不可少的工具,主要用途:持续、自动的构建项目;构建自动化测试项目;监控定时执行的一些任务。先说说一下安装:Hudson的war包下载地址:http://mirrors.neusoft.edu.cn/eclipse/hudson/war/Jenkins的war包下载地址:http://mirrors.jenkins-ci.org/war/下载tomcat的地址:http://mirror.bit.edu.cn/apache/tomcat/(Hudson、Jenkins需要web容器支持,不需要数据库,直接访问)首先安装JDK,我的JDK版本是1.
阅读全文
开发经验
摘要:编码基本上每位程序员都是会的但由于每位程序员的习惯都有所不同从而产生了各式各样的编码。怎么样的代码是最好的?这好像就没有一个很好的说法从我自己几年的开发经验觉得好的代码应该具有以下几点特性:易读:命名、函数内上下文件流程(达到基本上不用注释都知道这是的是什么)易扩展:有新的需求时可以不改动(少量改动)以前的代码就可以完成易维护:用少量的时间就可以完成维护过程(这与前两个有很大的关系)这好像是地球人都知道的但做起来又是另一回事,还是以一个数据逻辑为原型来细说。现在一堆区间数组把相交的区间数组合并起来得出新的区间数组效果如下:原始区间数组:{3,5}{1,5}{5, 9}{6, 8}{-9, 5}
阅读全文