WIN32
文章平均质量分 75
haoxing168
C WIN32开发
展开
-
VS2008 + WTL8 + VisualFC 环境配置
一、配置环境步骤 1. 安装VS2008 + MSDN(可选).2. 解压WTL8到 ($WTL8) : C:/SDK/WTL8 .3. 复制 ($WTL8)/AppWiz/Setup80.js 到 ($WTL8)/AppWiz/Setup90.js .4. 编辑 ($WTL8)/AppWiz/Setup80.js ,将“8.0” 全部替换成“9.0” .5. 双击运行转载 2009-08-29 09:26:00 · 1067 阅读 · 0 评论 -
深入 CSocket 编程之阻塞和非阻塞模式
适合初中级读者阅读 有时,花上几个小时阅读、调试、跟踪优秀的源码程序,能够更快地掌握某些技术关键点和精髓。当然,前提是对这些技术大致上有一个了解。 我通过几个采用 CSocket 类编写并基于 Client/Server (客户端 / 服务端)的网络聊天和传输文件的程序 ( 详见: 源代码参考 ) ,在调试这些程序的过程中,追踪深入至 CSocket 类核心源码 SockCore.c转载 2009-09-13 19:51:00 · 1117 阅读 · 0 评论 -
从subsystem开始概述NT内核(转)
什么是subsystem?NT架构(Windows NT、Windows XP、Windows 2003)的初始设计是很有野心的,它希望在NT上可以不加修改地运行OS2、UNIX程序。所以在NT中有subsystem的概念,每个subsystem针对一个平台,ntdll.dll是所有subsystem的基础。或者说ntdll.dll统一提供NT系统的API接口,subsystem为各个平台的应用程转载 2009-09-11 17:18:00 · 739 阅读 · 0 评论 -
Toolhelp API 简介
Toolhelp APIs是Windows中一组能够方便得到系统中win32应用程序的当前运行状况的函数,这些函数设计目的是实现一些基于Win32子系统的工具,特别是调试器。通过使用Toolhelp API,我们可以实现象Windows附带的系统工具Dr watson一样的功能(当然真正实现它的所有功能不是光靠Toolhelp API一个函数库就可以的)。而且这些函数适用于win9x,winnt,转载 2009-09-11 18:53:00 · 3426 阅读 · 2 评论 -
Socket,CAsyncSocket,CSocket介绍
Socket有同步阻塞方式和异步非阻塞方式两种使用,事实上同步和异步在我们编程的生涯中可能遇到了很多,而Socket也没什么特别。虽然同步好用,不费劲,但不能满足一些应用场合,其效率也很低。 也许初涉编程的人不能理解"同步(或阻塞)"和"异步(或非阻塞)",其实简单两句话就能讲清楚,同步和异步往往都是针对一个函数来说的,"同步"就是函数直到其要执行的功转载 2009-09-12 12:30:00 · 690 阅读 · 0 评论 -
杂谈windows内存分配函数(转)
用Win32SDK编程可以有多种方法分配内存 1.GlobalAlloc 2.HeapAlloc 3.LocalAlloc 4.VirtualAlloc(Ex) 以及标准C/C++中的 5.malloc 6.calloc 7.new 用不同的方法申请了64KB大小空间,以下是返回的地址值(Windo转载 2009-09-12 12:41:00 · 4202 阅读 · 0 评论 -
【转】从Ollydbg说起-----WinDbg用户态调试教程
【文章标题】: 【原创】从Ollydbg说起-----WinDbg用户态调试教程【文章作者】: 笨笨雄【作者邮箱】: nemo314@gmail.com【工具】:Windbg 6.6.7.5;Ollydbg 1.10 我假设你已经掌握Ollydbg的使用,并且希望用WinDbg进行内核级的调试。这篇教程将会以Ollydbg为线索,帮助你尽快掌握WinDbg的使用,并简单介绍它的一些特性。我转载 2009-09-12 12:55:00 · 6667 阅读 · 0 评论 -
WinDbg入门教程
WinDbg 入门教程介绍在我的职业生涯中,我看到我们大多数都是使用Visual Studio来进行调试,而不是用其它许多免费的调试器。你可能有许多理由来使用这样的调试器,比如,在你家里的机器上没装开发环境,但是一个程序一次次的崩溃。其实根据堆栈的dump就可以判断出IE的崩溃是否是由于一个第三方的插件。对于WinDbg,我目前为止还没有发现很好的快速入门的教程。这篇文章结合实例讨论了原创 2009-09-12 13:03:00 · 47640 阅读 · 4 评论 -
通往WinDbg的捷径
原文:http://www.debuginfo.com/articles/easywindbg.html译者:arhat时间:2006年4月13日关键词:CDB WinDbg 导言你钟情什么样的调试器?如果你问我这个问题,我会回答是“Visual Studio + WinDbg”。我比较喜欢Visual Studio那朴实无华且易操作的接口,更喜欢它能迅速把我需要的信息以可视的形式展示出来。但遗憾原创 2009-09-12 13:05:00 · 4132 阅读 · 1 评论 -
中文windbg帮助文档
http://www.dbgtech.net/ 翻译文档WinDbg 帮助中文翻译 (强烈推荐)博客 (原创技术文章)论坛 (欢迎进论坛讨论技术问题)原创软件WinDbg 6.9.3汉化版三个字符串内码工具LiveDump - 本机动态生成完整内核 dump 文件VistaLKD - 动态开启 vista 系统本机内核调试功能两个IDA插件,分别用于向IDA转载 2009-09-12 12:59:00 · 7705 阅读 · 1 评论 -
WinDbg学习笔记(转)
最近项目老大要求我在windows登录过程中嵌入智能卡登录验证,需要对gina.dll动手术。花了3天学习消化几个巨人的代码,站在他们的肩膀上,到现在能够显示自己的登录对话框,能够验证用户名密码并登录成功。但在其后调用WlxStartApplication()时失败, GetLastError()返回0。这下没辙了,仅凭简单的MessageBox无法有效的调试。Microsoft的网站上提供了一个转载 2009-09-12 12:58:00 · 4282 阅读 · 0 评论 -
WTL简介
WTL是一个好东东.它开发的程序都非常短小精悍.对开发WIN32的应用有非常好的好处.它不用MFC开发.但能够快速产生窗口和控件.以文本方式查看主题- 温馨小筑 (http://www.learnsky.com/bbs/index.asp)-- 电脑编程 (http://www.learnsky.com/bbs/list.asp?boardid=6)---- WTL简介 (ht转载 2009-08-29 10:58:00 · 2536 阅读 · 0 评论 -
关于STL的list,vector等用迭代器iterator,用erase删除元素出现的问题。
做个测试,随便搞个类,头文件加入#include #include using namespace std;typedef std::vector CStringVector; 然后在一个可执行到的方法中加入如下代码:CStringVector vctCString;vctCString.push_back(_T("1111"));vctCString.push_back原创 2009-08-29 13:45:00 · 7556 阅读 · 1 评论 -
有道难题之OO
有人提出要用OO的思路来解决算法问题,OK,没问题,eaglet 今天就尝试用OO来实现算法。既然谈OO,我们就重点讨论设计,不重点讨论算法的效率了。 在开始OO之前,我想先说说什么是OO设计。OO设计就是面向对象设计,有人说不要认为你用了C#就OO了,不错用C#照样可以写出面向过程的代码。不过 eaglet 还有补充一下,不要认为你用了class 就OO了。程序是否OO,要看程转载 2009-08-29 22:01:00 · 641 阅读 · 0 评论 -
献给汇编初学者-函数调用堆栈变化分析(转)
跟一个朋友谈堆栈的时候 就写下了这段文字,顺便发到这里给需要的看看吧汇编初学者比较头痛的一个问题////////////////////////////////////////////////////////////////////比如 我们有这样一个C函数#includelong test(int a,int b){ a = a + 1; b = b + 100;转载 2009-08-31 14:55:00 · 668 阅读 · 0 评论 -
程序员成功之路 ——The road ahead for programmer(演讲稿)(转)
来自csdn: http://blog.csdn.net/feixiangzaici/archive/2007/01/22/1490454.aspx一、我很羡慕在座的各位同学,因为你们是中国未来的程序员,而我不是,我一直很遗憾。比尔盖茨曾经 写过一本书叫做《未来之路》The road ahead, 那么今天我选择这样一个题目, the road ahead for programmer,转载 2009-08-31 15:14:00 · 1326 阅读 · 0 评论 -
排序算法小结
排序小结 排序算法是一种基本并且常用的算法。由于实际工作中处理的数量巨大,所以排序算法对算法本身的速度要求很高。 而一般我们所谓的算法的性能主要是指算法的复杂度,一般用O方法来表示。在后面我将给出详细的说明。 对于排序的算法我想先做一点简单的介绍,也是给这篇文章理一个提纲。 我将按照算法的复杂度,从简单到难来分析算法。 第一部分是简单排序算法,后面你将看到他转载 2009-09-09 21:22:00 · 695 阅读 · 0 评论 -
VC++API小查
第2章 窗口处理 2.1 窗口简介 2.2 窗口的创建和撤销 2.2.1 创建普通窗口(CreateWindow、CreateWindowEx) 2.2.2 关闭窗口(CloseWindow) 2.2.3 销毁窗口(DestroyWindow) 2.3 窗口之间的关系 2.3.1 父子关系(SetParent、GetParent、IsChild) 2.3.2 遍历窗口(EnumWindow、Enu转载 2009-09-12 12:44:00 · 1380 阅读 · 0 评论 -
MFC的进程和线程
Win32的进程和线程概念 进程是一个可执行的程序,由私有虚拟地址空间、代码、数据和其他操作系统资源(如进程创建的文件、管道、同步对象等)组成。一个应用程序可以有一个或多个进程,一个进程可以有一个或多个线程,其中一个是主线程。线程是操作系统分时调度分配CPU时间的基本实体。一个线程可以执行程序的任意部分的代码,即使这部分代码被另一个线程并发地执行;一个进程的所有线程共享它的虚拟地址转载 2009-09-12 12:48:00 · 899 阅读 · 0 评论 -
搜狐2010校园招聘第一站北邮笔试题
搜狐2010校园招聘第一站北邮笔试题转自 狼窝 http://blog.csdn.net/haoxing168转载请注明出处 一.填空选择题。(好像是20多分)太多了,忘了,总之是基础的啦,有看代码的题,有个Python脚本的没看懂1.以下协议中,报文头最短的协议是:A.UDP B.TCP C.IP D.以太网帧 2.一个递归算法球时间复杂度,具体原创 2009-09-24 15:05:00 · 5762 阅读 · 1 评论