流量统计:
Rixu Blog (日需博客)
日需博客,每日必需来踩踩哦..
posts - 108,comments - 54,trackbacks - 0
08 2011 档案
数字签名(图解)
posted @ 2011-08-29 15:29 日需博客 阅读(2349) | 评论 (3)  编辑
C#.net连接Mysql的类库      摘要: 微软的visual studio没有自带连接Mysql的驱动,要去网上下载一个mysql-connector-net-6.4.3驱动,然后安装就可以使用。
下面是我封装好的连接数据库的类,直接调用即可。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;
using MySql.Data.MySqlClient;  阅读全文
posted @ 2011-08-24 00:09 日需博客 阅读(3136) | 评论 (0)  编辑
SQL 数据类型
posted @ 2011-08-23 23:22 日需博客 阅读(1702) | 评论 (1)  编辑
GDI+ for VC6 MFC      摘要: 五年前,笔者曾在C#中使用GDI+开发程序,对其颇有好感。这一段时间,在使用VC6作图时,深切感会到使用GDI的种种不便,不比GDI+好用。沉迷于VC6的高效与轻便,不想只为了一个GDI+而被迫安装沉甸甸的.Net,便产生了一个疑问,难道GDI+只能用于.Net中吗?
访问微软的MSDN网站后,随即解开了此谜。于是便有了此文 – 如何在VC6 MFC中使用GDI+。  阅读全文
posted @ 2011-08-23 09:10 日需博客 阅读(2817) | 评论 (6)  编辑
用C#制作印章      摘要: 制作印章来说,主要是如何让字均匀的显示在弧线段上,那么一般的印章要么以圆或者椭圆为底图,不过这两者的算法大致相同,为了方便说明,如下就用相对简单的圆来举例说明,如果需要做椭圆的话,可以在我的基础上进行扩展,因为核心算法是一样的,相对于圆来说,椭圆求弧长以及各个字符的位置,这两点相对麻烦些,但是这两者都可找到相应的数学公式。  阅读全文
posted @ 2011-08-19 17:45 日需博客 阅读(1618) | 评论 (1)  编辑
C++自定义发IP包例子
posted @ 2011-08-19 14:55 日需博客 阅读(595) | 评论 (0)  编辑
ARP欺骗 C++实现      摘要: 前段时间我们学校的的网络总是出现掉线的问题,后来说是ARP欺骗,要我们用ANTIARPSNIFFER。小弟不才,

也想搞清楚这个ARP欺骗到底是个什么东西。于是在网上查了点资料,看了点文档。也算是DIY了一个出来,而

且可以不被ANTIARPSNIFFER发现的让对方主机在网络中死掉。于是把这个小东西贴出来让大家一起把玩一下。
在下菜鸟一只,还请高手指教
参考资料:《TCP/IP详解II:实现》,《WINPCAP 3.0 DOC》,《交换网络中的嗅探和ARP欺骗》(一位叫RefDom

的大哥很久前写的帖子)  阅读全文
posted @ 2011-08-19 11:55 日需博客 阅读(4804) | 评论 (0)  编辑
Permissions 0644 for ‘/root/.ssh/id_rsa’ are too open处理      摘要: 之前已经在freebsd主机登陆到dreamhost.com的ssh密钥实验是成功的,参考网址
http://wiki.dreamhost.com/SSH#Passwordless_Login
但今天尝试把密钥放到debian系统的/root/.ssh/id_rsa中,然后在debian的终端界面输入
ssh xxxx@xxxx.dreamhost.com
这样就出现 Permissions 0644 for ‘/root/.ssh/id_rsa’ are too open. 等错误显示了,经google查询下,原来只要把权限降到0600就ok了
输入命令
chmod 0600 /root/.ssh/id_rsa
然后再
ssh xxxx@xxxx.dreamhost.com
这样就可以密钥登陆了.  阅读全文
posted @ 2011-08-19 01:42 日需博客 阅读(12687) | 评论 (0)  编辑
Linux中文man在线手册
posted @ 2011-08-18 21:58 日需博客 阅读(3560) | 评论 (0)  编辑
用OpenSSH构建SSH服务器      摘要:   SSH服务和Telnet服务一样,通过远程登录登录到系统,在远程操控系统。但它与Telnet的不同点就是:Telnet在传输的过程中是平文传输,而SSH是将传输内容加密,在传送的过程中保证了传送内容的保密性,从而提高了系统的安全性。

  在这里,我们不准备将SSH服务作为用户上传下载文件的工具。我们只用SSH服务的开通为远程管理系统提供方便。另外在用户认证方式上,为了服务器和用户的安全,禁止用户密码的认证方式,而基于“钥匙”的方式。  阅读全文
