自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

孤云出岫,去留一无所系;朗镜悬空,静躁两不相干。

  • 博客(21)
  • 资源 (9)
  • 收藏
  • 关注

原创 内存管理(二)

探索虚拟内存   1.0 系统信息    GetSystemInfo, GetNativeSystemInfo.想了解64位windows提供的32位模拟层,参阅:http://www.microsoft.com/whdc/system/platform/64bit/wow64_bestprac.mspx.   1.1 虚拟内存状态    GlobalMemoryStatus可以获

2010-05-29 15:35:00 1546 1

原创 内存管理(一)

一. Windows内存管理体系结构1.0 进程的虚拟地址空间     对于32位进程虚拟地址空间大小为4GB,64为16EB(exabytes,百亿字节),每个进程都有自己的私有地址空间,要想正常访问数据需要把物理存储器分配或映射到相应的地址空间。    说明:在windows中正在运行的线程看不到属于操作系统本身的内存,这意味着它不能无意间访问到操作系统的数据。1.1 虚拟地址

2010-05-29 11:12:00 1118

原创 结构化异常

终止处理程序      1. (structured exception handling, SEH)结构化异常处理。      不同的编译器针对SEH的实现不尽相同,这里采用Microsoft Visual C++ 编译器规定的语法。      说明:不要混淆结构化异常处理与C++异常处理,c++异常处理在形式上表现为使用关键字catch和throw,这和结构化异常处理的形式不同。M

2010-05-27 22:35:00 814

原创 What static_cast is actually doing

What static_cast http://www.codeproject.com/kb/cpp/static_cast.aspx翻译:http://www.vckbase.com/document/viewdoc/?id=1651

2010-05-27 21:46:00 604

转载 关于Lempel-Ziv压缩算法的笔记

 Lempel-Ziv, 简称LZ, 拥有LZ77, LZ78, LZW几种不同的演变算法!LZ是一种典型的字典型压缩算法, 巧妙的利用字典, 减少信息量。例子:原始编码为: 1001011011010101011现在有空字典一个, 首先由第一的bit开始, 索引1对应1,因为字典中没有0这个元素, 所以索引2对应0, 第三个bit, 0已经出现在字典中, 我们推后一位01,没有出

2010-05-26 13:45:00 7045

原创 动态链接库函数启动器Rundll32 

