自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

king_weng的博客

当才华配不上野心时,就静下心来学习吧!

  • 博客(194)
  • 资源 (18)
  • 收藏
  • 关注

原创 Django19:发送邮件

SMTP(Simple Mail Transfer Protocol),简单邮件传输协议(25号端口)。它是一组用于从原地址到目的地址传输邮件的规范,通过它来控制邮件的中转。属于“推送”协议 IAMP(Internet Mail Access Protocol),交互式邮件访问协议,是一个应用层协议(143端口)。用来从本地邮件客户端访问远程服务器上的邮件。属于“拉取”协议。 P0P3(Post Office Protocol3)的简称,即邮局协议的第3个版本,是TCP/IP协议

2022-06-18 10:30:00 519 1

原创 Django18:文件上传

文件上传必须为POST提交方式。 表达’’中文件上传时必须带有enctype=”multipart/formdata”时才会包含文件内容数据。 表单中用标签上传文件例:(a)views.py(b)urls.py’(c)templates/test_upload.html访问:http://192.168.28.128:8000/test_upload (a)视图 视图函数中,...

2022-06-18 09:00:00 437

原创 Django17:内建用户系统

Django带有一个用户认证系统。它处理用户账号、组、权限以及基于cookie的用户会话。用户可以直接是使用Django自带的用户表。 模型类位置from django.contrib.contrib.auth.models import User(2)创建超级用户create_superuser创建完可在auth_user表中查看:例:5、密码(1)校验密码(2)修改密码6、登录(1)登录状态保持(2)登录状态校验(3)登

2022-06-17 19:45:00 426

原创 Django16:生成csv文件

csv文件是逗号分隔值(Comma-Separated Values,CSV),有时也称分隔值,因为分割字符也可不是逗号,其文件以纯文本形式存储表格数据(数字和文件)。注:可被常见制表工具,如excel等直接进行读取。 python提供了内建库-csv,可直接通过该库操作csv文件例:3、csv文件下载 在网站中,实现下载csv,注意如下: 响应Content-Type类型需修改为text/csv。这告诉浏览器该文档是csv文件,而不是html文件。

2022-06-17 18:30:00 264

原创 Django15:分页

分页是指在web页面有大量数据需要显示,为了阅读方便在每页中只显示部分数据。优点是方便阅读和减少数据量提取,减轻服务器压力。 Django提供了Paginator类可方便的实现分页功能。Paginator类位于’django.core.paginator’模块中。 负责分页数据整体的管理。参数:返回值:Paginator的对象参数number为页码信息(从1开始);返回当前number也对应的页信息;如果提供的页码不存在,抛出Invalidpage异常,包含两种异常子类:

2022-06-17 18:15:00 161

原创 Django14:中间件