posted @ 2011-08-16 18:54 日需博客 阅读(278) | 评论 (0)  编辑
C#中使用XSLT文件将XML文档转换为HTML      摘要: 1.创建XSLT文件,定义格式;
2.在C#中使用XslCompiledTransform对象的load()方法加载XSLT文件;
3.使用Transform()方法转换XML文档。  阅读全文
posted @ 2011-08-15 09:53 日需博客 阅读(834) | 评论 (0)  编辑
Windows平台下的内存管理      摘要: 1. Windows平台下主要的内存管理途径
申请
释放
new
delete
malloc
free
CoTaskMemAlloc
CoTaskMemFree
IMalloc::alloc
IMalloc/free
GlobalAlloc
GlobalFree
LocalAlloc
LocalFree
HeapAlloc
HeapFree
VirtualAlloc
VirtualFree  阅读全文
posted @ 2011-08-15 09:21 日需博客 阅读(450) | 评论 (0)  编辑
malloc,new,VirtualAlloc,HeapAlloc性能(速度)比较      摘要: 这里比较的VC++编译的C++代码中的性能

我用的是VC6.0测试的

就不介绍这几个的用法了

我写了一段简单的测试代码

测试结果是:

malloc:390
new:391
VirtualAlloc:454
HeapAlloc:47  阅读全文
posted @ 2011-08-15 09:19 日需博客 阅读(1289) | 评论 (2)  编辑
IIS Express refuses to start      摘要: "Starting IIS Express...
Report ListenerChannel stopped due to failure; ProtocolId:http,ListenerChannelId:0
HostableWebCore activation failed.
Unable to start iisexpress.
The interface is unknown.
For more information about the error, run iisexpress.exe with the tracing switch enabled."  阅读全文
posted @ 2011-08-12 22:05 日需博客 阅读(1552) | 评论 (0)  编辑
IIS Express 的配置、使用和注意点      摘要: VS2010的SP1引入了IIS Express支持,这是值得高兴的事情……因为自带的ASP.net Development Server只能单站点运行、不能设置虚拟目录、多少个项目就会出现多少个等等等等巴拉巴拉,我对它恨之入骨,总之,很长一段时间内我进行开发实际上都是用IIS的。但是用IIS有不方便的地方,就是必须开启IIS Admin服务,而且VS必须以管理员模式运行才能正常打开项目和调试。每次都以管理员模式启动已经比较麻烦了,比较郁闷的是,以管理员模式启动的vs处于特权状态,所以程序间的文件拖放就失效了……换句话说,如果我想从资源管理器中直接拖一个文件到vs中打开,就办不到了。  阅读全文
posted @ 2011-08-12 21:38 日需博客 阅读(837) | 评论 (0)  编辑
LNMP安装配置-linux Nginx/Mysql/Php/Phpmyadmin(CentOS vps)      摘要: 只在vps服务器搭建vpn线路,显然有些浪费。比如还可以在Linux的vps服务器上安装lnmp网站服务器。

LNMP是指在linux系统下安装Nginx服务器、Mysql数据库、Php (Phpmyadmin)。安装LNMP过程很简单,另外也有LNMP一键安装包,因此甚至不需要进行一些LNMP配置,网站服务器就可以工作了。但是lnmp一键安装的缺点是如果安装过程出现了问题,配置起来就困难很多了。