HMODULE g_hmodDLL;BOOL APIENTRY DllMain( HANDLE hModule,                        DWORD  ul_reason_for_call,                        LPVOID lpReserved      ){ if (ul_reason_for_call == DLL_PROCESS_ATTA

2010-05-26 10:40:00 1014

转载 VC++中调试Release版本

自:http://www.china-askpro.com/msg36/qa35.shtml VC++中调试Release版本时怎样设置断点 编号:QA003535 建立日期: 2000年11月13日 最后修改日期:2001年12月11日 所属类别: C/C++ - 其他方面 打听:     操作系统: win9x     编程工具: VC6.0     问题: VC++

2010-05-26 09:09:00 1286

原创 动态链接库(三)

DLL注入和API拦截1.0 SetWindowLongPtr(hwnd, GWLP_WNDPROC,MySubclassProc);改变窗口的行为。如果打算从同一个进程中的窗口派生子类窗口,那么应该利用SetWindowSubclass,GetWindowSubclass,RemoveWindowSubclass,以及DefSubclassProc,参阅Subclassing Contr

2010-05-25 00:12:00 1076

原创 线程局部存储

     窗口附加字节(window extra bytes)通过使用SetWindowWord和SetWindowLong函数来将数据与一个指定的窗口关联起来。可以使用TLS将数据与一个正在执行的指定线程关联起来(例如我们可以将创建线程的时间与线程关联起来);然后当线程结束的时候可以知道线程的运行的时间。     c/c++运行库使用了TLS.     动态TLS:四个使用函数Tls

2010-05-24 00:16:00 607

原创 A DCOM Tutorial

A DCOM Tutorial, Step 1http://www.codeproject.com/KB/COM/hellotutorial1.aspx Questions and Answershttp://www.codeproject.com/KB/COM/hellotutorialqa.aspx A DCOM Tutorial, Step 7http://www

2010-05-22 01:55:00 519

原创 COM Guide

The COM Programmers Cookbookhttp://msdn.microsoft.com/en-us/library/ms809982(v=MSDN.10).aspx The COM Macro-Architecture Topologyhttp://www.codeproject.com/KB/COM/macrotopomain.aspx Introd

2010-05-22 01:49:00 670

转载 ATL中的RGS文件介绍

VC的ATL向导会生成com对象注册用的rgs文件。如果程序中有想写到注册表中的地方,可以手工编辑这个脚本,可以省去调用一堆操作注册表的API。关于rgs的详细规则,MSDN上面有,搜索ATL Registrar这个主题即可以看到,下面只是一点简单的介绍:HKCR    //表示下面的注册表项都写到HKCR下面   { SecEdit.EditCtrl.1 = s EditCtrl Cl

2010-05-22 01:19:00 2980

原创 The Complete Guide to C++ Strings

The Complete Guide to C++ Strings, Part I - Win32 Character Encodings:http://www.codeproject.com/kb/string/CPPStringGuide1.aspx The Complete Guide to C++ Strings, Part II - String Wrapper Cl

2010-05-22 01:07:00 749

原创 动态链接库(二)

DLL高级技术    1.1 显示载入DLL模块:LoadLibrary,LoadLibraryEx.两个函数的返回值HMODULE表示文件映像被映射到的虚拟内存地址,等价于HINSTANCE(DllMain入口点函数所接收的参数),LoadLibraryEx函数有两个额外的参数:hFile(保留应为NULL),dwFlags:    DONT_RESOLVE_DLL_REFE

2010-05-21 22:26:00 1801

转载 VC中缺省库冲突的解决

VC在编译程序时有两个习惯:1、在从头开始编译时(即生成makefile时),将源文件名按字母排序后,依次处理;2、一边编译一边决定需要哪些缺省库。 它的这些习惯有时会造成奇怪的编译错误,例如项目中有两个文件:charutil.cgbuni.cpp其中gbnni.cpp用到了MFC库。编译器先处理charutil.c,然后觉得需要link一个C Runtime库,根据项目设置选择了LIBC

2010-05-21 00:06:00 609

转载 介绍Windows的窗口、消息、子类化和超类化

介绍Windows的窗口、消息、子类化和超类化这篇文章本来只是想介绍一下子类化和超类化这两个比较“生僻”的名词。为了叙述的完整性而讨论了Windows的窗口和消息,也简要讨论了进程和线程。子类化(Subclassing)和超类化(Superclassing)是伴随Windows窗口机制而产生的两个复用代码的方法。不要把“子类化、超类化”与面向对象语言中的派生类、基类混淆起来。“子类化、超类

2010-05-21 00:00:00 812

转载 在VC中编译、运行程序的小知识点

1、Run-Time LibraryRun-Time Library是编译器提供的标准库,提供一些基本的库函数和系统调用。我们一般使用的Run-Time Library是C Run-Time Libraries。当然也有Standard C++ libraries。 C Run-Time Libraries实现ANSI C的标准库。VC安装目录的CRT目录有C Run-Time库的大部分源代码

2010-05-20 23:58:00 387

原创 动态链接库(一)

    一  概述      DLL实际上是一组源代码模块,提供一些供其他DLL或应用程序调用的函数。在使用DLL之前,必须将DLL映像文件映射到调用进程的相对应的地址空间,有两种载入方法:隐式链接和显示链接。     隐式链接在进程创建的时候载入,一个新创建的进程只有在将可执行模块和所有的DLL模块隐射到进程的地址 空间后进程的主线程才开始执行,可以通过#pragram commen

2010-05-20 23:19:00 565

原创 创建浏览对话框

 BROWSEINFO   bi;                         //BROWSEINFO结构体    TCHAR   szBuffer[512]="";    TCHAR   szFullPath[512]="";    bi.hwndOwner   =   m_hWnd;       //m_hWnd你的程序主窗口    bi.pidlRoot   =   NULL;    

2010-05-20 17:54:00 507

转载 VS2005项目的安装与布署

一、VS2005制作安装包的“系统必备”选项“系统必备”,通过该选项,可以选择部署应用程序需要预先安装的组建,包括。net fx和MDAC等。“系统必备”选项中可以不仅可以选择需要预安装的组件,而且提供了“安装源”的自由选择。打开系统项目属性,选择发布->系统必备,如下图:<img onclick="function onclick(){function onclick(){win

2010-05-14 12:28:00 668

转载 奇妙的Base64编码

Base64是网络上最常见的用于传输8Bit字节代码的编码方式之一,在发送电子邮件时,服务器认证的用户名和密码需要用Base64编码,附件也需要用Base64编码。下面简单介绍Base64算法的原理,由于代码太长就不在此贴出Base64要求把每三个8Bit的字节转换为四个6Bit的字节(3*8 = 4*6 = 24),然后把6Bit再添两位高位0,组成四个8Bit的字节,也就是说,转换后的

2010-05-13 18:48:00 1423

jQueryAPI-100214.chm

jQueryAPI-100214.chm jQueryAPI-100214.chm

2011-04-21

jquery-1.4. jquery-1.4.rar jquery-1.4.rar

jquery-1.4.rar jquery-1.4.rar jquery-1.4.rar

2011-04-21

Source Insight 3.50.0064 (含注册机).

Source Insight 3.50.0064 (含注册机).

2010-06-10

深入解析windows操作系统第四版(英文chm全)

深入解析windows操作系统 第四版 英文版 CHM 格式

2009-03-21

Windows Shell扩展编程完全指南

Windows Shell扩展编程完全指南

2008-10-15

API函数大全(chm)

API函数手册(分类介绍,共803个API函数)。

2008-10-07

VC 6.0 中文版语言参考手册

VC 6.0 中文版语言参考手册,是WDL格式的。

2008-10-07

C++.Standard.Library.[侯捷].

C++ 標準程式庫(C++ Standard Library)

2008-09-29

VC++实用教程PPT课件

vc++实用教程配套的课件,入门的一本好书,电子工业出版社的。

2008-09-29

空空如也

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

TA关注的人

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