自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

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

翻译 C#汉字转换拼音技术详解

private static readonly Dictionary CodeCollections = new Dictionary {    { -20319, "a" }, { -20317, "ai" }, { -20304, "an" }, { -20295, "ang" }, { -20292, "ao" }, { -20283, "ba" }, { -20265, "bai" }

2012-11-02 08:42:20 710

转载 .NET TEXTBOX 动态提示功能

跟google你输入关键字,动态显示大概条数的提示,首先看下效果第一步css:查看代码 复制到剪贴板#dSuggest {       z-index:0;       position:absolute;       background-color:#ffffff;   }   #sug {       list-style:none;       bord

2012-02-01 16:56:40 208

原创 tempdb对SQL Server数据库性能有什么样的影响

tempdb内在运行原理与其他SQL Server数据库不同的是,tempdb在SQL Server停掉,重启时会自动的drop,re-create. 根据model数据库会默认建立一个新的8MB(mdf file:8MB;ldf file:1MB, autogtouth设置

2011-10-18 13:51:41 317

原创 SQL中varchar与Nvarchar区别

varchar在SQL Server中是采用单字节来存储数据的,nvarchar是使用Unico来存储数据的.中文字符存储到SQL Server中会保存为两个字节(一般采用Unico编码),英文字符保存到数据库中,如果字段的类型为varchar,则只会占用一个字节,而如果字段 的

2011-10-18 11:57:48 131

原创 SQL,CLR

using System;using System.Collections.Generic;using System.Text;using System.Data.SqlTypes;using System.Text.RegularExpressions;us

2011-09-15 16:45:10 170

原创 在SQL Server 2008中调用.net,dll

T-SQL的在执行普通的查询的时候是很高效的,但是在执行循环,判断这样的语句的时候效率就不那么的高了。这时可以借助CLR了,我们可以在SQL Server 2008中扩展C#程序来完成循环等过程式的查询,或者其他SQL不便实现的功能。这个随笔中将介绍在SQL Server中扩展C

2011-09-15 16:43:28 255

原创 图解ssis包配置动态路径加批量循环导入xls文件

先在控制流连接管理器里面建立个ado.net连接管理器. 2 在连接里面选择 连接access的 jet 4.0 ole db provider 3在 全部 里面把 高级中 exrended properties 改为 Excel 5.0 4在 连接管理器里面

2011-07-04 13:42:17 232

原创 基于WCF的通道网络传输数据压缩技术的应用研究

<br />本文及程序不是介绍WCF怎么用,而是研究如何在WCF通信时的通道两端自动进行数据压缩和解压缩,从而增加分布式数据传输速度。<br /><br />而且,这个过程是完全透明的,用户及编程人员根本不需要知道它的存在,相当于HOOK在两端的一个组件。可以使用中网络带宽较小的网络环境中。当WCF在两个实体间通讯的时候,便自动创建一个信息通道转接通讯,这个消息包含数据请求和相应。WCF使用特殊的编码器将请求和响应数据转换成一系列的字节。<br /><br />    我所带的项目里遇到大文件分布式传输问题

2011-04-08 16:45:00 380

原创 C#网页版代码生成器

<br />C#网页版代码生成器<br />       C#网页版代码生成器,还在更新中....以前修复过ASPNETPAGER分页控件的网页版存储过程代码生成器,学到了一种思维,替换字符串,因此有空就写下了这个。仅供参考,本人水平还有待提高,写这个完全是兴趣,写的不好的地方不要骂我就行,呵呵。<br />存储过程代码如下,参考MSSQL SERVER文档。存储过程代码 1 <br /> 2 ALTER proc [dbo].[GetTablesFromDatabase]<br /> 3 @dataB

2011-02-09 14:24:00 259

原创 多线程爬虫

<br />多线程爬虫<br /><br /> <br /> <br />参数:private static int webDepth = 2;//爬虫深度。主页的深度为1,设置深度后超过该深度的网页不会抓取。<br />        private int intThreadNum = 10;//线程数。开启的线程数。<br />抓取时也会在程序源文件目录下生成一个report.txt文件记录爬虫的运行情况,并在抓取结束后生成一个fileindex.txt文件维护网页文件索引。 <br />本程

2011-01-11 16:22:00 508

原创 线程池详解

<br /><br />在这里你可以学到Microsoft研究CLR实现线程池的原理机制,从而更灵活的处理CLR在实际代码应中线程池的问题,下面我们来看看吧。<br />CLR教程之线程池的产生<br />当 CLR 初始化时,其线程池中不含有线程。当应用程序要创建线程来执行任务时,该应用程序应请求线程池线程来执行任务。线程池知道后将创建一个初始线程。该新线程经历的初始化和其他线程一样;但是任务完成后,该线程不会自行销毁。相反,它会以挂起状态返回线程池。如果应用程序再次向线程池发出请求,那么这个挂起的线

2011-01-11 16:11:00 156

原创 多线程

<br />1. 设计背景<br />在设计多线程程序的时候,时常会遇到对同一个数据进行读写操作的情况。为了保证多线程的正常运行,一般来说会对读写操作进行同步,同一时间上只能执行读或写,而不能两者同时执行。在多核环境下,若线程间采用了流水线的方式对数据进行加工,那么这样必然影响到整个流水线的工作效率。因为这样会使得某些CPU的资源得不到应用。因此,设计一种能使得读写同时进行的算法十分必要。<br />    说到这里,不得不提一下目前做的项目,这个项目要求实时处理机算机屏幕的图像并通过网口进行发送。之前

2011-01-11 15:53:00 276

原创 SQLite内存数据库

<br /><br />SQLite 介绍 <br />一. SQLite 是实现了SQL 92标准的一个大子集的嵌入式数据库.其以在一个库中组合了数据库引擎和接口,能将所有数据存储于单个文件中而著名.我觉得SQLite的功能一定程度上居于MySQL 和PostgreSQL之间.尽管如此,在性能上面,SQLite常常快2-3倍 (甚至更多).这利益于其高度调整了的内部架构,因为它除去了服务器端到客户端和客户端到服务器端的通信。<br /><br />二. 而令人印象深刻的特点是你可将你的整个

2011-01-05 09:47:00 363

原创 ETL

<br />面向数据集成的ETL技术研究开发者在线<br />2008-9-17 7:55:23  文章来源:IT专家网 【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】<br /><br /><br /><br />随着企业信息化建设的发展,巨大的投资为企业建立了众多的信息系统,以帮助企业进行内外部业务的处理和管理工作。但是随着信息系统的增加,各自孤立工作的信息系统将会造成大量的冗余数据和业务人员的重复劳动。企业应用集成(EAI,Enterprise Application Integrati

2011-01-03 14:04:00 200

原创 WCF资源总站

<br />http://www.cnblogs.com/artech/mytag.aspx?tag=WCF&page=1

2010-12-13 14:51:00 198

原创 键盘监控的实现Ⅰ——Keyboard Hook API函数

<br /><br />在实际应用中,键盘监控是一种很常见的技术,它包括按键的记录、按键的过滤、按键的修改(映射)等。比方说,我们想统计用户的击键情况,这个就是按键的记录;我们想屏蔽某些系统键(例如Alt键、Win键),这个是按键的过滤;我们想改变按键的值,例如按下A,出来的是Z,在例如按下A,出来按键的组合SDFG等(貌似这个在游戏中比较多,有些游戏的大绝招都比较难按,用这个一劳永逸),这个是按键的修改。<br />  键盘监控的具体实现,用的是微软的Keyboard Hook API函数。<br /> 

2010-12-08 15:56:00 318

原创 键盘监控的实现Ⅱ——容易产生误解的CallNextHookEx函数

<br /><br />在上文“键盘监控的实现Ⅰ——Keyboard Hook API函数”中介绍了键盘的Hook API函数。<br />  重点就在按键消息处理函数<br />Private Function KeyboardHookProc(ByVal nCode As Integer, ByVal wParam As Integer, ByVal lParam As IntPtr) As Integer<br />      Dim MyKeyboardHookStruct As Key

2010-12-08 15:56:00 242

原创 SQLSERVER数据仓库的构建与分析

<br />SQLSERVER数据仓库的构建与分析<br /><br />(一)基本概念:<br />    1.多维数据集:多维数据集是联机分析处理 (OLAP) 中的主要对象,是一项可对数据仓库中的数据进行快速访问的技术。多维数据集是一个数据集合,通常从数据仓库的子集构造,并组织和汇总成一个由一组维度和度量值定义的多维结构。<br />    2.维度:是多维数据集的结构性特性。它们是事实数据表中用来描述数据的分类的有组织层次结构(级别)。这些分类和级别描述了一些相似的成员集合,用户将基于这

2010-12-03 11:04:00 192

原创 C#也能PS图片,还能为网站Ajax上传图片同时生成微缩图(附Demo)

<br /><br />生成微缩图的核心方法:CreateThumbnailPicture///<summary><br />/// 图片微缩图处理<br />///</summary><br />///<param name="srcPath">源图片</param><br />///<param name="destPath">目标图片</param><br />///<param name="width">宽度</param><br />///<param name="height">高度</para

2010-12-03 10:43:00 187

原创 .Net应用程序的执行环境(CLR关于Assembly的搜索算法)

.Net应用程序的执行环境(CLR关于Assembly的搜索算法)Posted on 2010-07-02 13:22 Charles Chen 阅读(249) 评论(8)编辑收藏 所属分类: C#<br />    最近在回顾.Net应用程序的执行环境,这里做一个很小的总结,方面以后需要的时候进行查找:<br /><br />CLR必须可以找到正确的Assembly,Net提供了Assembly搜索算法,可以根据.config文件(类似于.ini)自定义assembly搜索。<br />算法分析过程如

2010-12-03 10:42:00 208

原创 CLR关于Assembly的搜索算法

.Net应用程序的执行环境(CLR关于Assembly的搜索算法)Posted on 2010-07-02 13:22 Charles Chen 阅读(249) 评论(8)编辑收藏 所属分类: C#<br />    最近在回顾.Net应用程序的执行环境,这里做一个很小的总结,方面以后需要的时候进行查找:<br /><br />CLR必须可以找到正确的Assembly,Net提供了Assembly搜索算法,可以根据.config文件(类似于.ini)自定义assembly搜索。<br />算法分析过程如

2010-11-23 11:22:00 184

原创 图片处理

<br />http://msdn.microsoft.com/zh-cn/library/a343dky2.aspx

2010-11-10 10:14:00 126

原创 .NET API MSDN文档中心

<br />http://msdn.microsoft.com/zh-cn/library/4w3ex9c2(VS.100).aspx

2010-11-08 16:45:00 229

原创 Visual Studio DSL 入门 12---状态机设计器的规则(Rule)和验证(Validation)

<br />上一节我们为状态机设计器添加了一个Rule,主要用来处理当Transition的属性Label,Condition,Action,Event之间的任何一个值发生变化时,其余的属性值也要按照我们的规则来更新(我们的Label属性就是一个辅助的属性,用来更好的显示和编辑另外三个属性).我们可以看到vs.net dsl提供的Rule机制的强大,它主要提供了以下几个Rule: <br />     AddRule:  当ModelElement或者ElementLink添加时触发 <br />    

2010-11-02 21:49:00 191

原创 Visual Studio DSL 入门 10---完善状态机案例

<br />前两节我们已经完成了状态机的元数据创建以及部分图形表示,如果你使用过运行起来的状态机设计器,你就会发现很多问题.在这一节,我们主要来完善我们的状态机实例,包括完善元数据和图形符号等. <br />  <br />完善 <br />     1.在运行的环境中,你会发现左侧工具箱中显示的选择项文本仍然是自动生成的LanagueSm,我们需要修改成StateMachine.打开DslDefinition.dsl文件后打开Dsl Explorer,找到LanguageSm/Editor/Toolbox

2010-11-02 21:48:00 198

原创 Visual Studio DSL 入门 11---为状态机设计器添加规则

<br />上一节我们在设计器的显示方面进行了完善,在这一节,我们将深入状态机设计器的一些逻辑细节,给我们的设计器添加逻辑规则.为生成代码做好准备. <br />   在开始之前,我们先看一下Transition的几个属性之间的关系:  <br />     1.编辑Event,Condition,Action属性时,Label属性能够自动计算显示,计算逻辑为Event [Condition] / Action  <br />     2.当修改属性Label时,Event,Condition,Action

2010-11-02 21:48:00 146

原创 Visual Studio DSL 入门 8---创建状态机元数据模型

<br />在前几节中,我们以创建的默认项目介绍了Vs.net dsl的一些基本的知识,包括域类,域关系,图形符号,图形映射等,这些东西看起来可能会有些抽象,和我们第二节介绍的需求还没有直接关系,不过这些概念确实我们开发我们自己的dsl之前必须要掌握的。如果你对我们将要做的这个实际的案例的需求并不是很了解,请仔细需求一下我们这个状态机的需求.如果你第一次看这一系列,或者是对这些基础概念还不是很熟悉,建议你看一下前面的几节基础知识。 <br />     首先,按照第三节创建一个Minimal Lanauge

2010-11-02 21:47:00 154

原创 Visual Studio DSL 入门 9---创建状态机的图形符号

<br />上一节我们已经创建状态机的元数据模型,在这一节,我们来完成我们状态机的图形符号,建立起状态机的测试运行环境. <br />    打开dsl文件后,关注泳道的右侧,首先我们来完成域类的形状表示:  <br />      1.一个状态State有进入操作和退出操作,所以我们为状态表示为隔间形状,可以在图上显示出来它的这两种操作(就象一个类包含方法和属性一样),先删除之前生成的ExampleShape.然后从工具箱中选择隔间形状(Compartment Shape)到Diagram Element

2010-11-02 21:47:00 219

原创 Visual Studio DSL 入门 7---DSL的图形表示2

<br />在上一节介绍了vs.net dsl的图形符号,其中包括图表,编辑器,形状.在这一节,我们来看一下图形符号与元数据之间的关系,他们是怎么映射在一起的.  <br />     模型元素由形状来表示,而域关系则用连接器(Connectors)来表示.图形映射定义了模型元素通过形状可视化表示出来,而连接器映射定义了链接如何通过连接器可视化表示出来.  <br />  形状映射 <br />     我们先来看一下形状映射,接着打开我们的LanguageSm项目中的Dsl文件. 选中域类ExampleE

2010-11-02 21:46:00 135

原创 Visual Studio DSL 入门 6---DSL的图形表示1

<br /> 到现在为止,我们还是只是介绍模型相关的东西,还没有接触到Dsl的模型的展现,对于一个Dsl来说,没有图形展现也是可行的,不过对于一个开发工具来说,要提供一种方式来操作我们的元数据,Visual Studio DSL在图形展现这方面提供了不错的支持,不过对于复杂的Dsl来说,图形的展现往往需求很复杂,现在的图形化支持在一定程度上也未必能够满足一些特定的需求, 有总比没有好,期望微软会在这方面会有所加强。  <br />    还是以我们创建的LanguageSm项目为例,我们大概介绍一下界面表示

2010-11-02 21:44:00 145

原创 Visual Studio DSL 入门 7---DSL的图形表示2

<br />在上一节介绍了vs.net dsl的图形符号,其中包括图表,编辑器,形状.在这一节,我们来看一下图形符号与元数据之间的关系,他们是怎么映射在一起的.  <br />     模型元素由形状来表示,而域关系则用连接器(Connectors)来表示.图形映射定义了模型元素通过形状可视化表示出来,而连接器映射定义了链接如何通过连接器可视化表示出来.  <br />  形状映射 <br />     我们先来看一下形状映射,接着打开我们的LanguageSm项目中的Dsl文件. 选中域类ExampleE

2010-11-02 21:43:00 143

原创 Visual Studio DSL 入门 5---理解生成的域类和域关系

<br />上一节我们大概介绍了一些Vs.net Dsl的域模型的一些基本的概念,这一节我们再回到我们生成的LanuageSm项目,看一下生成的域类以及域关系,介绍一下Dsl运行时的Store,然后再来介绍一下需要注意的一些关键点。为我们下一节具体设计我们自己的Dsl做最后的准备. <br />   1. 首先找到Dsl项目中模板DomainClasses.tt生成的DomainClasses.cs,我们来查看一下它由两个类组成:<br />        <br />     其实也就对应着我们域模型中的

2010-11-02 21:41:00 147

原创 Visual Studio DSL 入门 4--- 基本概念

<br /> 刚接触Visual Studio DSL时,被它的基本理论概念迷惑了很长时间, 我的建议是如果能够很快的理解这些概念最好.如果短时间内理解不了就大概了解下这些基础概念,就没有必要为了每一个概念一直深入,搞得自己头疼,倒不如在以后的实践中慢慢深入,理解并加深这些概念.<br />     开发一个DSL需要创建的几个不同的组成部分:域模型,图形符号,工具箱,资源管理器和属性窗口,验证,序列化和部署,打开上一节我们创建的LanguageSm项目中的DslDefinition.dsl文件,可以看到在

2010-11-02 21:39:00 195

原创 Visual Studio DSL 入门 3---创建一个简单的DSL模型

<br />从这节开始我们就开始我们的DSL之旅, 首先确保你已经安装了Visual Studio Sdk,并且使用的是Visual Studio 2008.我们先大概创建一个简单的DSL项目,通过这个项目来了解dsl的开发环境和流程.<br />1. 打开VS.NET ,新建--项目, 点击其它项目类型--扩展性(Extensibility). 这里列出来了vs.net扩展类型的项目,包括Addin,VSPackage,Dsl等项目类型,选择"Domain Specific Lan  guage Desi

2010-11-02 21:30:00 181

原创 Visual Studio DSL 入门 2

<br />相信如果看过一上篇你已经对vs.net dsl有了一定的了解,接下来我们就来开始我们的这个系列的入门,Vs.net Dsl在国内可能使用的人少之又少,不过希望这个系列能够使看到的人能够对dsl有一定的了解,使之能够成为产品方案选型时的一个参考,能够对阅读的人有所帮助. <br /><br />准备环境 <br />    由于vs.net 2010并未正式发布,所以这一系列基于vs 2008 sp1进行开发,Dsl tools是包含在VSX当中的,所以需要下载 Vistual Stutio.Ne

2010-11-02 21:25:00 164

原创 Visual Studio DSL 入门 1

<br />什么是特定领域开发和DSL<br />     特定领域开发是用来解决重复发生的问题的方法,针对每次发生的问题,通过进行总结和分析,他们之间相同的方面可以一次性的解决.而经常变化的方面,可以采用一种特殊的语言表达.针对这个特殊语言,我们可以建立模型或者表达式,然后插入到固定部分.  <br />     对于我们软件行业的解决方案来说,固定部分一般采用传统的设计和实现方式,可以为框架,平台,解释器或者编程接口.提供可扩展性,具有高度的抽象性和可复用性.而特定领域语言专门用来创建变化的部分,从而使

2010-11-02 20:49:00 500

原创 DSL学习

<br />http://www.cnblogs.com/lonely7345/tag/DSL/

2010-11-02 20:47:00 151

原创 GridView排序样式

<br /><br />与ASP.NET 的其他Web控件一能够,Gridview控件拥有很多不同的CSS样式属性设置,包括象CssClass,Font字体,ForeColor,BackColor,BackColor, Width, Height等等。Gridview还包括了一些应用在表格的行上的样式属性,比如RowStyle, AlternatingRowStyle, HeaderStyle,和PagerStyle,它们都提供了象CssClass和Font这些基本的属性设置。<br />  在

2010-10-18 11:20:00 339

原创 CODE PROJECT(源码)

<br />http://www.codeproject.com

2010-09-08 10:31:00 212

原创 对DataSet中的DataTable进行Distinct、Group by

<br />//微软知识库里面有个DataSetHelper ,可以对DataSet中的DataTable进行Distinct、Group by、Join和Create。<br />using System; <br />using System.Collections; <br />using System.Data; <br />namespace Common <br />{ <br />/**//**//**//// <summary> <br />/// DataSet助手 <br />/// <

2010-07-27 14:39:00 1682

IK算法源码

IK算法源码

2016-07-04

Net下应用NHibernate的模板项目

1.新建数据库ExamManager并运行Business\ObjectMapper\Business.sql和Business\ObjectMapper\InitData.sql以初始化数据库。 2.修改Web\Web.config 149行 <add key="hibernate.connection.connection_string" value="server=(local);initial catalog=ExamManager;User ID=sa;Password=123;" />为正确的连接字符串。 3.建立虚拟目录CorpTemplate。 4.调试Web项目,Web项目的调试属性为调试模式Url,启动Url为http://localhost/CorpTemplate/Default.aspx。

2010-01-14

Web.config详解

Web.config 文件是一个xml文本文件,它用来储存 asp.NET Web 应用程序的配置信息(如最常用的设置asp.NET Web 应用程序的身份验证方式),它可以出现在应用程序的每一个目录中。当你通过.NET新建一个Web应用程序后,默认情况下会在根目录自动创建一个默认的Web.config文件,包括默认的配置设置,所有的子目录都继承它的配置设置。如果你想修改子目录的配置设置,你可以在该子目录下新建一个Web.config文件。它可以提供除从父目录继承的配置信息以外的配置信息,也可以重写或修改父目录中定义的设置。

2010-01-14

ASP.NET 2.0数据教程

ASP.NET 2.0数据教程DataList和Repeater数据分页等功能

2010-01-14

windows核心编程

第Ⅰ部分 必备知识  第1章 错误处理   1.1 定义自己的错误代码   1.2 ErrorShow示例程序  第2章 字符和字符串处理   2.1 字符编码   2.2 ANSI字符和Unicode字符与字符串数据类型   2.3 Windows中的Unicode函数和ANSI函数   2.4 C运行库中的Unicode函数和ANSI函数   2.5 C运行库中的安全字符串函数    2.5.1 初识新的安全字符串函数    2.5.2 在处理字符串时如何获得更多控制    2.5.3 Windows字符串函数   2.6 为何要用Unicode   2.7 推荐的字符和字符串处理方式   2.8 Unicode与ANSI字符串转换    2.8.1 导出ANSI和Unicode DLL函数    2.8.2 判断文本是ANSI还是Unicode  第3章 内核对象   3.1 何为内核对象    3.1.1 使用计数    3.1.2 内核对象的安全性   3.2 进程内核对象句柄表    3.2.1 创建一个内核对象    3.2.2 关闭内核对象   3.3 跨进程边界共享内核对象    3.3.1 使用对象句柄继承    3.3.2 改变句柄的标志    3.3.3 为对象命名    3.3.4 终端服务命名空间    3.3.5 专有命名空间    3.3.5 复制对象句柄 第Ⅱ部分 工作机制  第4章 进程   4.1 编写第一个Windows应用程序    4.1.1 进程实例句柄    4.1.2 进程前一个实例的句柄    4.1.3 进程的命令行    4.1.4 进程的环境变量    4.1.5 进程的关联性    4.1.6 进程的错误模式    4.1.7 进程当前所在的驱动器和目录    4.1.8 进程的当前目录    4.1.9 系统版本   4.2 CreateProcess函数    4.2.1 pszApplicationName和pszCommandLine参数    4.2.2 psaProcess,psaThread和bInheritHandles参数    4.2.3 fdwCreate参数    4.2.4 pvEnvironment参数    4.2.5 pszCurDir参数    4.2.6 psiStartInfo参数    4.2.7 ppiProcInfo参数   4.3 终止进程    4.3.1 主线程的入口点函数返回    4.3.2 ExitProcess函数    4.3.3 TerminateProcess函数    4.3.4 当进程中的所有线程终止时    4.3.5 当进程终止运行时   4.4 子进程   4.5 管理员以标准用户权限运行时    4.5.1 自动提升进程的权限    4.5.2 手动提升进程的权限    4.5.3 何为当前权限上下文    4.5.4 枚举系统中正在运行的进程    4.5.5 Process Information示例程序  第5章 作业   5.1 对作业中的进程施加限制   5.2 将进程放入作业中   5.3 终止作业中的所有线程查询作业统计信息   5.4 作业通知   5.6 Job Lab示例程序  第6章 线程基础   6.1 何时创建线程   6.2 何时不应该创建线程   6.3 编写第一个线程函数   6.4 CreateThread函数    6.4.1 psa参数    6.4.2 cbStackSize参数    6.4.3 pfnStartAddr和pvParam参数    6.4.4 dwCreateFlags    6.4.5 pdwThreadID7   6.5 终止运行线程    6.5.1 线程函数返回    6.5.2 ExitThread函数    6.5.3 TerminateThread函数    6.5.4 进程终止运行时    6.5.5 线程终止运行时   6.6 线程内幕   6.7 C/C++运行库注意事项    6.7.1 用_beginthreadex而不要用CreateThread创建线程    6.7.2 绝对不应该调用的C/C++运行库函数   6.8 了解自己的身份    6.8.1 将伪句柄转换为真正的句柄  第7章 线程调度、优先级和关联性   7.1 线程的挂起和恢复   7.2 进程的挂起和恢复   7.3 睡眠   7.4 切换到另一个线程   7.5 在超线程CPU上切换到另一个线程   7.6 线程的执行时间   7.7 在实际上下文中谈CONTEXT结构   7.8 线程优先级   7.9 从抽象角度看优先级   7.10 优先级编程    7.10.1 动态提升线程优先级    7.10.2 为前台进程微调调度程序    7.10.3 调度I/O请求优先级    7.10.4 Scheduling Lab 示例程序   7.11 关联性  第8章 用户模式下的线程同步   8.1 原子访问:Interlocked系列函数   8.2 高速缓存行   8.3 高级线程同步需要避免使用的一种方法   8.4 关键段    8.4.1 关键段:细节    8.4.2 关键段和旋转锁    8.4.3 关键段和错误处理   8.5 Slim读/写锁   8.6 条件变量    8.6.1 Queue示例程序    8.6.2 在停止线程时的死锁问题    8.6.3 一些有用的窍门和技巧  第9章 用内核对象进行线程同步   9.1 等待函数   9.2 等待成功所引起的副作用   9.3 事件内核对象   9.4 可等待的计时器内核对象    9.4.1 让可等待的计时器添加APC调用    9.4.2 计时器的剩余问题   9.5 信号量内核对象   9.6 互斥量内核对象    9.6.1 遗弃问题    9.6.2 互斥量与关键段的比较    9.6.3 Queue示例程序   9.7 线程同步对象速查表   9.8 其他的线程同步函数    9.8.1 异步设备I/O    9.8.2 WaitForInputIdle函数    9.8.3 MsgWaitForMultipleObjects(Ex)函数    9.8.4 WaitForDebugEvent函数    9.8.5 SignalObjectAndWait函数    9.8.6 使用等待链遍历API来检测死锁  第10章 同步设备I/O与异步设备I/O   10.1 打开和关闭设备细看CreateFile函数   10.2 使用文件设备    10.2.1 取得文件的大小    10.2.2 设置文件指针的位置    10.2.3 设置文件尾   10.3 执行同步设备I/O    10.3.1 将数据刷新至设备    10.3.2 同步I/O的取消   10.4 异步设备I/O基础    10.4.1 OVERLAPPED结构    10.4.2 异步设备I/O的注意事项    10.4.3 取消队列中的设备I/O请求   10.5 接收I/O请求完成通知    10.5.1 触发设备内核对象    10.5.2 触发事件内核对象    10.5.3 可提醒I/O    10.5.4 I/O完成端口    10.5.5 模拟已完成的I/O请求  第11章 Windows线程池   11.1 情形1:以异步方式调用函数    11.1.1 显式地控制工作项    11.1.2 Batch示例程序   11.2 情形2:每隔一段时间调用一个函数   11.3 情形3:在内核对象触发时调用一个函数   11.4 情形4:在异步I/O请求完成时调用一个函数   11.5 回调函数的终止操作    11.5.1 对线程池进行定制    11.5.2 得体地销毁线程池:清理组  第12章 纤程 第Ⅲ部分 内存管理  第13章 Windows内存体系结构   13.1 进程的虚拟地址空间   13.2 虚拟地址空间的分区    13.2.1 空指针赋值分区    13.2.2 用户模式分区   13.3 地址空间中的区域   13.4 给区域调拨物理存储器   13.5 物理存储器和页交换文件   13.6 页面保护属性    13.6.1 写时复制    13.6.2 一些特殊的访问保护属性标志   13.7 实例分析   13.8 数据对齐的重要性  第14章 探索虚拟内存   14.1 系统信息   14.2 虚拟内存状态   14.3 NUMA机器中的内存管理   14.4 确定地址空间的状态    14.4.1 VMQuery函数    14.4.2 示例程序:虚拟内存映射  第15章 在应用程序中使用虚拟内存   15.1 预订地址空间区域   15.2 给区域调拨物理存储器   15.3 同时预订和调拨物理存储器   15.4 何时调拨物理存储器   15.5 撤销调拨物理存储器及释放区    15.5.1 何时撤销调拨物理存储器    15.5.2 虚拟内存分配示例程序   15.6 改变保护属性   15.7 重置物理存储器的内容   15.8 地址窗口扩展  第16章 线程栈   16.1 C/C++运行库的栈检查函数   16.2 Summation示例程序  第17章 内存映射文件   17.1 映射到内存的可执行文件和DLL    17.1.1 同一个可执行文件或DLL的多个实例不会共享静态数据    17.1.2 在同一个可执行文件或DLL的多个实例间共享静态数据    17.1.3 Application Instances示例程序   17.2 映射到内存的数据文件    17.2.1 方法1:一个文件,一块缓存    17.2.2 方法2:两个文件,一块缓存    17.2.3 方法3:一个文件,两块缓存    17.2.4 方法4:一个文件,零个缓存   17.3 使用内存映射文件    17.3.1 第1步:创建或打开文件内核对象    17.3.2 第2步:创建文件映射内核对象    17.3.3 第3步:将文件的数据映射到进程的地址空间    17.3.4 第4步:从进程的地址空间撤销对文件数据的映射    17.3.5 第5步和第6步:关闭文件映射对象和文件对象   17.6 File Reverse示例程序   17.7 用内存映射文件来处理大文件   17.8 内存映射文件和一致性   17.9 给内存映射文件指定基地址   17.10 内存映射文件的实现细节  第18章 堆   18.1 进程的默认堆   18.2 为什么要创建额外的堆    18.2.1 对组件进行保护    18.2.2 更有效的内存管理    18.2.3 使内存访问局部化    18.2.4 避免线程同步的开销    18.2.5 快速释放   18.3 如何创建额外的堆    18.3.1 从堆中分配内存块    18.3.2 调整内存块的大小    18.3.3 获得内存块的大小    18.3.4 释放内存块    18.3.5 销毁堆    18.3.6 在C++中使用堆   18.4 其他堆函数 第Ⅳ部分 动态链接库  第19章 DLL基础   19.1 DLL和进程的地址空间   19.2 纵观全局    19.2.1 构建DLL模块    19.2.2 构建可执行模块    19.2.3 运行可执行模块  第20章 DLL高级技术   20.1 DLL模块的显式载入和符号链接    20.1.1 显式地载入DLL模块    20.1.2 显式地卸载DLL模块    20.1.3 显式地链接到导出符号   20.2 DLL的入口点函数    20.2.1 DLL_PROCESS_ATTACH通知    20.2.2 DLL_PROCESS_DETACH通知    20.2.3 DLL_THREAD_ATTACH通知    20.2.4 DLL_THREAD_DETACH通知    20.2.5 DllMain的序列化调用    20.2.6 DllMain和C/C++运行库   20.3 延迟载入DLL   20.4 函数转发器   20.5 已知的DLL   20.6 DLL重定向   20.7 模块的基地址重定位   20.8 模块的绑定  第21章 线程局部存储区   21.1 动态TLS   21.2 静态TLS0  第22章 DLL注入和API拦截   22.1 DLL注入的一个例子   22.2 使用注册表来注入DLL   22.3 使用Windows挂钩来注入DLL   22.4 使用远程线程来注入DLL    22.4.1 Inject Library示例程序    22.4.2 Image Walk DLL   22.5 使用木马DLL来注入DLL   22.6 把DLL作为调试器来注入   22.7 使用CreateProcess来注入代码   22.8 API拦截的一个例子9    22.8.1 通过覆盖代码来拦截API0    22.8.2 通过修改模块的导入段来拦截API    22.8.3 Last MessageBox Info示例程序 第Ⅴ部分 结构化异常处理  第23章 终止处理程序  第24章 异常处理程序与软件异常   24.1 通过实例理解异常过滤程序和异常处理程序    24.1.1 Funcmeister1函数    24.1.2 Funcmeister2函数   24.2 EXCEPTION_EXECUTE_HANDLER1    24.2.1 一些有用的例子    24.2.2 全局展开    24.2.3 停止全局展开   24.3 EXCEPTION_CONTINUE_EXECUTION   24.4 EXCEPTION_CONTINUE_SEARCH0   24.5 GetExceptionCode2   24.6 GetExceptionInformation6   24.7 软件异常  第25章 未处理异常、向量化异常处理与C++异常   25.1 UnhandledExceptionFilter函数详解   25.2 即时调试   25.3 电子表格示例程序   25.4 向量化异常和继续处理程序   25.5 C++异常与结构化异常的比较   25.6 异常与调试器  第26章 错误报告与应用程序恢复   26.1 Windows错误报告控制台   26.2 可编程的Windows错误报告   26.3 对进程中所有的问题报告进行定制   26.4 问题报告的创建与定制    26.4.1 创建一个自定义的问题报告    26.4.2 设置报告参数:WerReportSetParameter    26.4.3 将小型转储文件放入报告:WerReportAddDump8    26.4.4 将任意文件放入报告:WerReportAddFile9    26.4.5 修改对话框文本:WerReportSetUIOption0    26.4.6 提交错误报告:WerReportSubmit0    26.4.7 关闭问题报告:WerReportCloseHandle    26.4.8 Customized WER示例程序   26.5 应用程序的自动重启与恢复    26.5.1 应用程序的自动重启    26.5.2 对应用程序恢复的支持 第Ⅵ部分 附录A 构建环境 附录B 消息处理宏、子控件宏和API宏

2009-08-17

AJAX_XML

AJAX的使用,教你如何学习AJAX

2007-09-12

AJAX的学习

AJAX的使用,教你如何学习AJAX

2007-09-12

JSON加速AJAX

提供了多个JAVA实例

2007-09-12

空空如也

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

TA关注的人

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