为什么不用lamp,即没有采用Apache服务器的原因是该VPS配置性能不高,跑apache服务器将会非常吃力。而Nginx是一个高性能的http、反向代理服务器,Nginx的特点就是轻便和高性能,非常适合低配置的VPS搭建网站服务器。下面是远方博客在CentOS系统下安装和配置LNMP、安装FTP服务器vsftpd、并搭建wordpress博客网站的过程,记录供备忘并交流。  阅读全文
posted @ 2011-08-12 00:27 日需博客 阅读(2197) | 评论 (0)  编辑
VPS构建web服务器介绍      摘要: 廉价的VPS都不约而同的会提供Linux的系统,并在控制面板上也会提供各种Linux系统的Reinstall,比说说经典的Redhat、Debian、Centos、Fedora 还有Ubuntu。选择什么系统的话,还是因人而异,很多玩Linux服务器的老手都会推荐Centos,因为相对比入手简单特别是国内有关的中文教材比较多,个人比较喜欢Debian,Debian占用资源很少,稳定性也不错,可惜国内有关的教程不多。。而至于源于Debian 的 Ubuntu,虽然在使用上比Debian方便多,但是也存在很多问题,桌面版本的系统使用起来相当的舒服,就是服务器系统的使用,个人不倾向Ubuntu。理论上64位的系统要比32位的要快,但是在廉价VPS母机的有限硬件条件下,其实差别甚微。  阅读全文
posted @ 2011-08-12 00:11 日需博客 阅读(267) | 评论 (0)  编辑
git命令快速参考      摘要: 1. 创建一个新的版本库
从一个压缩包中创建:
$ tar xzf project.tar.gz
$ cd project
$ git init #Initialized empty Git repository in .git/
$ git add .
$ git commit  阅读全文
posted @ 2011-08-11 11:50 日需博客 阅读(417) | 评论 (0)  编辑
Git命令查询手册
posted @ 2011-08-11 11:43 日需博客 阅读(700) | 评论 (0)  编辑
怎样把国内的域名转移到godaddy      摘要: 国内网络环境对于域名保护不利,管理不方便,修改资料、url转发等等操作限制太多,左一个申请,右一个申请,特别的麻烦。美国的域名服务商比如GoDaddy提供的服务就比较方便,相对自由,限制少,域名服务商也不能随便停止解析,除非经过相关严格仲裁。同时国外的域名服务费相对低廉,普通域名起码比国内便宜20-30元人民币。所以分享下域名转移的经验  阅读全文
posted @ 2011-08-10 23:09 日需博客 阅读(399) | 评论 (0)  编辑
免费申请ssl证书,web服务器适用      摘要: 越来越多的企业需要使用SSL进行加密的web访问服务,如:webmail。
对于中小企业来说,如何能够拥有由正式的授权机构签发的证书,避免手动确认自签署证书的尴尬,而又能省去每年购买SSL证书服务的费用呢?  阅读全文
posted @ 2011-08-10 00:14 日需博客 阅读(1981) | 评论 (0)  编辑
VC++下使用ADO编写数据库程序      摘要: 准备:
(1)、引入ADO类
#import "c:\program files\common files\system\ado\msado15.dll"
no_namespace
rename ("EOF", "adoEOF")
(2)、初始化COM
在MFC中可以用AfxOleInit();非MFC环境中用:
CoInitialize(NULL);
CoUnInitialize();  阅读全文
posted @ 2011-08-09 14:21 日需博客 阅读(319) | 评论 (0)  编辑
GUI程序也能使用控制台窗口      摘要: 很多时候,调试GUI程序是很不方便的,通常的做法是使用MessageBox,但是作为一个模态窗口,它经常产生不必要的消息,比如killfocus, setfocus或者paint,从而影响调试的执行过程。当然,使用vc的调试器也不错,但是这样也很容易造成窗口切换从而产生干扰消息。
因此,如果能像在控制台程序里那样使用cin/cout对象或printf族函数,会使得调试过程方便得多。而通常,windows是不会为GUI程序产生单独的命令行窗口的。所以我们是看不到使用标准输入输出流输出的东西的。既然系统不提供,那就自己动手“造”出一个来吧!