中间件是Django请求/响应处理的钩子框架。它是一个轻量级的、低级的“插件”系统,用于全局改变django的输入或输出。中间件以类的形式体现。每个中间件组件负责做一些特定的功能。例如,Django包含一个中间组件AuthenticationMiddleware,它使用会话将用户与请求关联起来。 中间件须继承自django.utils.deprecation.MiddlewareMixin类。中间件类需实现下列五个方法中的一个或多个:(a)precess_request(self, reque

2022-06-16 16:35:47 221

原创 Django13:缓存

缓存是一类可以更快的读取数据的介质统称,也指其他可以加快数据读取的存储方式。一般用来存储临时数据,常用的介质是读取速度很快的内存。 缓存的意义:视图渲染有一定的成本,数据库的频繁查询过高;所以对于低频变动的页面可考虑使用缓存技术,减少实际渲染次数,用户拿到的响应的时间成本会更低。(1)将缓存的数据存储在数据库中 尽管存储介质没有更换,但是当把一次负责查询的结果直接存储到表里,比如多个条件的过滤查询结果,可避免重复进行复杂查询,提升效率。例:#数据库缓存配置需要手动执行创建表的命令

2022-06-16 16:28:26 174

原创 Django12:序列化Django对象

Django REST framework (DRF)是用于构建Web API 的强大而灵活的工具包。它是基于Django的,帮助我们快速开发符合RESTful规范的接口框架。而Django中自带的序列化框架提供了一种将 Django 模型“翻译”为其他格式的机制。(1)RESTful(2)API设计规范 首先我们要知道,API并不是必须的,如果整个项目只有你一个人或者很少的人完成,完全可以直接用Django的模板引擎渲染发送到前端后直接操作。API的使用主要是为了解决多人开发,特别是前后端分

2022-06-08 21:29:31 643

原创 Django11:cookies和session

cookies在浏览器中是以键值对的形式存储,且均已ASDII字符串的形式存储。HttpResponse.set_cookie(key, value=’’, max_age =None, expires=None)当不指定max_age和expires时,关闭浏览器时此数据失效例:views.py 删除指定key的cookie。如果key不存在则说明都没发生。 通过requestion.cookies绑定的字典获取客户端的cookies数据 ses

2022-06-08 21:22:18 139

原创 Django10:admin后台管理

django提供了比较完善的后台管理数据库的接口,可供开发过程中调用和测试使用。django会搜集所有已注册的模型类,为这些模型提供数据界面,供开发者使用。2、注册自定义模型类若要自定义的模型类也能在/admin后台管理界面中显示和管理,需要将自己的类注册到后台管理界面(1)在应用中admin.py导入要注册的模型models类:(2)调用admin.site.register方法进行注册 为后台管理界面添加便于操作的新功能。后台管理器类继承自django.contr

2022-06-08 21:11:14 297

原创 Django9:ORM数据库操作及关系映射

0、管理器对象 每个继承自models.Model的模型类,都会有一个objects对象被同样继承下来。数据库的增删改查可通过模型的管理器实现。calss MyModel(models.Model): MyModel.object.create()1、创建数据方法1:MyModel.objects.create(属性1=值1,属性2=值2,…) 成功:返回创建好的实体对象 失败:抛出异常方法2:创建MyModel实例对象,并调用save()进行保存...

2022-05-09 19:30:00 490

原创 Django8:ORM基础字段及选项

一、模型定义1、创建模型类流程(1)创建应用(2)在应用下的model.py中编写模型类from django.db import modelsclass 模型类名(models.Model): 字段名 = models.字段类型(字段选项)(3)迁移同步makemigrations & migrate生成迁移文件:python3 manage.py makemigrations数据库迁移:python3 manage.py migr...

2022-05-09 18:00:00 391

原创 Django7:模型层及ORM:

一、Django配置MySQL1、安装mysqlclient(版本mysqlclient 1.3.13以上)。 安装前确认Ubuntu是否安装python3-dev和default-libmysqlclient-dev:(1)查看依赖sudo apt list –installed|grep -E ‘libmysqlclient-dev|python3-dev’(2)若无,则安装依赖sudo apt-get install python3-dev default-li...

2022-05-08 18:39:43 620

原创 Django6:应用及分布式路由

一、应用 应用在Django项目中是一个独立的业务模块,可包含自己的路由、视图、模板、模型。1、创建应用(1)在manage.py中使用startapp创建应用文件夹python3 manage.py startapp music(2)配置settings.py在settings.py的INSTALLED_APPS列表中配置安装此应用,例INSTALLED_APPS = [ # … ‘music’,]二、分布式路由 Django中,主路...

2022-05-08 18:32:29 369

原创 Django5:静态文件

一、静态文件 静态文件,如图片、css、js、音频、视频。1、静态文件配置(1)settings.pySTATIC_URL = ‘/static’指定访问静态文件时需要通过、static、xxx或http://127.0.0.1:8000/static/xxx(2)配置静态文件的存储路径STATICFILES_DIRS STATICFILES_DIRS保存的是静态文件在服务器端的存储位置,在settings.py配置如下:STATICFILE...

2022-05-08 18:23:35 478

原创 Django4:设计模式及模板层

一、MVC和MTV1、MVC MVC代表model、view、controler(模型、视图、控制器)模式。作用:降低模块间的耦合度(解耦)。M:对数据库层的封装 V:向用户展示结果(what、how) C:处理请求、获取数据、返回数据2、MTV MTV代表model、template、view(模型、模板、视图)模式。作用:降低模块间的耦合度(解耦)。M模型层(Model):负责数据库交互 T模板层(Template):负责呈现内容到浏览器(how)...

2022-04-09 21:56:50 954

原创 Django3:请求及响应

一、Django中的请求 请求在Django中实则就是视图函数中的第一个参数,即HttpRequest对象。Django接收到http协议的请求后,会根据请求数据报文创建HttpResquest对象。HttpRequest对象通过属性描述了请求的所有信息。path_info :url字符串 method:字符串,表示Http请求方法,常用值:‘GET、‘POST GET:QueryDict查询字典的对象,包含get请求方式的所有数据 POST:QueryDict查询字典的对象,包含...

2022-04-09 21:38:45 1614

原创 Django2:路由请求

一、视图函数 视图函数用于接收一个浏览器请求(HttpRequest对象)并通过HttpResponse对象返回响应的函数。此函数可接收浏览器请求并根据业务逻辑返回相应内容给浏览器。语法:def xxx_view(request[,其他参数]): return HttpResponse对象例:继上一节(1)# flie:<项目同名文件夹下>/view.pyfrom django.http import HttpResponsedef page...

2022-04-04 20:28:51 1386

原创 Django1:快速入门

一、Django简介 Django是一个开放源代码的Web应用框架,由Python写成。采用了MTV的框架模式,即模型M,视图V和模版T。它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内容为主的网站的,即是CMS(内容管理系统)软件。二、Django安装1、查看Python版本python –version注:Ubuntu中安装了python2和python3,基于用户修改 默认Python 版本: 想要为某个特定用户修改 Python 版本...

2022-04-04 20:19:33 836

原创 Pycharm远程调试及MySQL数据库授权问题

pycharm,mysql授权

2022-03-17 16:56:39 1496

原创 Python操作MySql数据库

python操作mysql数据库

2022-03-17 16:49:22 1453

原创 Python中with的用法

python,with用法

2022-03-17 16:40:07 1537

原创 MyBatis之CRUD

mybatis中的数据库操作

2022-01-24 17:07:40 824

原创 快速入门MyBatis

1、MyBatis简介 MyBatis 是支持定制化 SQL、存储过程以及高级映射的优秀的持久层框架。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以对配置和原生Map使用简单的 XML 或注解,将接口和 Java 的 POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。

2022-01-19 17:04:07 131

原创 std max,std min错误:应输入标识符的解决方法

使用VS2010编写的C++程序 std:min 转换到 VS2013无法识别,显示“错误:应输入标识符”。 标准库在头中定义了两个模板函数std::min() 和 std::max()。通常用它可以计算某个值对应的最小值和最大值。可惜在 Visual C++ 无法使用它们,因为没有定义这些函数模板。原因是名字min和max与中传统的min/max宏定义有冲突。解决方法: 1、为了解决这个问题,Visual C++ 定义了另外两个功能相同的模板:_cpp_m...

2022-01-10 09:50:49 3578 1

原创 使用Spring实现AOP

spring中三种方式实现AOP

2021-12-30 16:33:40 163 1

原创 Spring中byName和byType的区别

Spring中byName和byType的区别

2021-12-21 11:12:20 4369 2

原创 Spring的体系结构

一、

2021-07-01 16:57:15 846

原创 高速的C/C++编译工具——ccache

1、简介 ccache(“compiler cache”的缩写)是一个编译器缓存,该工具会高速缓存编译生成的信息,并在编译的特定部分使用高速缓存的信息, 比如头文件,这样就节省了通常使用 cpp 解析这些信息所需要的时间。如果某头文件中包含对其他头文件的引用,ccache会用那个文件的 cpp-parsed版本来取代include声明,不是真正去读取、理解并解释其内容,ccache 只是将最终的文本拷贝到文件中,使得它可以立即被编译。ccache是以空间换取速度,ccache非常适合经常ma...

2021-05-31 14:24:01 21195 2

原创 跨域资源共享CORS

1、背景 在前后端分离的开发模式中,数据的获取并非同源,所有就出现了跨域的问题。什么时候产生跨域呢?广义的跨域是值浏览器为了一定的安全因素,增加了同源策略。有违同源策略的操作都是被禁止的,这个时候就会发生我们所说的跨域。如果有没有同源策略,则会发送请求发出去了,数据没回来。狭义的跨域是指ajax请求无法完成。2、简介 CORS是一个W3C标准,全称是"跨域资源共享"(Cross-origin resource sharing)。允许浏览器向跨源服务器,发出XMLHt...

2021-04-07 16:40:10 219

原创 http解析库http-parser

一、http-parser简介1、简介 http-parser是一个用C编写的HTTP消息解析器,可以解析请求和响应,被设计用于高性能HTTP应用程序。它不会进行任何系统调用及内存分配,它不会缓冲数据,它可以被随时中断。根据你的体系结构,每个消息流只需要大约40个字节的数据(在每个连接的web服务器中。2、特征不依赖第三方库 处理持续流 分块解码 支持Upgrade 防止缓冲区溢出攻击3、可以从HTTP消息中解析下列信息报头域及值(Header fields and...

2021-04-07 16:29:13 4668 1

原创 C++11之lambda回调设置与应用

在程序中有时候我们需要实现回调效果,比如先设置监听,然后在后面具体执行完某个操作后再将该操作的结果通知给前面监听中。这种机制实际很常用,比如window底下的消息机制,Qt中的信号槽的机制都有类似的效果。但是在C++中并没有类似机制,那么我们应如何实现呢? 实际上在C++中我们可以使用模板、函数指针、抽象类、和lambda就可实现回调的效果,本文重点讲解如何使用lambda和function在同步线程中实现回调的效果。关于lambda介绍可参我前面的博客:https://blo...

2021-03-22 14:53:49 1220 3

转载 开源流媒体SRS

一、SRS简介1、SRS简介 SRS定位是运营级的互联网直播服务器集群,追求更好的概念完整性和最简单实现的代码。SRS提供了丰富的接入方案将RTMP流接入SRS, 包括推送RTMP到SRS、推送RTSP/UDP/FLV到SRS、拉取流到SRS。 SRS还支持将接入的RTMP流进行各种变换,譬如将RTMP流转码、流截图、 转发给其他服务器、转封装成HTTP-FLV流、转封装成HLS、 转封装成HDS、转封装成DASH、录制成FLV/MP4。SRS包含支大规模集群如CDN业务的关键特性, 譬...

2021-03-22 14:48:00 1407

原创 实时通信之RTC

1、RTC简介 RTC(Real-time Communications),实时通信。泛指各种数据的实时传输,包括音频,视频,文本,图片等媒体和非媒体数据的实时传输。2、RTC 和 WebRTC 的区别 实时通信(RTC)最容易和 WebRTC 混淆,实际上,二者并不相等。一次RTC通信的简要流程如下图所示: RTC 从功能流程上来说,包含采集、编码、前后处理、传输、解码、缓冲、渲染等很多环节,上图展现了一次 RTC 通信的简要流程。每一个细分环...

2021-03-19 10:15:10 3691

原创 音频格式之AAC(高级音频编码技术)

1、简介 ACC(Advanced Audio Coding,高级音频编码)是杜比实验室为音乐社区提供的技术。,出现于1997年,基于MPEG-2的音频编码技术。2000年,MPEG-4标准出现后,AAC重新集成了其特性,加入了SBR技术和PS技术,为了区别于传统的MPEG-2 AAC又称为MPEG-4 AAC。 AAC号称「最大能容纳48通道的音轨,采样率达96 KHz,并且在320Kbps的数据速率下能为5.1声道音乐节目提供相当于ITU-R广播的品质」。和MP3比起来,...

2021-03-15 16:45:49 16289

原创 视频传输协议之MPEG-DASH

1、简介 DASH的全称是Dynamic Adaptive Streaming over HTTP。DASH是一种新的视频传输协议,由微软、苹果、Adobe等公司共同主导完成,该标准于2012年制定完成,是一种自适应码率的流媒体技术,其主要特点是视频切片和基于HTTP传输,可以利用现有的HTTP网络架构(专门的服务器和CDN等)传输流媒体。 MPEG-DASH(HTTP上的动态自适应流传输,ISO / IEC 23009-1)是由MPEG和ISO批准的独立于供应商的国际标准,...

2021-03-12 16:06:56 1798

原创 RTMP协议之AMF数据

一、RTMP组成1、RTMP包头 RTMP协议封包 由一个包头和一个包体组成,包头可以是4种长度的任意一种:12, 8, 4, 1 byte(s)。完整的RTMP包头应该是12bytes,包含了时间戳,Head_Type,AMFSize,AMFType,StreamID信息,,8字节的包头只纪录了时间戳,Head_Type,AMFSize,AMFType,,4个字节的包头记录了时间戳,Head_Type。1个字节的包头只记录了Head_Type 。包体最大长度默认为128字节,通过ch...

2021-03-12 16:04:04 1127

原创 视频编码之GOP

1、简介 GOP(Group of Pictures)策略影响编码质量,所谓GOP,意思是画面组,一个GOP就是一组连续的画面。GOP是序列中的一个图片集,用来辅助随机存取。GOP的第一个图像必须为I帧,这样就能保证GOP不需要参考其他图像,可以独立解码。2、MPEG MPEG编码将画面(即帧)分为I、P、B三种,I是内部编码帧,P是前向预测帧,B是双向内插帧。简单地讲,I帧是关键帧,可以理解为一个完整的画面,而P帧和B帧记录的是相对于I帧的变化,P帧表示跟前一帧的...

2021-03-11 09:36:26 3033

原创 Java之maven中pom.xml字段详解

<modules>:子模块项目<properties>:属性,包括系统属性、自定义属性<dependencies>:依赖 <groupId>,<artifactId>, <version>:描述了依赖的项目唯一标志。 <groupId> :创建项目的组织或团体的唯一 Id。 <artifactId>:项目唯一id,可视为项目名。 <version...

2021-03-11 09:32:14 723

原创 国标GB28181入门

1、GB/T28181-2016由来 在GB28181协议处理之前,各个摄像头厂商都有各自的标准不能形成统一。因此公安部科技信息化局提出,由全国安全防范报警系统标准化技术委员会(SAC/TC100)归口,公安部一所等多家单位共同起草了一部国家标准,《公共安全视频监控联网系统信息传输、交换、控制技术要求》。 该标准规定了公共安全视频监控联网系统(以下简称联网系统)的互联结构,传输、交换,控制的基本要求和安全性要求,以及控制﹑传输流程和协议接口等技术要求。2、术语(...

2021-03-10 15:12:53 4548 1

npp.7.8.4.Installer.exe

Notepad ++是一个用于编写文本的免费开源应用程序。 Notepad ++是一个功能强大的编辑器,非常适合编程和普通文本。 Notepad ++与标签一起使用 ,因此可以很容易地同时打开多个文件。因此,比较文本非常容易,每行都有编号。通过按住CTRL和用于放大的鼠标滚轮,可以增加Notepad ++中的字体大小。按F12可使当前选项卡浮动在Windows中的所有其他位置。 对于编码,Notepad ++可以识别许多编程语言 ,并且通过对文本进行颜色编码,可以更自动地使HTML更容易查看。它还有一个很好的查找和替换工具。作为Window的记事本的替代品,NotePad ++令人难以置信,因为它具有更多的功能和能力,同时仍然非常轻巧和稳定。 NotePad ++是一个功能性的应用程序,但它不会赢得任何外观奖,许多功能只对程序员有用。但是,任何编写文本的人都会发现Notepad ++是一个有用的工具,并且比Windows Notepad要好得多。

2020-02-08

软件设计师2009-2018真题及答案解析

软件设计师2009-2018真题及答案解析。

2019-11-10

2019年上半年软件设计师考试上午+下午真题(专业解析+参考答案).rar

2019年上半年软件设计师考试上午+下午真题(专业解析+参考答案)。

2019-11-10

2018年上半年软件设计师上午+下午真题及答案解析

2018年上半年软件设计师上午+下午真题及答案解析。

2019-11-10

Visual Assist VS2017 2015 2013 2010 +通用版.zip

Visual Assist 是由Whole Tomato公司为Microsoft Visual Studio开发一款插件。它对Visual Studio的智能提示(Intellisense)功能和代码高亮功能进行了增强,同时还增加了代码提示功能和重构功能,并对程序注释加入了拼写检查功能。它还可以检测一些基本的语法错误,如使用未声明的变量等。 Visual Assist VS2017 2015 2013 2010 CR-OK Visual Assist X 通用和谐补丁+v2.0

2019-09-11

KinectSDK.chm接口查询

KinectSDK.chm。KinectSDK接口查询,采用chm格式,可直接搜索查询,也可通过目录查询,方便,好用,Kinect开发必备!

2019-04-24

Kinect2.0API

Kinect2.0 API文档。 在开发的时候要注意Kinect1.0和Kinect2.0的SDK是不一样的,Kinect1.0的SDK不能驱动Kinect2.0的机器,同时Kinect1.0的API和Kinect2.0的API也有较大的不同,注意区别。

2019-04-22

官方Kinect10.dll

Kinect用到的官方Kinect10.dll 放置路径C:\Windows\System32; 异常:已引发: "无法加载 DLL“Kinect10.dll”: 找不到指定的模块。 (异常来自 HRESULT:0x8007007E)。" (System.DllNotFoundException) 引发了一个 System.DllNotFoundException: "无法加载 DLL“Kinect10.dll”: 找不到指定的模块。 (异常来自 HRESULT:0x8007007E)。"

2019-04-21

DuiLib中的API介绍

DuiLib中的API介绍 学习DuiLib官方没有对应API文档,存放起来自查用。

2019-03-31

Visual C++ 2013入门经典(第7版)

作者: (美) 霍尔顿(Horton,I.) 著 出版社: 清华大学出版社 原作名: (美) 霍尔顿(Horton,I.) 著 译者: 李周芳,江凌译 著名编程图书作家Ivor Horton引导学习Visual C++ 2013这本最新的C++语言畅销书遵循Ivor Horton一贯的畅销风格。Horton非常详尽地介绍了标准C++语言和Visual C++。 整本书都根据Visual C++ 2013进行了更新,展示了如何使用Visual C++建立实用的应用程序。阅读本书不需要任何编程经验。作者使用大量循序渐进的编程示例,引导读者掌握C++开发的全部奥秘。 本书特色 ◆ 介绍C++编程的基本概念以及Visual C++开发环境的要点 ◆ 从简单的过程式程序开始解释C++语言,逐步过渡到类和面向对象编程 ◆ 演示如何在各种环境下应用标准模板库(STL) ◆ 揭示每个Windows桌面应用程序中的基本元素 ◆ 展示如何使用MFC建立图形用户界面以编写Windows应用程序 ◆ 通过一个在Windows 8下执行的游戏示例,说明如何开发Windows Store应用程序

2019-03-31

MFC Windows程序设计(第2版)修订版+源代码

作者: (美)Jeff Prosise 出版社: 清华大学出版社 原作名: Programming Windows with MFC, 2nd Edition 《MFC Windows程序设计》(第2版)(修订版)不仅扩展了已被认为是权威的关于Microsoft用于Windows API的功能强大的C++类库的阐述,还新增了有关COM、OLE和ActiveX的内容。《MFC Windows程序设计》(第2版)(修订版)的作者,Jeff Prosise,用其无与伦比的技巧向读者讲述了MFC程序设计中的基本概念和主要技术再次阐释了在32位Windows平台上进行了快速的面向对象开发的完美方法。《MFC Windows程序设计》(第2版)(修订版)涵盖了以下专题:事件驱动程序设计和MPC的基础知识文档/视图体系结构位图、调色板和区域多线程和线程同步MFC与组件对象模型(COM)ActiveX控件

2019-03-31

Windows核心编程(第五版)+源码

作者: Jeffrey Richter / Christophe Nasarre 出版社: 清华大学出版社 副标题: 微软技术丛书 译者: 葛子昂 / 周靖 / 廖敏 这是一本经典的Windows核心编程指南,从第1版到第5版,引领着数十万程序员走入Windows开发阵营,培养了大批精英。作为Windows开发人员的必备参考,本书是为打算理解Windows的C和C++程序员精心设计的。第5版全面覆盖Windows XP,Windows Vista和Windows Server 2008中的170个新增函数和Windows特性。书中还讲解了Windows系统如何使用这些特性,我们开发的应用程序又如何充分使用这些特性,如何自行创建新的特性。

2019-03-31

VC++深入详解源代码.孙鑫

《VC++深入详解》.孙鑫配套源代码。 《VC++深入详解》主要从程序内部运行的机制和MFC程序的组织脉络入手,使读者在学习VC++编程知识时,既能够知其然,又能知其所以然,从而帮助读者从根本上理解和掌握Windows的程序设计。另外,《VC++深入详解》还贯穿作者多年来学习编程的一些经验,以及一些学习方法的建议,为读者进一步的学习提供指导。   《VC++深入详解》从实际应用入手,由浅入深、循序渐进地讲述Windows程序内部运行机制、MFC框架、文本、菜单、对话框、文件操作、网络编程、进程间通信、ActiveX控件、动态链接库、HOOK编程等多个主题。   《VC++深入详解》内容丰富、实用性强,许多代码可以直接应用到工程项目中。书中的配套光盘还免费提供近乎45小时的VC++教学视频,读者在学习的过程中可以将视频和书互为参考,配合学习,这样可以更快、更好地掌握VC++编程。   《VC++深入详解》适合于VC++6.0的初学者和使用VC++从事开发的程序员,对于具有一定VC++编程经验的读者,也具有很好的参考价值。

2019-03-23

VC++深入详解.孙鑫(完整版)

《VC++深入详解》主要从程序内部运行的机制和MFC程序的组织脉络入手,使读者在学习VC++编程知识时,既能够知其然,又能知其所以然,从而帮助读者从根本上理解和掌握Windows的程序设计。另外,《VC++深入详解》还贯穿作者多年来学习编程的一些经验,以及一些学习方法的建议,为读者进一步的学习提供指导。   《VC++深入详解》从实际应用入手,由浅入深、循序渐进地讲述Windows程序内部运行机制、MFC框架、文本、菜单、对话框、文件操作、网络编程、进程间通信、ActiveX控件、动态链接库、HOOK编程等多个主题。   《VC++深入详解》内容丰富、实用性强,许多代码可以直接应用到工程项目中。书中的配套光盘还免费提供近乎45小时的VC++教学视频,读者在学习的过程中可以将视频和书互为参考,配合学习,这样可以更快、更好地掌握VC++编程。   《VC++深入详解》适合于VC++6.0的初学者和使用VC++从事开发的程序员,对于具有一定VC++编程经验的读者,也具有很好的参考价值。

2019-03-23

Win32多线程程序设计.侯捷.超清完美版+配套代码

本资源包含Win32多线程程序设计.侯捷.超清完美版+配套代码。其中文档为超清含书签的真正PDF文档(并非影印版),文档中的文字可直接复制。同时包含原书自带光盘源代码。 第一篇 上路吧,线程 第1章 为什么要“千头万绪” 一条曲折的路 与线程共枕 为什么最终用户也需要多线程 Win32基础 Context Switching Race Conditions(竞争条件) Atomic Operations(原子操作) 线程之间如何通讯 好消息与坏消息 第2章 线程的第一次接触 产生一个线程 使用多个线程的结果 核心对象(Kernel Objects) 线程结束代码(Exit Code) 结束一个线程 错误处理 后台打印(Background Printing) 成功的秘诀 第3章 快跑与等待 看似闲暇却忙碌(Busy Waiting) 性能监视器(Performance Monitor) 等待一个线程的结束 叮咚:被激发的对象(Signaled Objects) 等待多个对象 在一个GUI程序中等待 提要 第4章 同步控制(Synchronization) Critical Sections(关键区域、临界区域) 死锁(Deadlock) 哲学家进餐问题(The Dining Philosophers) 互斥器(Mutexes) 信号量(Semaphores) 事件(Event Objects) 从Worker线程中显示输出 Interlocked Variables 同步机制摘要 第5章 不要让线程成为脱缰野马 干净地终止一个线程 线程优先权(Thread Priority) 初始化一个线程 提要 第6章 Overlapped I/O,在你身后变戏法 Win32文件操作函数 被激发的File Handles 被激发的Event对象 异步过程调用(Asynchronous Procedure Calls,APCs) 对文件进行(Overlapped I/O的缺点 I/O Completion Ports 对Sockets使用Overlapped I/O 提要 第二篇 多线程程序设计的工具与手法 第7章 数据一致性(Data Consistency) 认识Volatile关键字 Referential Integrity The Readers/Writers Lock 我需要锁定吗? Lock Granularity(锁定粒度) 提要 第8章 使用C Run-Time Library 什么是C Runtime Library多线程版本 选择一个多线程版本的C Runtime Library 以C Runtime Library启动线程 哪一个好:CreateThread()抑或_beginthreadex()? 避免stdio.h 一个安全的多线程程序 结束进程(Process) 为什么你应该避免_beginthread() 提要 第9章 使用C++ 处理有问题的_beginthreadex()函数原型 以一个C++对象启动一个线程 建立比较安全的Critical Sections 建立比较安全的Locks 建立可互换(Interchangeable)的Lockks 异常情况(Exceptions)的处理 提要 第10章 MFC中的线程 在MFC中启动一个Worker线程 安全地使用AfxBeginThread()的传回值 在MFC中启动一个UI线程 与MFC对象共处 MFC的同步控制 MFC对于MsgWaitForMultipleObjects()的支持 提要 第11章 GDI与窗口管理 线程的消息队列 消息如何周游列国 GUI效率问题 以Worker线程完成多线程版MDI程序 多个上层窗口(Top Level Windows)如何是好? 线程之间的通讯 NT的影子线程(shadow Thread) 关于"Cancel"对话框 锁住GDI对象 提要 第12章 调试 使用Windows NT 有计划地对付错误 Bench Testing 线程对话框 运转记录(Logging) 内存记号(Memory Trails) 硬件调试寄存器(Hardware Debug Registers) 科学方法 提要 第13章 进程之间的通讯(Interprocess Communication) 以消息队列权充数据转运中心 使用共享内存(Shared Memory) 使用指针指向共享内存(Shared Memory) 较高层次的进程通讯(IPC) 提要 第14章 建造DLLs DLL的通告消息(Notifications) 通告消息(Notifications)的问题 DLL进入点的依序执行(Serialization)特性 MFC中的DLL通告消息(Notifications) 喂食给Worker线程 线程局部存储(Thread Local Storage,TLS) _declspec(thread) 数据一致性 提要 第三篇 真实世界中的多线程应用程序 第15章 规划一个应用程序 多线程的理由 要线程还是要进程? 多线程程序的架构 评估既有程序代码的适用性 对ODBC做规划 第三方的函数库(Third-Party Libraries) 提要 第16章 ISAPI Web服务器及其工作原理 ISAPI IS2ODBC范例程序 提要 第17章 OLE,ActiveX,COM COM的线程模型(COM Threading Models) AUTOINCR范例程序 提要 附录A MTVERIFY宏 附录B 更多的信息

2019-03-22

跟我一起学makefile

作为一个专业的Unix、Linux程序员必须要会的Makefile。本文档详细叙述了什么是Makefile,Makefile中的各个变量、语句个含义。以及教你如何编写Makefile。会不会编写Makefile从侧面说明了一个程序员是否具备完成大型工程的能力。

2018-11-05

C程序设计伴侣(陈良乔 著)

帮你更好地理解谭浩强老师的那本书以及更多。 更有趣、更容易、更深刻、更实战。 人有了伴侣才幸福,书有了伴侣才好懂。 学习C语言必备书籍之一。

2018-10-25

空空如也

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

TA关注的人

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