自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 资源 (6)
  • 收藏
  • 关注

转载 推荐!国外程序员整理的 C++ 资源大全

装载之,http://blog.jobbole.com/78901/如有侵权,请告知,立马删除。标准库C++标准库,包括了STL容器,算法和函数等。C++ Standard Library:是一系列类和函数的集合,使用核心语言编写,也是C++ISO自身标准的一部分。Standard Template Library:标准模板库C POSIX library : POSIX系

2015-11-03 17:33:42 605

原创 C++构造函数之MIL(初始化列表)

注:在C++中,struct和class的唯一区别是默认的访问性不同,而这里我们不考虑访问性的问题,所以下面的代码都以struct来演示。很多人觉得C++难学就是不知道编译器在我们的代码背后做了什么事情,这次我们通过汇编直接看看编译器如何改动我们代码。一、构造函数的作用当定义一个class时,系统会自动调用相应的构造函数,来完成class的初始化工作。如果没有给类定义构造函数,那么编译

2014-12-25 15:00:12 1372

原创 C++ 读取INI文件

我们通常需要用到配置文件,Windows支持读取INI文件。总结为一个类:class CMyINI{public: CMyINI(CString strIniName); ~CMyINI(void); void GetFromIniFileValueINT(LPCTSTR lpAppName, LPCTSTR lpKeyName, INT *pIntValue);

2013-10-16 13:51:05 1258

原创 重启之后写入注册表的内容消失

在网上有一个写入注册表的类,很不错,一直使用。但是发现有一个问题,电脑重启之后,写入注册表的值,就会消失。/*================================================================ * 函数名: CreateKey* 参数: (HKEY hRootKey, LPCTSTR pszPath)* 功能描述:

2013-02-25 15:54:57 3346

原创 软件保护中强制关电源

最近看一个大牛的破解日志,软件中有这样一个小功能:如果检测到被od等调试软件加载,就会触发强制切断电源关机。网上找到代码如下: #include const unsigned int SE_SHUTDOWN_PRIVILEGE = 0x13;int main(){ HMODULE hDll = ::LoadLibrary("ntdll.dll"); typedef

2012-10-10 17:17:44 930

原创 Windows核心编程<读书笔记十七>Applnst程序详解

【文起】最近公司比较忙,耽误了看书。亲爱的一直安慰我不要心急,不要给自己压力,可是好想好想达成目标。爱蟹儿1、程序描述:掌握可执行程序通过定义自己的节来共享变量。运行结果 2、实现原理:定义自己的节,节中定义共享变量,初始化对话框时,变量++,销毁对话框时,变量--。为了显示出来,启用一个定时器,每隔1s刷新一次。 3、定义自己的节#pragma data_se

2012-02-16 23:53:21 594

原创 Windows核心编程<读书笔记十七> 内存映射文件

【文起】从蟹儿家回来了,期待跟蟹儿一起的生活,这周五一起回家,幸福。谢谢宝贝儿一如既往的对我的鼓励和支持。内存映射文件一、内存映射文件可以用来保留一个地址空间的区域,并将物理存储器提交给该区域。内存映射文件可以用于3个不同的目的:1、  系统使用内存映射文件,以便加载和执行.exe和DLL文件。这样可以大大节省页文件空间和应用程序启动运行所需的时间。2、  可以使用内存映射

2012-02-07 23:24:35 902

原创 Windows核心编程<读书笔记十六>线程的堆栈

【文起】亲爱的,思念你在我的身边,没有你的鼓励,我没有办法坚持。线程的堆栈1、每当创建一个线程,系统就会为线程的堆栈保留一个堆栈空间区域,并将一些物理存储器提交给这个已保留的区域。默认大小为1MB,每次提交一个页面的内存。堆栈的起始地址是 0X08000000,堆栈区域和提交给它的所有物理存储器均拥有页面保护属性,PAGE_READWRITE2、在xp下内存地址

2012-01-30 00:07:20 645

原创 Windows核心编程<读书笔记十五>应用程序中使用虚拟内存

【文起】亲爱的,你回家才十多天,可是对我而言却好像是一个多月似的。想你,念你应用程序中使用虚拟内存一:Windows提供了3种进行内存管理的方法:1、  虚拟内存,最适合用来管理大型对象或者结构数组;2、  内存映射文件,最适合用来管理大型数据流(通常来自文件)以及在单个计算机上运行的多个进程之间共享数据;3、  内存堆栈,最适合用来管理大量的小对象。二:地址空间中

2012-01-17 00:23:42 634

原创 Windows核心编程<读书笔记十四>虚拟内存二 VMQuery程序

【文起】思念亲爱的蟹儿,一直没有忘记自己的梦想,奋斗程序最后执行的界面如:思路为:1、对话框启动时,将系统正在运行的进程名放入下拉菜单中。所以在OnInitDialog中,调用函数FindProcessRunningvoid CVMMapDlg::FindProcessRunning(){ BOOL fOk; ToolHelp st_toolhelp; TCHA

2012-01-15 01:23:33 934

原创 Windows核心编程<读书笔记十四>虚拟内存一

14 虚拟内存一【文起】蟹儿回家了,喉咙还有点儿不舒服,舍不得。想跟她一起过春节,奋斗。虚拟内存其实只是虚拟出来的一个地址空间,不是真正的内存。是为了提高程序加载效率而产生的一种技术。1、  系统信息:操作系统的值都是根据主机来的,比如页面大小,分配粒度的大小等。我们可以通过GetSystemInfo函数来检索主机相关的值。可以获取到的值包括:CPU类型以及型号等;CPU页面大小;

2012-01-15 00:21:56 795

原创 Windows核心编程<读书笔记十三>Windows的内存结构

第13章 Windows的内存结构【文起】蟹儿的鼓励和支持,以及有时候的激励,是我能坚持的源泉,爱你宝贝儿。1、  进程的虚拟地址空间每个进程都有自己的虚拟地址空间。32位的进程来说,地址空间为4GB()。而这个只是虚拟地址空间,只是内存地址的一个范围,而不是真正的物理地址空间。2、  虚拟地址空间如何分区每个进程的虚拟地址空间都要划分为各个分区。2.1、NULL指针分

2011-12-29 22:46:18 887

原创 Windows核心编程<读书笔记十二>纤程

纤程【文起】跟蟹儿在一起了,一直处于兴奋、幸福状态,爱蟹儿为了将Unix服务器应用程序移植到windows中,Windows有了纤程。纤程是以用户方式代码来实现的,内核并不知道纤程,且它们是根据用户定义的算法来调度的,所以纤程不是抢占式的调度。使用纤程时,第一步是将现有的线程转化为一个纤程。函数ConvertThreadToFiberPVOID  ConverThreadToFib

2011-12-29 22:45:15 736

原创 Windows核心编程<读书笔记十一>线程池的使用

线程池的使用【文起】已经和蟹儿在一起了,谢谢宝贝儿的支持和鼓励。最近工作比较忙,耽搁了上传笔记1、 多线程应用程序是非常困难的。面临两个大问题:1.1 要对线程的创建和撤销进行管理;1.2 要对线程对资源的访问实施同步。如何让系统自动保护共享资源呢?我们可以通过线程池的方式来实现2、 线程池:2.1 异步调用函数;2.2 按照规定的时间间隔调用函数;2.3 当单

2011-12-29 22:43:07 964

原创 Windows核心编程<读书笔记九>手把手写Queue程序

【文起】亲爱的,谢谢你最近一直在关注租房信息。辛苦了宝贝儿,豆豆只能多看书来回报宝宝,爱你                                                                                                            第九章 Queue程序笔记程序运行情况:1、Queue程序的目的是熟悉两个

2011-12-06 23:09:39 1030 2

原创 Windows核心编程<读书笔记九>线程与内核对象的同步

【文起】亲爱的蟹儿,怀念你的歌声,想听你给我唱歌,期待宝贝儿的歌声。奋斗线程与内核对象的同步1、 用户方式的线程同步与内核对象的线程同步:用户方式:速度快是其优点,但是也有局限性。如互锁函数只能在单值上运行,无法使线程进入等待状态。虽然可以使用关键代码段使线程进入等待状态,但是这样又会容易陷入死锁,因为在等待进入关键代码段时无法设定超时值。内核对象方式:唯一的缺点就是速度慢

2011-12-05 22:30:12 550

原创 Windows核心编程<读书笔记八>线程的同步

【文起】亲爱的蟹儿,想念你就是我坚持下去的动力。为了每天能一起喝红酒,奋斗,嘻嘻用户方式中线程的同步1、  当系统中的线程对同一共享资源进行读取时,就会涉及线程的同步,也就是线程间的相互通信。2、  原子访问:互锁为了保证同一时间内只有一个线程在访问共享资源,我们一般会建立互锁函数。如函数LONG InterlockedExchangeAdd(PLONG plTarget,LO

2011-12-03 21:29:07 537

原创 Windows核心编程<读书笔记七>线程的调度、优先级以及亲缘性 【含有代码】

【文起】亲爱的,已经12月份了,相聚的日子已经很临近临近了。爱你蟹儿,加油线程的调度、优先级以及亲缘性1、  系统只调度可以调度的线程。如果线程的暂停次数大于1,说明该线程已经暂停运行,不会给其安排任何CPU时间。调用含有CREATE_SUSPENDED的CreateProcess或CreateThread函数,都可以创建一个暂停的线程,同时也可以使用SuspendThread和Resum

2011-12-02 20:26:55 796

原创 Windows核心编程<读书笔记六> 线程

【文起】亲爱的,想一觉醒来了我就在你身边,爱你。线程1、  每个进程至少有一个线程。线程包含:1、线程内核对象;2、线程堆栈(用户维护线程执行代码时需要的所有函数参数和局部变量)2、  线程需要的开销比进程少,所以尽量应该设法用增加线程来解决编程问题,而非创建新的进程。当然有些时候多个进程更为合理。3、  编写第一个线程函数。每个线程都必须从进入点函数开始执行,主线程进入点函数是:

2011-11-29 00:18:55 672

原创 Windows核心编程<读书笔记五>手把手写JobLab程序

【文起】亲爱的蟹儿,12点没去睡觉,不乖了,想多看点儿书,回去就能多陪陪你了。爱你根据书上的程序,自己用MFC完成了书上的功能。1、在OnInitDialog() 函数中对IDC_COMBO_PRIORITY 和 IDC_COMBO_SCHEDULING 初始化,并设定定时器函数。CComboBox *pcom = (CComboBox *)GetDlgItem(IDC_COMBO

2011-11-28 00:34:32 2281 2

原创 Windows核心编程<读书笔记五>作业JOB

【文起】蟹儿,有你真好。想你,吻你。亲爱的,等豆豆回去哦jobli.LimitFlags = JOB_OBJECT_LIMIT_JOB_TIME | JOB_OBJECT_LIMIT_PRIORITY_CLASS ; 作业作业可以理解为是进程的容器,对运行的进程做一种限制。对于作业进行限制,有四种类型的枚举:限制类型第二个参数的值

2011-11-25 23:09:17 1676

原创 Windows核心编程<读书笔记四>return exit(0) ExitProcess的不同之处

【文起】爱生活,爱编码,爱蟹儿。为了我跟蟹儿的幸福,奋斗          退出程序的几种方式1、首先说下程序是如何启动的,前面的读书笔记已经详细写了,这儿再重复下程序执行的步骤:A、 检索指向新进程的完整命令行的指针;B、 检索指向新进程的环境变量的指针;C、 对C/C++运行期的全局变量进程初始化;D、 对C运行期间内存单元分配函数和其他底层输入

2011-11-24 00:18:11 1553

原创 Windows核心编程<读书笔记四之程序>显示系统中进程、线程、模块详细信息

【文起】豆子爱蟹儿,没有你,我不可能坚持不懈的去思考,为了我们的幸福奋斗第四章的程序1、        首先理解下面这个函数:HANDLE CreateToolhelp32Snapshot( DWORD dwFlags,DWORD th32ProcessID)dwFlags的取值如下:u  TH32CS_INHERIT - 声明快照句柄是可继承的。 u  TH32CS_

2011-11-24 00:03:14 1603 3

原创 Windows核心编程<读书笔记四> 进程的概念

【文起】豆子爱蟹儿,没有你,我不可能每天坚持下去,为了你和我们的爱 进程1、  进程和线程:进程通常被定义为一个正在运行的程序实例。由两个部分组成:*操作系统用来管理进程的内核对象;*地址空间,包含所有可执行模块或DLL模块的代码和数据,还包含动态内存分配的空间。进程是不活泼的,必须拥有线程来执行包含在进程的地址空间中的代码。创建一个进程时,系统将会自动创建一个线程,称为主

2011-11-20 21:16:49 551

原创 windows核心编程<读书笔记三>内核对象

【文起】蟹儿的爱一直伴随着,奋斗!内核对象1、  定义:内核对象可以供系统和应用程序使用来管理各种各样的资源,比如线程、进程、文件等。内核对象就是内核分配的一个内存块,且只能由该内核来访问。这样做是为了确保内核对象结构保持状态的一致。而操作内核对象,只能通过Microsoft提供的一组函数。2、  内核对象的使用计数:内核对象是由内核所拥有的,而非进程所拥有的。也就是说,即

2011-11-19 21:01:31 437

原创 Windows核心编程<读书笔记二>Unicode和ANSI

【文起】蟹儿的爱一直激励着我,爱蟹儿,爱编码 单字节和双字节字符集1、早期在双字节字符集中,字符串中的每个字符可以包含一个字节或者两个字节。如:日文中的汉字,第一个字符在0x81与0x9F之间或者在0xE0与0xFC之间,那么必须观察下一个字节才能确定字符串的这个完整字符。如果只是调用strlen函数,无法真正了解字符串中究竟有多少个字符,只能给出到达结尾的0之前有多少字节。所

2011-11-18 21:42:31 582

原创 windows核心编程<读书笔记一>---重写Onchar函数

【文起】:蟹儿的爱是我坚持的动力,为了你和我们的幸福第一章中,书上有一个程序用例,在一个Edit中输入错误码ID,另一个Edit中显示错误码描述。自己写完发现错误码ID能输入所有的字符,这显然是不对的,就想到了去限制只能输入数字和delete。       MFC中可以通过设置Eidt属性为NUM解决。但是我想到如果要求可以输入小数点或者负号呢?在网上搜了下,看到了MFC子类化。这

2011-11-18 00:29:24 2241 1

原创 windows核心编程读书笔记一

1、windows系统中,可以调用GetLastError来获取API函数的错误ID。同时,windows提供了一个FormatMessage函数来将错误码ID转化为错误码描述。在winerror.h 有详细的错误码描述,如下所示。每个错误码包含三个部分// MessageId: ERROR_FILE_NOT_FOUND

2011-11-16 12:18:35 649 2

原创 面试(南京文思创新软件)

09年2月25号,第一次参加公司面试。不多说,直接奔主题吧。    首先是参加笔试,本人报的是C++工程师。    笔试(一周之前了,记不太清)比较简单的:    选择题:     const、vitual、指针的用法,多态性、虚函数。     填空:  1. 数据结构知道中序、后序,求前序。  2.智力题(简单的找规律)  3.给程序填结果题(考i++与+

2009-03-04 21:11:00 4786

XListCtrl_demo_VS2013支持x86_x64

1、VS2013环境下可编译 2、x64系统可以编译 3、部分post build没有修改 不过不影响编译

2014-10-21

极好的编程工具se下载链接+破解程序

SlickEdit代码编辑器小巧迅速,可以在多个操作系统环境下完成,本次分享的是win32下安装程序的下载链接以及破解程序。 请不要用户商业用途。

2013-10-30

通过CBrowser类自己实现浏览器

可以实现自己的浏览器,对于熟悉浏览器的操作是有帮助的

2013-10-15

字节对齐详解

详细描述了字节对齐的知识,对于养成较好的编程习惯有帮助

2012-02-16

程序员面试宝典(孔文达)

程序员面试宝典,PDF格式。包含微软,中兴、华为、神州数码等公司的面试经验。主要是C++,面试智力题,常见笔试题,面试题等

2009-05-29

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除