下面是一个简单的控制台窗口对象,它可以为你的程序创建一个命令行窗口,并将stdout,stdin和stderr重定向到这个命令行窗口。在程序中建立一个这样的对象之后,就可以直接使用cin/cout/*printf来操纵这个新的命令行窗口了!5 f8 I$ l4 o- b3 L, m% h  阅读全文
posted @ 2011-08-09 13:57 日需博客 阅读(588) | 评论 (0)  编辑
位运算的用处搜集      摘要: 位运算应用口诀
清零取反要用与,某位置一可用或
若要取反和交换,轻轻松松用异或
移位运算
要点 1 它们都是双目运算符,两个运算分量都是整形,结果也是整形。
2 " < <" 左移:右边空出的位上补0,左边的位将从字头挤掉,其值相当于乘2。
3 ">>"右移:右边的位被挤掉。对于左边移出的空位,如果是正数则空位补0,若为负数,可能补0或补1,这取决于所用的计算机系统。
4 ">>>"运算符,右边的位被挤掉,对于左边移出的空位一概补上0。  阅读全文
posted @ 2011-08-08 13:29 日需博客 阅读(257) | 评论 (0)  编辑
整合 Google 开源 C++ 代码      摘要: Google 开源了很多优秀的 C++ 程序库,本文介绍如何将其中几个整合到一起。
本文涉及的 Google 库有:
gflags - 命令行参数解析。可以完全用命令行来配置应用程序,省去配置文件。
gtest - C++ 单元测试框架
gmock - C++ 单元测试中用到的 mock
glog - 日志库
protobuf - 高效的网络协议格式
还有第三方的 libunwind 和 zlib。  阅读全文
posted @ 2011-08-08 13:11 日需博客 阅读(554) | 评论 (0)  编辑
linux下automake用法      摘要: 作为Linux下的程序开发人员,大家一定都遇到过Makefile,用make命令来编译自己写的程序确实是很方便。一般情况下,大家都是手工写一个简单Makefile,如果要想写出一个符合自由软件惯例的Makefile就不那么容易了。

在本文中,将给大家介绍如何使用 autoconf和automake两个工具来帮助我们自动地生成符合自由软件惯例的Makefile,这样就可以象常见的GNU程序一样,只要使用“./configure”,“make”,“make install”就可以把程序安装到Linux系统中去了。这将特别适合想做开放源代码软件的程序开发人员,又或如果你只是自己写些小的Toy程序,那么这个文章对你也会有很大的帮助。  阅读全文
posted @ 2011-08-08 11:58 日需博客 阅读(2480) | 评论 (0)  编辑
介绍LuaPlus: 好用的Lua For C++扩展      摘要: LuaPlus是Lua的C++增强,也就是说,LuaPlus本身就是在Lua的源码上进行增强得来的。用它与C++进行合作,是比较好的一个选择。
LuaPlus目前版本为:LuaPlus for Lua 5.01 Distribution Build 1080 (February 28, 2004)。大家可以到http://luaplus.org/ 站点下载:
源码 (http://wwhiz.com/LuaPlus/LuaPlus50_Build1081.zip)
目标码 (http://wwhiz.com/LuaPlus/LuaPlus50_Build1081_Win32Binaries.zip)
介绍LuaPlus: 好用的Lua For C++扩展 沐枫网志   阅读全文
posted @ 2011-08-08 11:36 日需博客 阅读(542) | 评论 (1)  编辑
非常优秀的vimrc设置      摘要: 非常优秀的vimrc设置。反正我很喜欢

" An example for a vimrc file.
"
" Maintainer: a18ccms
" Last change: 2010 03 12
"
" To use it, copy it to
" for Unix and OS/2: ~/.vimrc
" for Amiga: s:.vimrc
" for MS-DOS and Win32: $VIM\_vimrc
" for OpenVMS: sys$login:.vimrc

" When started as "evim", evim.vim will already have done these settings.
if v:progname =~? "evim"
finish
endif  阅读全文
posted @ 2011-08-08 11:21 日需博客 阅读(1430) | 评论 (0)  编辑
json格式入门和总结      摘要: 数据交换的格式,从结构上看,所有的数据(data)最终都可以分解成三种类型:

第一种类型是标量(scalar),也就是一个单独的字符串(string)或数字(numbers),比如"北京"这个单独的词。

第二种类型是序列(sequence),也就是若干个相关的数据按照一定顺序并列在一起,又叫做数组(array)或列表(List),比如"北京,上海"。

第三种类型是映射(mapping),也就是一个名/值对(Name/value),即数据有一个名称,还有一个与之相对应的值,这又称作散列(hash)或字典(dictionary),比如"首都:北京"。  阅读全文
posted @ 2011-08-08 11:07 日需博客 阅读(393) | 评论 (0)  编辑
修改IAT实现本进程API HOOK      摘要: //修改IAT实现本进程API HOOK
//coded by xicao
//QQ:327062448
//E-MAIL:xicao54007@sina.com
#include
#include //ImageDirectoryEntryToData
#pragma comment(lib,"imagehlp.lib")
/************************************************************/
char *szModName = NULL ;
char *szHacked = "不好意思hook到了!" ;
DWORD dwHookFun ;
DWORD dwHookApiAddr;
PIMAGE_IMPORT_DESCRIPTOR pImportDesc ;
PIMAGE_THUNK_DATA32 pThunk;
U  阅读全文
posted @ 2011-08-08 11:03 日需博客 阅读(1443) | 评论 (0)  编辑
经典编程书籍(C++, 网络, Windows, Linux)      摘要: 两年前就给自己列出了一个读书清单,但进展缓慢,看的经典书籍仍然寥寥可数,惭愧中......
现在将这个书单重新修改,一方面鞭策自己学习,另一方面也表达对大牛们有如滔滔江水般的敬仰之意。
书单中列举的都是相关领域的经典书籍,必读之作。此书单的编辑参考了很多网站,包括一些名家的推荐,例如侯捷,孟岩,荣耀,潘爱民等等,在此也向这些前辈表示感谢。^_^   阅读全文
posted @ 2011-08-08 10:59 日需博客 阅读(575) | 评论 (0)  编辑
LPTSTR、LPCSTR、LPCTSTR、LPSTR的来源及意义      摘要: UNICODE:它是用两个字节表示一个字符的方法。比如字符'A'在ASCII下面是一个字符,可'A'在UNICODE下面是两个字符,高字符用0填充,而且汉字'程'在ASCII下面是两个字节,而在UNICODE下仍旧是两个字节。UNICODE的用处就是定长表示世界文字,据统计,用两个字节可以编码现存的所有文字而没有二义。
MBCS,它是多字节字符集,它是不定长表示世界文字的编码。MBCS表示英文字母时就和ASCII一样(这也是我们容易把MBCS和ASCII搞混的原因),但表示其他文字时就需要用多字节。
WINDOWS下面的程序设计可以支持MBCS和UNICODE两种编码的字符串,具体用那种就看你定义了MBCS宏还是UNICODE宏。MBCS宏对应的字符串指针是char*也就是LPSTR,UNICODE对应的指针是unsigned short*也就是LPWSTR,为了写程序方便微软定义了类型LPTSTR,在MBCS下他就是char*, 在UNICODE下它是unsigned char*,这样你就可以重定义一个宏进行不同字符集的转换了。  阅读全文
posted @ 2011-08-08 10:58 日需博客 阅读(599) | 评论 (0)  编辑
使用KeepAlive检测网络异常      摘要: #include "netinet/tcp.h"
int keepAlive = 1; //设定KeepAlive
int keepIdle = 30; //开始首次KeepAlive探测前的TCP空闭时间
int keepInterval = 30; //两次KeepAlive探测间的时间间隔
int keepCount = 3; //判定断开前的KeepAlive探测次数

