自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Shilyx的C/C++专栏

本博客一般只发布原创博文,内容主要包括C/C++、网络编程、算法方面,侧重Windows平台。

  • 博客(14)
  • 资源 (23)
  • 收藏
  • 关注

原创 鼠标单击变双击补丁(含C++代码)

鼠标单击变双击了怎么办?难道只能换鼠标吗?下面这个程序可以在一定程度上解决这个问题。程序和代码可以在这里下载。原理一看便知,代码如下:/* * @file : MouseClickHotfix.cpp * @author: shilyx * @date : 2014-04-13 19:33:42.540 * @note : Generated by SlxTe

2014-04-14 20:51:03 1353

原创 Windows平台基于多进程的echo服务器简单实现

这里的Echo服务器就是说客户端发什么,服务器端立刻返回什么。一种常见的实现是基于多线程的,在linux上还很容易就用fork实现一个多进程的服务器。下面演示一下在Windows平台如何用多进程来实现一个echo服务器。/* * @file : TestEchoServerMultiProcess.cpp * @author: Shilyx * @date : 20

2013-08-04 20:41:27 1732

原创 一道面试题:求1+2+…+n,不使用乘除法、for、while、if 、else、switch、case 等关键字

即将到来

2013-07-17 12:18:09 1020

原创 即将到来

即将到来

2013-06-24 19:31:37 729

原创 使用TransmitFile函数需要注意的几点

TransmitFile是专门用来进行文件传输的函数,它的优势在于在内核将文件句柄和套接字联系起来进行发送,避免了将文件内容读到应用层再写到内核的过程,提高了效率。函数声明如下:BOOL TransmitFile( SOCKET hSocket, HANDLE hFile, DW

2013-06-21 17:46:54 2205

原创 前段时间写的几个正则表达式

判断ip地址是否合法:  ((25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)\.){3}(25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)判断子网掩码是否合法:(255|254|252|248|240|224|192|128)(\.0){3}|255\.(255|254|252|248|240|224|192|128)(\.0){2}|(255

2013-06-21 17:46:42 985

原创 发布一个便捷工具【SlxCom】

下载地址:http://download.csdn.net/detail/my3439955/5615981简介: SlxCom是一个Explorer插件,使用时使用regsvr32 路径\SlxCom.dll 命令来注册,注册后即可使用。如果是64位系统,还需要按同样步骤注册SlxCom64.dll。SlxCom工具的功能列表如下:    1、复制文件完整路径。支持选中任意多个文件。点击

2013-06-20 08:50:09 2413

原创 “数独”的通用生成和解题思路

数独(すうどく,Sudoku)是一种运用纸、笔进行演算的逻辑游戏。玩家需要根据9×9盘面上的已知数字,推理出所有剩余空格的数字,并满足每一行、每一列、每一个粗线宫内的数字均含1-9,不重复。 每一道合格的数独谜题都有且仅有唯一答案,推理方法也以此为基础,任何无解或多解的题目都是不合格的。        数独求解即填入未知元素并满足数独成立规则的过程,鉴于数独的答案未必唯一,所以解题过程中要参杂

2013-06-15 16:30:58 2409

原创 “主线程”探究,谈谈我对“主线程”的理解

今天看到论坛上有人问关于”主线程“的问题,写篇文章来谈谈自己的看法。  我认为”主线程“是一个经验概念,所谓经验概念,就是说程序员印象中有这么个东西,但是在系统层面,并没有对线程进行”主“和”辅“的区分。为什么大家会有这种”主线程“的概念的,可能是由于常见的编程框架如MFC、VCL、包括SDK都存在一个共同的特点,从某个函数开始执行,这个函数执行完毕后,程序退出。那么这个函数所在的线程就可以称

2013-05-10 11:19:06 1500

原创 WinSock中关于阻塞接收/发送超时的一个BUG

在阻塞模型中,recvfrom和recv函数默认都是永久阻塞的,即没有数据到来和不发生错误的情况下函数的调用不会返回,但是可以调用setsockopt来设置阻塞时间。设置了合适的阻塞时间,可以让接收函数超时返回。int setsockopt( __in SOCKET s, __in int level, __in int o

2013-05-10 09:53:22 2151

原创 青蛙跳跃对调位置游戏的穷举解决算法

游戏在这里青蛙跳跃小游戏,让左边的青蛙和右边的青蛙对调位置。左边和右边各有三只青蛙,中心处有一个空位。每次可以跳一个青蛙,要么向前跳一格,要么跨过前方的青蛙跳一格,青蛙不能重叠,不能往回跳。  下面是解决该问题的穷举算法实现,算法已扩展到左边有任意只青蛙、右边有任意只青蛙、中间有任意个空位的情形。代码包可以在这里下载:代码包下载lr4.h#ifndef _LR4_H#define

2013-05-09 15:54:26 2335 2

原创 八皇后问题的扩展,任意数量皇后问题的较快速解法

今天看到一个简洁的例子来描述八皇后问题的文章,使用stl算法next_permutation来对解全排列并分别验证,代码上确实简洁,不过感觉此法在运算中做了很多无谓的工作,效率上应该不佳。不过,在处理八个皇后的情况下,还是能够很快处理出所有解的,但是皇后数量多了的话,就是极大延长求解时长。    八皇后问题,是一个古老而著名的问题,是回溯算法的典型例题。该问题是十九世纪著名的数学家高斯1850

2013-05-09 15:49:16 1274

原创 将整数拆分为勾股数的问题解决

在群里看到这样一个问题:解法如下: #include #define MAX 500000unsigned g_array[MAX + 1] = {0};#define EVEN(x) (((x)&1)==0)#define ODD(x) (((x)&1)==1)//判断两个数字是否互质的标准算法unsigned __int64 gcd(unsigned __i

2013-05-09 15:43:32 1308

原创 获取本机收到的UDP数据包的目标地址

本机收到UDP数据时,通过recvfrom函数可以直接获取发送者的地址:int recvfrom( __in SOCKET s, __out char* buf, __in int len, __in int flags, __out struct sockaddr* from,

2013-05-09 15:18:51 4274

最新身份证号归属地查询,json 和 sql 格式.rar

最新身份证号归属地查询,json 和 sql 格式

2021-05-08

身份证号归属地数据库.xlsx

最新身份证归属地数据库,excel格式

2021-05-08

AffdexSDK-3.3.0-522-win64.exe

AffdexSDK 表情识别,支持几十种表情识别

2021-02-10

MAC地址和制造厂商对应表

MAC地址和制造厂商对应表

2021-02-10

vc代码自动生成工具2016.12

平时新建vs工程太多配置项(加入64位生成、Release版调试信息格式、附加包含目录、附加库目录、计算相对路径),加上有时候需要直接创建一个某种类型的工程(例如sdk对话框、托盘图标、系统服务、动态库),再有时候可能会建多个版本的工程(vc6、vs2008、vs2010、vs2012、vs2013),所以写了个工具,由模板自动生成工程,并添加到同一个解决方案

2016-12-07

SlxCom20151130

SlxCom截止2015年12月的最新版本

2015-12-07

测试获取Win8.1的系统版本

http://bbs.csdn.net/topics/390950655?page=1#post-398680346 对于一个未加特殊处理的应用程序用GetVersionEx获取win8和win8.1系统版本,一律都是6.2 这是微软的兼容性考虑 如果你的程序是专门为Win8.1准备的,那么可以主动说明,这时候获得的版本是6.2和6.3 Win8.1的版本实际上是6.3 如何主动说明呢?加manifest,核心内容如下: <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> <compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1"> <application> <supportedOS Id="{1f676c76-80e1-4239-95bb-83d0f6d0da78}"/> </application> </compatibility> </assembly>

2014-12-16

鼠标单击变双击补丁和代码

鼠标单击双击后可以用此工具来作为补丁,临时解决这个问题。资源里有代码和工具软件

2014-04-14

最新 AnkhSvn-2.5.12266

AnkhSVN是一款在VS中管理Subversion的插件,您可以在VS中轻松的提交、更新、添加文件,而不用在命令行或资源管理器中提交。

2014-03-28

libevent的动态库

libevent的动态库(dll)版本,提取了所有函数导出的。 包含32和64位版本 libevent_core.dll对应core版本 libevent_extra.dll对应extra版本,是core版本的超集

2014-03-10

最新高清《标准建模语言UML教程》(中文版)

最新《标准建模语言UML教程》(中文版),很好的一本书,包括pdf教程及演示讲稿

2013-10-16

《编程珠玑》第二版(Programming Pearls,2nd Edition)(英文版+中文版+源码)高清PDF.rar

Jon Bentley,世界著名计算机科学家,被誉为影响算法发展的十位大师之一。他先后任职于卡内基—梅隆大学(1976—1982)、贝尔实验室(1982—2001)和Avaya实验室(2001年至今)。在卡内基—梅隆大学担任教授期间,他培养了包括Tcl语言设计者John Ousterhout、Java语言设计者James Gosling、《算法导论》作者之一Charles Leiserson在内的许多计算机科学大家。2004年荣获Dr.Dobb's程序设计卓越奖。

2013-10-16

经典 Linux高级程序设计

经典之作,不用多说了吧? 内容简介 · · · · · · 《Linux高级程序设计》是Linux程序设计领域的一部力作,讲解了大量程序员需要掌握的关键知识点,包括Linux开发中的基本工具、Linux系统编程、Linux桌面开发以及Linux与Web开发。书中包括大量有益的经验之谈和富于启发的示例。 目录 · · · · · · 第1章 Linux简介 1.1 Linux发展简史 1.1.1 GNU项目 1.1.2 Linux内核 1.1.3 Linux发行版 1.1.4 自由软件与开放源码 1.2 开发起步 1.2.1 选择一个Linux发行版 1.2.2 安装Linux发行版 1.2.3 沙盒和虚拟化技术 1.3 Linux社区 1.3.1 Linux用户组 1.3.2 邮件列表 1.3.3 IRC 1.3.4 私有社区 1.4 关键差别 1.4.1 Linux是模块化的 1.4.2 Linux是可移植的 1.4.3 Linux是通用的 1.5 本章总结 第2章 工具链 2.1 Linux开发过程 2.1.1 使用源代码 2.1.2 配置本地环境 2.1.3 编译源代码 2.2 GNU工具链的组成 2.3 GNU二进制工具集 2.3.1 GNU汇编器 2.3.2 GNU连接器 2.3.3 GNU objcopy和objdump 2.4 GNU Make 2.5 GNU调试器 2.6 Linux内核和GNU工具链 2.6.1 内联汇编 2.6.2 属性标记 2.6.3 定制连接器脚本 2.7 交叉编译 2.8 建立GNU工具链 2.9 本章总结 第3章 可移植性 3.1 可移植性的需要 3.2 Linux的可移植性 3.2.1 抽象层 3.2.2 Linux发行版 3.2.3 建立软件包 3.2.4 可移植的源代码 3.3 硬件可移植性 3.3.1 64位兼容 3.3.2 字节序中立 3.3.3 字节序的门派之争 3.4 本章总结 第4章 软件配置管理 4.1 SCM的必要性 4.2 集中式开发与分散式开发 4.3 集中式工具 4.3.1 CVS 4.3.2 Subversion 4.4 分散式工具 4.4.1 Bazaar-NG 4.4.2 Linux内核SCM 4.5 集成化SCM工具 4.6 本章总结 第5章 网络编程 5.1 Linux套接字编程 5.1.1 套接字 5.1.2 网络地址 5.1.3 使用面向连接的套接字 5.1.4 使用无连接套接字 5.2 传输数据 5.2.1 数据报与字节流 5.2.2 标记消息边界 5.3 使用网络编程函数库 5.3.1 libCurl函数库 5.3.2 使用libCurl库 5.4 本章总结 第6章 数据库 6.1 持久性数据存储 6.1.1 使用标准文件 6.1.2 使用数据库 6.2 Berkeley DB软件包 6.2.1 下载和安装 6.2.2 编译程序 6.2.3 基本数据处理 6.3 PostgreSQL数据库服务器 6.3.1 下载和安装 6.3.2 编译程序 6.3.3 创建一个应用程序数据库 6.3.4 连接服务器 6.3.5 执行SQL命令 6.3.6 使用参数 6.4 本章总结 第7章 内核开发 7.1 基本知识 7.1.1 背景先决条件 7.1.2 内核源代码 7.1.3 配置内核 7.1.4 编译内核 7.1.5 已编译好的内核 7.1.6 测试内核 7.1.7 包装和安装内核 7.2 内核概念 7.2.1 一句警告 7.2.2 任务抽象 7.2.3 虚拟内存 7.2.4 不要恐慌 7.3 内核编程 7.4 内核开发过程 7.4.1 git: 傻瓜内容跟踪器 7.4.2 Linux内核邮件列表 7.4.3 “mm”开发树 7.4.4 稳定内核小组 7.4.5 LWN:Linux每周新闻 7.5 本章总结 第8章 内核接口 8.1 什么是接口 8.2 外部内核接口 8.2.1 系统调用 8.2.2 设备文件抽象 8.2.3 内核事件 8.2.4 忽略内核保护 8.3 内部内核接口 8.3.1 内核API 8.3.2 内核ABI 8.4 本章总结 第9章 Linux内核模块 9.1 模块工作原理 9.1.1 扩展内核命名空间 9.1.2 没有对模块兼容性的保证 9.2 找到好的文档 9.3 编写Linux内核模块 9.3.1 开始之前 9.3.2 基本模块需求 9.3.3 日志记录 9.3.4 输出的符号 9.3.5 分配内存 9.3.6 锁的考虑 9.3.7 推迟工作 9.3.8 进一步阅读 9.4 分发Linux内核模块 9.4.1 进入上游Linux内核 9.4.2 发行源代码 9.4.3 发行预编译模块 9.5 本章总结 第10章 调试 10.1 调试概述 10.2 基本调试工具 10.2.1 GNU调试器 10.2.2 Valgrind 10.3 图形化调试工具 10.3.1 DDD 10.3.2 Eclipse 10.4 内核调试 10.4.1 不要惊慌! 10.4.2 理解oops 10.4.3 使用UML进行调试 10.4.4 一件轶事 10.4.5 关于内核调试器的注记 10.5 本章总结 第11章 GNOME开发者平台 11.1 GNOME函数库 11.1.1 Glib 11.1.2 GObject 11.1.3 Cairo 11.1.4 GDK 11.1.5 Pango 11.1.6 GTK+ 11.1.7 libglade 11.1.8 GConf 11.1.9 GStreamer 11.2 建立一个音乐播放器 11.2.1 需求 11.2.2 开始:主窗口 11.2.3 建立GUI 11.3 本章总结 第12章 自由桌面项目 12.1 D-BUS:桌面总线 12.1.1 什么是D-Bus 12.1.2 D-Bus基础 12.1.3 D-Bus方法 12.2 硬件抽象层 12.2.1 使硬件可以即插即用 12.2.2 HAL设备对象 12.3 网络管理器 12.4 其他自由桌面项目 12.5 本章总结 第13章 图形和音频 13.1 Linux和图形 13.1.1 X视窗 13.1.2 开放式图形库 13.1.3 OpenGL应用工具包 13.1.4 简单直接媒介层 13.2 编写OpenGL应用程序 13.2.1 下载和安装 13.2.2 编程环境 13.2.3 使用GLUT库 13.3 编写SDL应用程序 13.3.1 下载和安装 13.3.2 编程环境 13.3.3 使用SDL库 13.4 本章总结 第14章 LAMP 14.1 什么是LAMP 14.1.1 Apache 14.1.2 MySQL 14.1.3 PHP 14.1.4 反叛平台 14.1.5 评价LAMP平台 14.2 Apache 14.2.1 虚拟主机 14.2.2 安装和配置PHP 5 14.2.3 Apache Basic认证 14.2.4 Apache与SSL 14.2.5 SSL与HTTP认证的整合 14.3 MySQL 14.3.1 安装MySQL 14.3.2 配置和启动数据库 14.3.3 修改默认密码 14.3.4 MySQL客户端接口 14.3.5 关系数据库 14.3.6 SQL 14.3.7 关系模型 14.4 PHP 14.4.1 PHP语言 14.4.2 错误处理 14.4.3 异常错误处理 14.4.4 优化技巧 14.4.5 安装额外的PHP软件 14.4.6 日志记录 14.4.7 参数处理 14.4.8 会话处理 14.4.9 单元测试 14.4.10 数据库和PHP 14.4.11 PHP框架 14.5 DVD库 14.5.1 版本1:开发者的噩梦 14.5.2 版本2:使用DB数据层的基本应用程序 14.5.3 版本3:重写数据层,添加日志记录和异常 14.5.4 版本4:应用模板框架 14.6 本章总结

2013-10-16

Qt程序设计指南(很好的Qt参考书).pdf

Qt程序设计指南(很好的Qt参考书),免积分下载

2013-10-16

Explorer快捷工具SlxCom6.5.112.806.zip

SlxCom是一个Explorer插件,使用时使用regsvr32 路径\SlxCom.dll 命令来注册,注册后即可使用。如果是64位系统,还需要按同样步骤注册SlxCom64.dll。SlxCom工具的功能列表如下: 1、复制文件完整路径。支持选中任意多个文件。点击菜单项时如按住了Shift,则相关路径为短路经。 2、重命名时的智能帮助。重命名时首先自动选中文件名部分,不含扩展名;此时继续按F2将依次选中:文件名和扩展名、扩展名(含点号)、扩展名(不含点号)。 3、智能重命名文件提示。右击一个被系统自动“转义”的文件时,会自动提示是否反转义。转义效果如:abc.txt转义为abc - 副本 (2).txt等。 4、用记事本打开功能。右击任意单个文件时,均可调用此菜单项快速在记事本中打开文件 5、快速重启Explorer功能。按住Shift右击,即出现“重启Explorer”菜单项,使用后Explorer将被杀死随后重新启动,重新启动后将自动恢复打开重启前的工作文件夹。结束Explorer之前,桌面图标位置会被记住,重启后不会乱序。 6、右击文件夹或空白处时可快速在当前位置打开命令提示符。支持在共享资源上使用。点击菜单项时如按住了Shift,则相关路径为短路经。 7、数字签名自动校验功能。在Explorer显示已签名的文件时,会自动添加蓝色的对号图标的覆盖显示。自动校验签名仅处理小于200M大小的文件。XP及更早系统上,可能需要刷新才能显示图标覆盖。 8、数字签名手动校验功能。选中若干文件后可以右击启动校验数字签名功能,支持任意大小的文件。点击菜单项时如按住了Shift,则相关路径为短路经。 9、锁定情况查看。右击文件或文件夹时,可以查看当前文件或文件夹的锁定状态,如被某程序打开了句柄导致无法删除时,可查看锁定后解除锁定,即可删除。如果右击的文件当时处于占用状态,则此菜单项自动出现;如未被占用,则需要按住Shift才能显示此菜单项。 10、合并文件功能。可以将一个rar文件附加到一个jpg文件之后。 11、尝试运行功能。按住Shift右击非.exe扩展名的文件时,将出现尝试运行菜单项,可尝试将此文件作为可执行文件运行。。 12、快捷短语功能。在可执行文件上右击或在其他文件上按住Shift右击,将出现此菜单项。此功能允许给文件绑定一个短语字符串,在开始->运行时输入此短语即可直接调用文件。 13、快速注册和卸载Com组件功能。右击一个或多个文件时,如果文件列表中存在类似Com组件的文件,则出现此菜单项。使用后将自动调用regsvr32来注册或卸载一个或多个Com组件。 14、驱动程序加载和卸载功能。右击单个sys文件时,会出现“安装”、“启动”、“停止”、“卸载”四个菜单项,效果同InstDrv.exe工具。 15、XP及更早系统功能:仿照Win7在任务栏最右侧模拟出一小块区域,点击时可以实现“显示桌面”的功能。 16、XP及更早系统功能:仿照Win7重命名文件时自动选中文件名部分,不选中扩展名。 17、XP及更早系统功能:任务栏有多行时,自动拉伸开始按钮到多行大小。 18、XP及更早系统功能:仿照Win7“打开文件位置”功能在快捷方式邮件菜单中加入“打开文件位置”快捷菜单,以期快速定位文件。

2013-06-20

数独生成和解题工具

ss.exe是一个数独解题引擎 使用方法: ss.exe -v .9.5..8.7....2......3.49.2.1....67.......4..38..1526....5....7...8.9 .2..3.....96. ss.exe .9.5..8.7....2......3.49.2.1....67.......4..38..1526....5....7...8.9.2. .3.....96. ss.exe -v -v为详细输出,将打印解题步骤 最后一个参数为数独谜面,使用数字和点号逐行描述一个数独题目;为空则代表空数独,运行后将生成一个随机的数独

2013-06-15

驱动开发电子书合集.zip

Windows文件系统过滤驱动开发教程(第二版).pdf Microsoft Windows驱动程序模型设计(SHANER--Administrator--2012-10-20-11,27,37).pdf Microsoft Windows驱动程序模型设计.pdf Microsoft+Windows驱动程序模型设计.pdf Programming the microsoft windows driver model.pdf Windows.设备驱动程序技术内幕.pdf Windows2000设备驱动程序设计指南.pdf WindowsWDM设备驱动程序开发指南.pdf Windows驱动学习笔记.pdf

2013-06-15

青蛙跳跃小游戏的解法

青蛙跳跃小游戏的解法

2013-05-09

魔方还原代码

魔方还原的算法和演示程序,有源代码,vc编译

2013-03-08

TDI防火墙代码

TDI防火墙可以直接编译的源码,效果非常好

2013-03-08

AES算法加解密过程动画演示

AES算法加解密过程动画演示,用Flash的方式演示了AES算法的来龙去脉,可以帮助读者直观的理解算法

2013-03-08

空空如也

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

TA关注的人

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