E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
windows核心编程
windows核心编程
第二章阅读
1。windows帮助开发人员本地化应用程序 2.缓冲区溢出错误(这是处理字符串的典型错误)已经成为针对应用程序乃至操作系统的各个组件发起安全攻击的媒介;(使用microfofe新的C库函数来防止应用程序的缓冲区溢出错误) 3使用Unicode字符会增强应用程序的执行性能。并未本地化工作奠定基础。 4UTF-16一般现在使用的。UTF是Unicode转换格式的简写UTF-8中解释为,有的字符
·
2015-10-30 13:42
windows
读
Windows核心编程
-2-字符和字符串
(2)字符和字符串处理 字符编码 ANSI为单字节编码,所以最多表示256个符号,这远远不够,因此双字节字符集(double-byte character set, DBCS)应运而生,其原理是当第一个字节在某一范围内时,需要继续检测第二个字节才能确定这两个字节代表什么符号,以日本字为例,首字节在0x81~0x9F或0xE0~0xFC,那么就需要检测下一个字节。这样的话,有的符
·
2015-10-30 11:17
windows
读
Windows核心编程
-3-内核对象
(3)内核对象 何为内核对象 内核对象是Windows操作系统内核分配和访问的对象,每个内核对象对应于一个内存块,该内存块只能由内核分配,访问和释放。该内存块是一个数据结构,维护着与对象相关的信息。少数成员是所有内核对象所共有的,如:安全描述符和使用计数,其他多数成员则是每种内核对象所特有的。 内核对象有很多种,如:访问令牌,事件,文件,文件映射,作业,互斥体,管道,进程,
·
2015-10-30 11:17
windows
.NET程序员迈向卓越的必由之路
如果真有人不知道Jeffrey Richter,那就请先来看看下面这段话吧(刚才随便搜到的): “最近由于工作的缘故,又翻出Jeffrey Richter的《
Windows核心编程
》(英文名《Programming
·
2015-10-30 10:07
.net
使用线程池 Thread Pooling
《
Windows核心编程
》中第11章讲到线程池的使用,可惜,总是看得不大懂。是翻译的问题还是我理解的问题?
·
2015-10-30 10:53
thread
《
Windows核心编程
》笔记4 --- 线程
第四章:线程 上面提到过,进程有两部分构成:一个是进程内核对象,一个是地址空间。同样,线程也由两部分构成: 1.线程内核对象。 2.线程的堆栈。 进程的特性是不活泼的,它从来不执行任何代码。进程只
·
2015-10-30 10:52
windows
《
Windows核心编程
》笔记3 --- 进程
接上....... 二 进程 2.创建进程 使用创建进程函数,即可创建相应的进程: BOOL CreateProcess( PCTSTR pszApplicationName, PTSTR pszCommandLine,
·
2015-10-30 10:51
windows
《
Windows核心编程
》笔记2 --- 内核对象二
续上...... 内核对象如何在进程边界共享? 1.对象句柄的继承 当进程具有父子关系,就能使用对象句柄的继承性。父进程有一个或多个对象句柄,并且父进程可以决定生成一个子进程,为子进程赋于父进程的内核对象的访问权。 具体实现: 在安全描述符中指定,如: &n
·
2015-10-30 10:51
windows
《
Windows核心编程
》笔记1 --内核对象
由于.net Framework中很多地方需要用到以前Win32中的一些知识点,不了解其中的来胧去脉学习起来会比较吃力,于是准备用点时间补一下Windows 核心方面的知识点,参考书本是经典的<
Windows
·
2015-10-30 10:50
windows
WinSock2 I/O六模型之六( I/O完成端口)
参书籍:《
Windows核心编程
》《Windows网络编程》/*Winsock2 IO完成端口*/
曾劲松
·
2015-10-29 22:00
读
Windows核心编程
-4-进程
(4)进程 进程是程序运行的一个实例,由以下两部分组成: 进程内核对象:操作系统用它来管理和统计进程信息; 进程地址空间:所有进程执行所需要的代码和数据存在这个地址空间中。 进程是惰性的,进程要做任何事都需要通过线程在其上下文环境中执行来实现。当一个进程创建后,操作系统也同时为其创建一个主线程(primary thread),主线程又会创建其他线程。当
·
2015-10-28 08:47
windows
《
windows核心编程
》- 线程栈
当系统创建线程的时候,会为线程栈预订一块地址空间区域,并给该区域调拨一些物理存储器。默认会预订1MB的地址空间并调拨两个页面的存储器。但是在构建 应用程序的时候可以改变这个默认值 在构建应用程序的时候链接器会把栈的大小写入到exe和dll文件的pe文件头中,当创建线程的时候会根据PE文件头中的大小来预订空间区域。在调用CreateThread或_beginthreadex的时候开发人员可以指定
·
2015-10-28 08:30
windows
《
windows核心编程
》 17章 内存映射文件
内存映射文件主要用于以下三种情况: 系统使用内存映射文件载入并运行exe和dll,这大量节省了页交换文件的空间以及应用程序的启动时间 开发人员可以使用内存映射文件来访问磁盘上的数据文件。这使得我们可以避免直接对文件IO操作和对文件内存进行缓存 进程间通讯 17.1 映射到内存的可执行文件和DLL 当一个线程调用CreateProcess的时候,系统会执行收入步骤:
·
2015-10-28 08:30
windows
#pragma 用法
今天刚开始调试
windows核心编程
中的例程就感觉十分难懂,原因是自己的c++基本功力实在太弱了 首先在windows编程的过程中大量的使用宏的问题。
·
2015-10-27 16:48
用法
《
windows核心编程
》
这段时间把《
windows核心编程
》给读完了,感觉很爽,不愧为一本经典书籍呀。
·
2015-10-27 14:35
windows
进程间共享句柄三种方式
windows核心编程
第三章中,句柄的共享讲了三种方式 1、在创建句柄的时候,设置可继承,在创建进程时,让子进程继承句柄, 然后通过各种途径(如命令行参数、环境变量、发送消息)让子进程知道即可
·
2015-10-27 11:18
进程
增强资源管理器右键功能,含源代码
最近一直在看C++,一路 c++primer -》effective c++ -》深入浅出mfc -》windows程序设计-》
windows核心编程
·
2015-10-27 11:18
源代码
《
Windows核心编程
》学习笔记(9)– 在win7或者vista系统下提升一个进程的运行权限
win7或者vista默认运行程序是在受限制的环境下运行的,以减轻病毒对于系统的破坏。那么我们怎样才能提升一个进程的权限以至让它在 管理员模式下运行。当然CreateProcess函数没有提供这个功能。相反我们需要调用的是ShellExecuteEx函数: BOOL ShellExecuteEx(LPSHELLEXECUTEINFO pExecInfo); &n
·
2015-10-26 15:35
windows
Windows核心编程
小结3
内存映射和堆栈 内存映射文件 内存映射文件可以用于3个不同的目的: 系统使用内存映射文件,以便加载和执行.exe和DLL文件。这可以大大节省页文件空间和应用程序启动运行所需的时间。 可以使用内存映射文件来访问磁盘上的数据文件。这使你可以不必对文件执行I/O操作,并且可以不必对文件内容进行缓存。 可以使用内存映射文件,使同一台计算机上运行的多个进程能够相互之间共享数据。Windo
·
2015-10-24 09:12
windows
Windows核心编程
小结1
这本书绝对经典,看看定会增加不少知识。当然这本书有很多东西比《Windows程序设计第五版》中的更加详细。 1、Unicode:宽字节字符集 这是一个国际的字符标准,16位,最大可支持65000个字符,完全可以应付全球所有语言。在Windows实际使用中,可以使用Micrsoft公司的API,也可以定义两个宏(UNICODE AND _UNICODE),就可以修改然后重新编译源文件。在实际使
·
2015-10-24 09:10
windows
windows核心编程
第三章阅读 内核对象
1.每个内核对象都只是一个内存块,它由操作系统内核分配,并只能由操作系统内核访问。 这个内存块是一个数据结构,其成语维护着与对象相关的信息。 少数成员(安全描述符和使用计数等)是所有对象都有的,但其他大多数成员都是不同类型的对象特有的。 2.由于内核对象的数据结构只能由操作系统内核访问,所以应用程序不能再内存中定位这些数据结构并直接修改其内容。 由于应用程序不能更改内核对象,所以windo
·
2015-10-23 09:31
windows
Windows API 进程状态信息函数
话说第一次遇到这个ToolHelp函数时我在看《
windows核心编程
》时遇到的。那时还仅仅是简单的看了一下,并未深入。
·
2015-10-23 08:23
windows
windows终止处理程序( __try __finally) 简单解析
本文大部分来自《
windows核心编程
》。
·
2015-10-23 08:34
windows
sudami和achillis对初学者的建议
先广泛打基础,比如C/ASM/C++/MFC,再学习
Windows核心编程
,对R3上的一些开发有所熟悉,再系统的学习《操作系统》等书籍,理解整个系统的原理,构架,实现。 3.
·
2015-10-23 08:33
初学者
读书笔记——
Windows核心编程
(15)在应用程序中使用虚拟内存
微软的Windows提供了三种机制对内存进行操控 1 虚拟内存(最适合管理大型对象数组或大型结构数组) 2 内存映射文件(大型数据流/文件,共享数据) 3 堆(大量的小型对象) 预订地址空间区域VirtualAlloc PVOID VirtualAlloc(PVOID pvAddress,//内存地址,传NULL则由系统指定位置,必须始终位于进程的用户分区中,如果不是分
·
2015-10-21 13:16
windows
读书笔记——
Windows核心编程
(13)Windows内存体系结构
对于32位进程(0x0000 0000~0xFFFF FFFF),有4GB的地址空间。 每个进程都有自己专有的地址空间,当进程的各个线程运行时,它们只能访问属于该进程的内存。 这4GB其实是虚拟地址空间,不是物理存储器。 为了能够正常读写数据,需要把物理存储器分配或者映射到相应的地址空间,否则将发生访问违规错误(Access Violation)。 x86 32位 Window
·
2015-10-21 13:16
windows
读书笔记——
Windows核心编程
(2)禁止C运行时触发的所有Debug Assertion Failed对话框
1 定义一个函数 void _invalid_parameter( const wchar_t * expression, const wchar_t * function, const wchar_t * file, int line, uintptr_t pReserved ); 2 注册这个函数
·
2015-10-21 13:11
windows
读书笔记——
Windows核心编程
(2)比较字符串
1. CompareString 以符合用户语言习惯的方式,EX版本使用UNICODE int CompareString( __in LCID Locale, __in DWORD dwCmpFlags, __in LPCTSTR lpString1, __in int cchCount1, __in LPCTSTR lpStrin
·
2015-10-21 13:10
windows
读书笔记——
Windows核心编程
(8)Interlocked系列函数
先让我们来复习下小学知识 A+B=C//式中A为被加数,B为加数。 A-B=C//式中A为被减数,B为减数。 再让我们来明确一个知识点:返回值为void的Windows函数意味着一定会执行成功。 ------------------by wls------------------我是可爱的分割线------------------by wls------------------
·
2015-10-21 13:10
windows
读书笔记——
Windows核心编程
(8)Interlocked单向链式栈
SLists使用了无锁算法来保证原子同步,以提升系统性能,避免了诸如优先级挂和互锁的问题。 注意:所有的链表项必须对齐到MEMORY_ALLOCATION_ALIGNMENT。否则会出现奇葩的错误。 (PS:看英文MSDN的API解释,我感觉这是从前插又从前取,是个栈的样子。) InitializeSListHead,创建一个空栈 void WINAPI Initial
·
2015-10-21 13:10
windows
几种C++ std::string和std::wstring相互转换的转换方法
string和std::wstring相互转换的转换方法 第一种方法:调用WideCharToMultiByte()和MultiByteToWideChar(),代码如下(关于详细的解释,可以参考《
windows
·
2015-10-21 12:06
String
windows核心编程
-----Unicode和Ansi字符串的转换
使用MultiByteToWideChar将多字节字符串转换为宽字符串。如下所示: int MultiByteToWideChar( UINT uCodePage, DWORD dwFlags, PCSTR pMultiByteStr, int cbMultiByte,
·
2015-10-21 12:26
windows
关于Windows
关于《
WINDOWS核心编程
》这本书,看了许多次了。
·
2015-10-21 12:28
windows
类型转换重载(conversion operators)
以前在看<
windows核心编程
>的时候,看到一个很奇怪的重载:operator Proc* () 那时对c++了解得还不多,看到这个写法费解了老半天,没有参数,没有返回值
·
2015-10-21 12:09
conversion
《
Windows核心编程
》の防御性编程--断言
防御性编程是提高软件质量技术的有益辅助手段,它的主要思想是:子程序应该不因传入错误数据而被破坏,哪怕是由其他子程序产生的错误数据。防御性编程关键在于严格的输入检查、预期的错误处理方法。下面介绍使用断言来进行防御性编程。 断言通常是一个例程(routine)或一个宏(macros),断言通常包含有两个参数:布尔表达式和消息。布尔表达式的反面是一个错误,C标准库提供了一个assert宏,它只带有一个
·
2015-10-21 12:38
windows
《
Windows核心编程
》の托盘程序的编写(CSystemTray类)
研究下托盘程序,或者说:任务栏通知区域(Tray)图标。 很多应用程序在系统Shell任务栏通知区域有图标提示。通知区域图标适用于长时间运行但无需用户过多操作,并在有事件发生时可随时根据情况通知用户的应用程序(如即时通信工具、下载工具等)。 使用任务通知区域图标的好处如下: 1) 窗口程序可以在后台运行,窗口退出,但是程序仍然在运行,减少窗口数量,便于用户操作; 2) 窗口最小
·
2015-10-21 12:28
windows
socket速率问题相关
基于visual-c++之
windows核心编程
代码分析(29)ICMP实现远程控制: http://wenku.it168.com/d_000646629.shtml TCP发送速度的控制的问题
·
2015-10-21 11:33
socket
使用内存映射文件来提高你程序的性能
本人在学习《
WINDOWS核心编程
》的时候对JEFFREY大师提到的一个小程序写了两个版本来比较性能,该程序的原始需求是这样的:对一个大文件进行倒序,也就是将一个文件头变成尾,尾变成头。
·
2015-10-21 10:09
性能
《
Windows核心编程
》之五 --线程的同步
用户方式中线程的同步 1.线程间的互锁 有时线程的某些步骤需要以原子的方式来进行操作,尤其涉及到线程对内存,资源的访问的时候。Windows中,解决这个问题的办法之一就是对线程中某些操作进行互锁。那么这些操作就会不被中断而进行。
·
2015-10-21 10:13
windows
《
Windows核心编程
》之六 --线程的同步(2)
7.等待定时器内核对象 等待定时器内核对象是在某个时间或某个规定的时间间隔内发出自己的信号通知内核对象。它们通常是用在:在某人时间执行某个操作。 创建定时器内核对象: HANDLE CreateWaitableTi
·
2015-10-21 10:13
windows
C 游戏所要看的书
2、C++标准程序库自修教程与参考手册 3、Windows程序设计第5版 4、MFC windows程序设计第2版中文版 5、VC++深入详解 6、MFC深入浅出 7、Effictive STL 8、
Windows
·
2015-10-21 10:37
游戏
[
Windows核心编程
]32bit程序在64bit操作系统下处理重定向细节[1]
这段时间,都在做Ring3层的普通32bit程序兼容64bit操作系统的代码修改,在此记录修改和学习心德。编程领域太广, 任何人经历有限,本人不是专家,所以我一贯原则是: 用到的时候,才去研究,在去记录。只要个人的基础知识扎实,吸收一些新的东西,还是蛮顺利的。1. 64bit操作系统的重定向机制以及目的 在64bit操作系统中,为了无
·
2015-10-21 10:21
windows
把我弄混淆的操作符重载
《
windows核心编程
》里有看到这样一句话:g_mmf[dwOffset*1024]=(BYTE)GetDlgItemInt(hWnd,IDC_BYTE,NULL,FALSE);CMMFSparseg_mmf
dmxjmao
·
2015-09-05 17:17
windows开发
把我弄混淆的操作符重载
《
windows核心编程
》里有看到这样一句话:g_mmf[dwOffset*1024]=(BYTE)GetDlgItemInt(hWnd,IDC_BYTE,NULL,FALSE);CMMFSparseg_mmf
dmxjmao
·
2015-09-05 17:17
windows开发
windows运行一个.exe的过程
来自于《
windows核心编程
》构建dll:链接时,将(我本地在C:\ProgramFiles(x86)\MicrosoftVisualStudio10.0\VC\crt\src)的_DllMainCRTStartup
dmxjmao
·
2015-09-04 10:34
windows开发
个人笔记
使用MC.EXE定义错误码
《
Windows核心编程
》第一章最后提到:我们可以向自己的模块添加错误代码,说用MC.EXE工具。
dmxjmao
·
2015-09-03 11:29
windows开发
主线程的退出问题
摘录自:http://bbs.csdn.net/topics/370193909
windows核心编程
中有讲的,第69页:“Windows Platform SDK文档声明,进程要等到所有线程终止运行之后才终止运行
Lostyears
·
2015-09-02 10:00
Windows,C/C++_字符串转换_MultiByteToWideChar和WideCharToMultiByte的正确使用方法及参数详解
MultiByteToWideChar和WideCharToMultiByte的正确使用方法及参数详解本文内容摘自《
Windows核心编程
》(第五版)Page26。
u010003835
·
2015-08-12 20:00
C++
c
windows
Windows系统线程池+利用windows自带的线程池
这两天一直在看《
Windows核心编程
》,学到了不少东西,但是同别的英文经典一样,中文版经常让我感觉不知所云,我很不喜欢书中的例子都是用C++来写,并且都有图形界面,这阻碍了初学者理解问题的本质,并不是每个人都熟悉
ctiyman
·
2015-08-11 16:54
windows多线程同步互斥--总结
秒杀多线程面试题系列参考JustDoIT——大部分内容《
Windows核心编程
》线程同步对象速查表对象何时处于未触发状态何时处于触发状态WaitForSingleObject副作用内核对象自动重置事件ResetEvent
山里来的鱼
·
2015-07-21 22:00
上一页
5
6
7
8
9
10
11
12
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他