if(setsockopt(sockfd,SOL_SOCKET,SO_KEEPALIVE,(void*)&keepAlive,sizeof(keepAlive)) == -1)
{
printf("Socket Option setting(SO_KEEPALIVE) fail !\n");
return FALSE;
}

if(setsockopt(sockfd,SOL_TCP,TCP_KEEPIDLE,(void *)&ke  阅读全文
posted @ 2011-08-08 10:53 日需博客 阅读(526) | 评论 (0)  编辑
DLL的定义与调用
posted @ 2011-08-07 19:18 日需博客 阅读(682) | 评论 (0)  编辑
u盘/移动硬盘(usb hd)安装多种linux live CD      摘要: 如果U盘够大,可以在一个U盘安装slax,pclinuxos,Linux Mint,puppy Linux等多种live linux。移动硬盘原理相同,不做区分。
因为U盘常用来拷贝文件,fat格式在多种操作系统上通用,所以用grub4dos管理U盘引导。
把U盘格成HDD格式:
用DiskGenius 3.2把U盘格式化为USB-HDD格式,推荐使用FAT32分区;或者用U盘格式化工具(HPUSBFW.EXE )格式化为 HDD 格式。还有其它 工具如FlashBoot、 WIN PM 等。
将引导代码写入U盘mbr:
Win32下,运行grubinst_gui.exe ,在“磁盘”处选中U盘,在“选项”区选中“不保存原来的mbr”、“不引导原来的mbr”、“启动时不搜索软盘”、“输出详细信息”,点击“安装”即可。
拷贝grub4dos的grub.exe、grldr、menu.lst到u盘根目录。
现在,U盘已经可以用grub引导,把电脑设置为U盘优先引导,测试一下grub的引导。
安装linux live cd的过程分  阅读全文
posted @ 2011-08-06 00:18 日需博客 阅读(1950) | 评论 (0)  编辑
Crypto++入门学习笔记(DES、AES、RSA、SHA-256)      摘要: 背景(只是个人感想,技术上不对后面的内容构成知识性障碍,可以skip):
最近,基于某些原因和需要,笔者需要去了解一下Crypto++库,然后对一些数据进行一些加密解密的操作。
笔者之前没接触过任何加密解密方面的知识(当然,把每个字符的ASCII值加1之流对明文进行加密的“趣事”还是干过的,当时还很乐在其中。),甚至一开始连Crypto++的名字都没有听过,被BS了之后,就开始了Crypto++的入门探索过程。
最初,大概知道了要了解两大类算法中的几个算法——对称加密算法:DES、AES(后来因为人品好的缘故也了解了下非对称加密算法RSA,后文会详述何谓“人品好”);散列算法(需要通过Hash运算):SHA-256。
起初,笔者以为这样的知名算法在网上应该有很多现成的例子。笔者比较懒,对于自己不熟悉的东西,总希望找捷径,直接找别人现(在已经写)成可(编译运)行的代码然后施展ctrl + C,ctrl + V算法(咳,什么算法,是大法!!!)。
However,发觉网上的例子不是稀缺,就是只有代码没有解释。笔者觉得很难忍受这样的“莫名其妙”(奇怪的  阅读全文
posted @ 2011-08-05 16:37 日需博客 阅读(1749) | 评论 (0)  编辑
Crypto++ 的使用方法      摘要: 从官方网下载的Crypto++库是开源的,只有源文件和几个可以生成lib、dll的工程,以及一个使用的例子工程,因此希望生成自己建的工程能使用的SDK。

1.编译链接生成cryptlib.lib
打开cryptest.sln,分别在Debug模式和Release模式下编译链接cryptlib工程,成功后会在cryptopp54\\Win32\\output\\debug和cryptopp54\\Win32\\output\\release下生成cryptlib.lib文件。作者当时用的是Crypto++ 5.4版本。
Build时方法是,右击Solution Explorer中的cryptlib工程,单击build。第一次时它会报错说“d:\\cryptopp54\\adler32.cpp(3) : fatal error C1033: cannot open program database ’d:\\cryptopp54\\win32\\cryptlib\\debug\\vc80.idb’”,没关系,按这样再build一次,就  阅读全文
posted @ 2011-08-05 16:24 日需博客 阅读(5178) | 评论 (0)  编辑
人生第一篇博客文章,写写VAssistX的VA Snippet Editor      摘要: 首先,先上效果代码
1//********************************************************************
2// TESTCLASS.H 文件注释
3// 文件名 : TESTCLASS.H
4// 文件路径: J:\CODING\TEST\C++解疑\CYUYAN\
5// 作者 : RIPPLE
6// 创建时间: 2009/10/3 11:02
7// 文件描述:
8//*********************************************************************
9#ifndef _H_TESTCLASS_H_
10#define _H_TESTCLASS_H_
11
12#include
13using namespace std;  阅读全文
posted @ 2011-08-05 09:12 日需博客 阅读(1720) | 评论 (0)  编辑
C++重载operator的示例      摘要: 以下示例中定义了一个class test, 重载了<, +, +=, =, ==, <<, >>等符号:

#include
#include
using namespace std;

class test{
public:
int v;
/*构造函数*/
test():v(0){}
test(const int &a):v(a){}
test(const test &t1):v(t1.v){}

/*以下重载小于号 < */
//比较两个对象的大小
bool operator<(const test &t1) const{
return (v < t1.v);
}  阅读全文
posted @ 2011-08-04 14:35 日需博客 阅读(666) | 评论 (0)  编辑
Windows完成端口与Linux epoll技术简介      摘要: WINDOWS完成端口编程
1、基本概念
2、WINDOWS完成端口的特点
3、完成端口(Completion Ports )相关数据结构和创建
4、完成端口线程的工作原理
5、Windows完成端口的实例代码
Linux的EPoll模型
1、为什么select落后
2、内核中提高I/O性能的新方法epoll
3、epoll的优点
4、epoll的工作模式
5、epoll的使用方法
6、Linux下EPOll编程实例
总结  阅读全文
posted @ 2011-08-04 13:49 日需博客 阅读(351) | 评论 (0)  编辑
我的名片QR码,哈哈
posted @ 2011-08-04 13:25 日需博客 阅读(219) | 评论 (0)  编辑
C++类型转换总结      摘要: C风格的强制类型转换(Type Cast)很简单,不管什么类型的转换统统是:
TYPE b = (TYPE)a。
C++风格的类型转换提供了4种类型转换操作符来应对不同场合的应用。

const_cast,字面上理解就是去const属性。
static_cast,命名上理解是静态类型转换。如int转换成char。
dynamic_cast,命名上理解是动态类型转换。如子类和父类之间的多态类型转换。
reinterpreter_cast,仅仅重新解释类型,但没有进行二进制的转换。
4种类型转换的格式,如:TYPE B = static_cast(TYPE)(a)。  阅读全文
posted @ 2011-08-03 13:57 日需博客 阅读(229) | 评论 (0)  编辑
Gina.dll登录功能的注册表实现      摘要: 本文主要介绍Gina.dll登录功能的注册表实现,在前文中,我们知道WlxLoggedOutSAS与WlxActivateUserShell函数分为登录之前的处理函数与登录之后的处理函数。于是,我们就可以结合注册表的一些功能来实现Gina.dll的登录。  阅读全文
posted @ 2011-08-03 13:42 日需博客 阅读(1008) | 评论 (0)  编辑
Windows开机登录认证与Gina DLL      摘要: Windows的开机密码认证模块一般是由Gina DLL完成的。在NT/2000中交互式的登陆支持是由WinLogon调用GINA DLL实现的,GINA DLL提供了一个交互式的界面为用户登陆提供认证请求。  阅读全文
posted @ 2011-08-03 13:41 日需博客 阅读(1256) | 评论 (0)  编辑
Kompex SQLite Wrapper for C++ - Examples      摘要: Here you can see some examples.
It shows a part of the functionality of the wrapper and how you can use it.
You can find more examples in the example application (contained in download package).


1. open a database and create a statement instance for sql queries/statements
// open database
Kompex::SQLiteDatabase *pDatabase = new Kompex::SQLiteDatabase("test.db", SQLITE_OPEN_READWRITE, 0);
// create statement instance for sql queries/statements
Kompex::SQLite  阅读全文
posted @ 2011-08-02 14:12 日需博客 阅读(1657) | 评论 (1)  编辑