自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(540)
  • 收藏
  • 关注

原创 微信公众号开发---验证服务与回复消息

经过第一个阶段的工作,公众号服务器方面的配置已经完成,接下来就是开发环境的搭建了。准备工作请看上一篇文章:0. 消息的传递路径1. 启动XShell,开启端口转发按照上一篇文章对XShell进行配置,启动到服务器的连接以后,端口转发也就在工作了,这样就可以将请求到服务器的操作转发到本地来。2. 启动HTTP服务,接受公众号服务器发送过来的请求在本地开启一个HTTP服务,端口...

2020-03-29 14:40:00 540

原创 微信公众号开发(二)---验证服务与回复消息

经过第一个阶段的工作,公众号服务器方面的配置已经完成,接下来就是开发环境的搭建了。准备工作请看上一篇文章:0. 消息的传递路径1. 启动XShell,开启端口转发按照上一篇文章对XShell进行配置,启动到服务器的连接以后,端口转发也就在工作了,这样就可以将请求到服务器的操作转发到本地来。2. 启动HTTP服务,接受公众号服务器发送过来的请求在本地开启一个HTTP服务,端口...

2020-03-29 14:40:00 217

原创 公众号开发(一)-----准备工作

公众号开发(一)-----准备工作要进行公众号服务的开发,你需要做以下的准备:申请一个公众号,订阅号是都可以开通的,如果是服务号就更好了。有一个服务器,阿里云或者其他的都行,重要的是有公网IP。需要会编程,熟悉基本的HTTP请求和回复。1、申请公众号公众号可以去微信公众平台申请,目前应该是一个身份证可以申请2个公众号。如果你有公司或者企业资质,就可以申请服务号了,功能更加...

2020-03-28 12:19:00 248

原创 微信公众号开发(一)-----准备工作

公众号开发(一)-----准备工作要进行公众号服务的开发,你需要做以下的准备:申请一个公众号,订阅号是都可以开通的,如果是服务号就更好了。有一个服务器,阿里云或者其他的都行,重要的是有公网IP。需要会编程,熟悉基本的HTTP请求和回复。1、申请公众号公众号可以去微信公众平台申请,目前应该是一个身份证可以申请2个公众号。如果你有公司或者企业资质,就可以申请服务号了,功能更加...

2020-03-28 12:19:00 219

原创 leveldb文章列表

leveldb文章列表可写文件Leveldb源码分析之可写文件(一)—WritableFileLeveldb源码分析之可写文件(二)—PosixWritableFileLeveldb源码分析之可写文件(三)—DataFileLeveldb源码分析之可写文件(四)—ManifestFileLeveldb源码分析之可写文件(五)—StdoutPrinterLeveldb源码分析...

2020-03-16 17:44:00 165

原创 TinyIM流程之删除好友

TinyIM流程之删除好友1. 业务简介删除好友是用户解除好友关系的操作。2. 流程简介用户选择好友列表的某个好友,鼠标右键单击,选择删除好友。客户端发送删除好友请求。服务器接收删除好友请求。服务器解除好友关系。服务器通知客户端好友删除成功。流程图如下:3 需要注意的地方服务器需要先判断是否为好友,再进行删除的操作。好友删除以后,是直接通知被删除方还是等被...

2020-03-06 10:45:00 592

原创 TinyIM流程之添加好友

TinyIM流程之添加好友1. 业务简介用户添加好友是能够进行好友聊天的前提条件。2. 流程简介用户处于登录状态。查找端选择查找好友,并输入用户的信息(例如 昵称/好友ID/好友用户名)。查找端发送查找用户请求到服务器。服务器接收查找用户请求,检查相关的参数。服务器处理查找用户请求,生成查找用户结果。服务器发送查找结果到客户端。客户端接收查找结果,并显示查找结果。...

2020-03-05 18:19:00 714

原创 《软件创富----共享软件创业之道》读后感

春节的时候因为不能出门,在家看完了《软件创富》这本书。这本书围绕共享软件展开,对软件历史感兴趣的朋友,非常推荐你去看这本书。下面是我的一些体会,跟大家分享1、书籍简介这本书由邓洪涛、闫辉编写,刘韧、蒋涛作序,周筠担任责任编辑。主要讲述了2000年前后,中国的软件开发者开发共享软件的故事。全书共分为4个部分----先驱篇、理论篇、发展篇、共享篇。先驱篇主要以已经比较成功的共享软件为例...

2020-03-04 18:19:00 387

原创 TinyIM流程之用户注销

TinyIM流程之用户注销0. 源码地址TinyIM1. 业务简介用户注销是用户不再使用某个账号的时候,从系统中删除该账号一切相关信息的操作。2. 流程简介用户处于登录状态。用户点击注销按钮,系统提示用户是否确定注销,用户点击确定按钮。客户端发送用户注销消息。服务器接收用户注销消息。服务器检查相关的参数。用户名和密码匹配成功,服务器发送退出注销成功消息到客户端。...

2020-03-04 16:23:00 400

原创 TinyIM流程之用户退出登录

TinyIM流程之用户退出登录0. 源码地址TinyIM1. 业务简介用户退出登录是在用户完成收发消息以后,暂时不再使用该软件时进行的操作。2. 流程简介用户点击主界面关闭按钮,弹出确认退出提示框。用户点击确认退出按钮。客户端发送用户退出登录消息。服务器接收用户退出登录消息。服务器检查相关的参数。用户名和密码匹配成功,服务器发送退出登录成功消息到客户端。服务器重...

2020-03-04 11:32:00 317

原创 TinyIM流程之用户登录

TinyIM流程之用户登录1. 业务简介用户登录是在用户完成账号注册之后的操作,为用户接收和发送消息做准备。2. 流程简介用户填写用户名、密码等信息。用户点击登录按钮。客户端发送用户登录消息。服务器接收用户登录消息。服务器检查相关的参数。用户名和密码匹配成功,服务器发送登录成功消息到客户端。客户端接收消息,显示成功。其他情况在流程图中介绍。流程图如下:3 ...

2020-03-03 17:40:00 160

原创 TinyIM流程之用户注册

TinyIM流程之用户注册1. 业务简介用户注册主要用在用户申请聊天账号的时候使用,是用户进行聊天的准备工作。2. 流程简介用户填写用户名、密码、昵称等信息。用户点击注册按钮。客户端发送用户注册消息。服务器接收用户注册消息。服务器检查相关的参数。服务器进行用户注册的相关操作。生成用户注册结果。返回用户注册结果给客户端。客户端显示用户注册结果。流程图如下:...

2020-03-03 14:49:00 154

原创 Windows获取网络地址、子网掩码等

include <winsock2.h>include <iphlpapi.h>include <stdio.h>include <stdlib.h>pragma comment(lib, "IPHLPAPI.lib")define MALLOC(x) HeapAlloc(GetProcessHeap(), 0, (x))def...

2020-02-07 16:31:00 593

原创 一个支持聊天机器人的开源IM

TinyIM经过6个月的开发工作,TinyIM的第一个版本终于完成了。IM这么多,它有哪些不一样的地方呢?1. 支持聊天机器人目前的主流IM客户端的设计上,收发消息都需要通过界面完成。我们知道GUI的代码做自动化测试比较困难,TinyIM对客户端采用了将GUI和Core分离的架构设计,并在Core部分同时支持TCP协议和HTTP协议。这样做的好处有两点:1、可以通过同步的HTT...

2020-01-16 10:32:00 563

原创 lower_case_table_names与表格名称大小写的问题

1 简介在MySQL中,数据库对应数据目录中的目录。数据库中的每个表至少对应数据库目录中的一个文件(也可能是多个,取决于存储引擎)。因此,所使用操作系统的大小写敏感性决定了数据库名和表名的大小写敏感性。在大多数Unix中数据库名和表名对大小写敏感,而在Windows中对大小写不敏感。一个显著的例外情况是Mac OS X,它基于Unix但使用默认文件系统类型(HFS+),对大小写不敏感...

2019-12-13 18:41:00 347

原创 读书清单

作者:犹寒链接:https://www.zhihu.com/question/51265095/answer/129906474来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。本文作者姬十三,文章著作权归原作者所有。侵删。—————————————————————————————是在2009年的时候,集合了科学松鼠会和豆瓣的网友,一起推荐了这些书...

2019-12-11 14:21:00 1405

原创 咳血的独角兽5——挥向投资人的镰刀

咳血的独角兽5——挥向投资人的镰刀原创: 半佛仙人 半佛仙人 昨天这是半佛仙人的第150篇原创0好久没有更新独角兽系列了,这次是独角兽系列第五篇。之前的4篇因为这样那样的原因,已经看不到了,也成功得罪了一大票人。不过没关系,这个系列还是会写下去的,毕竟互联网公司的各种有趣的破事儿,永远不会少。说到互联网创业,大家没日没夜在可劲儿的努力,到底是为了什么?除了极少数人是真的为...

2019-12-10 07:01:00 655

原创 微服務設計的十個步驟

转自 https://www.ithome.com.tw/voice/134648近年来,「微服务」是非常热门的技术主题。微服务的好处是:1可调节业务变化(例如:快速调整业务功能)2可调节业务「量」变化(例如:举办促销,业务量大增)。而微服务的缺点也很明显:1设计难度高2维运难度高。关于「维运难度高」这一点,可以通过各种技术框架和工具来缓解。但第一点「设计难度高」就比较麻烦,因为设计...

2019-12-07 11:19:00 134

原创 CMake设置MFC静态依赖

CMake设置MFC静态依赖 追加CMAKE_CXX_FLAGS_Build Typeset(CMAKE_CXX_FLAGS_RELEASE "\({CMAKE_CXX_FLAGS_RELEASE} /MT") set(CMAKE_CXX_FLAGS_DEBUG "\){CMAKE_CXX_FLAGS_DEBUG} /MTd")12如果C...

2019-04-28 11:45:00 537

原创 11

11 在学校读书的时候,偶尔作业不会做,我很可能会问同学,他很可能会把答案直接给我。但是,如果我去问老师,他很可能给我一些启发和引导。这正是我对不同帮助类型最初的感受。进入职场之后,你我也经常会碰到需要别人帮助的情况。比如说,新入职时不知道怎么搭开发环境、不知道如何去写第一个代码块;或者是一个问题有两种处理方案,而你不知道应该选哪一个;又或者...

2019-04-24 20:27:00 175

原创 AT指令读取SIM卡的手机号

AT指令读取SIM卡的手机号 使用AT命令读取本机号码的步骤在使用AT+CNUM命令读取SIM卡的本机号码时,会发现有的SIM卡的本机号码能读出,而有的SIM卡的本机号码不能读出,不能读出的原因是SIM卡的本机号码未写入电话本存储区,导致无法读取本机号码。使用AT命令将本机号码存入电话本存储区的步骤如下:先确认SIM卡的本机号码;使用AT...

2019-04-18 12:56:00 6099

原创 AT指令1

AT指令1 我之前认为手机号码与SIM卡是一一对应的,后来想想不对,因为有换卡不换号的情况啊,所以SIM卡应该只是一个电话号码的储存介质,而与SIM卡一一对应的是另一个编码——IMSI(国际移动签署这标识)。以下为获取IMSI的命令:AT+CIMI获得IMSI。这命令用来读取或者识别SIM卡的IMSI。在读取IMSI之前应该先输入PIN(如果需...

2019-04-18 12:55:00 455

原创 PDU 超链接

PDU 超链接 http://blog.sina.com.cn/s/blog_453226290102wvnu.htmlhttp://blog.sina.com.cn/s/blog_453226290102wvnv.htmlhttp://blog.sina.com.cn/s/blog_453226290102wvnw.htmlhttp://b...

2019-04-17 00:00:00 119

原创 常见AT指令1

常见AT指令1 AT指令在当代手机通讯中起着重要的作用,能够通过AT指令控制手机的许多行为,包括拨叫号码、按键控制、传真、GPRS等。西门子M55手机为我提供了很多的AT指令,网络上关于AT指令的资料也很多,我这里提取一些比较重要的做个简单解释。其他的手机也基本上通用,更详细的资料请查阅手机生产商的资料。欲使用AT命令,可以安装微软的超级终端程...

2019-04-16 17:47:00 422

原创 PDU 发送短信4

PDU 发送短信4 pdu 编码主要包括两个主要的部分,一是 pdu 串的整体数据格式,分别因为发送信息串和接收信息串而有区别,二是 pdu 中文本部分的编码,分别因为字符集而不同。我们也可以这样来理解这个 pdu 编码的格式, sms 相当于一个协议栈,最简单的协议栈:根据 gsm03.40 规范, sms 协议包括以下几层:1、 SM-A...

2019-04-15 22:42:00 185

原创 PDU 发送短信3

PDU 发送短信3 T指令收发短信主要有两种模式:Text模式和PDU(Protocol Data Unit,协议数据单元)模式。使用Text模式收发短信代码简单,很容易实现,最大缺点不支持中文短信。PDU模式不仅能发送中文短信,也能发送英文短信。PDU收发短信有三种编码可用:7-bit、8-bit和UCS2编码。7-bit编码用于发送普通的ASC...

2019-04-15 22:40:00 434

原创 PDF发送短信2

PDF发送短信2 SMS是由Esti 所制定的一个规范(GSM 03.40 和 GSM 03.38)。有两种方式来发送和接收SMS消息:文本模式或者PDU(protocol description unit)模式。文本模式只能发送普通的ASCII字符,而要发送图片、铃声、其它编码的字符(如中文)就必须采用PDU模式。PDU模式中,可以采用三种编码...

2019-04-15 22:39:00 464

原创 PDU 发送短信1

PDU 发送短信1 使用PDU模式,包含UDH头信息分割短信,用户数据头UDH=00表示长短信拆分。贴一个转来的PDU学习笔记,网上收藏的关于PDU其实并不难,至于PDU是什么,不管它,爱是什么是什么,我们只要知道怎么用就可以了。在网上看了很多关于PDU的帖子or文档,但是说的都不是很详细。所以结合其他高人的文档,总结了这篇文档,希望通过这篇...

2019-04-15 22:32:00 439

原创 算法练习2之单链表求和

算法练习2之单链表求和 笔试题目:1、用单向链表表示十进制整数,求两个正整数的和。如下图,1234+34=1268,注意:单向链表的方向,不允许使用其他的数据结构。题目分析:题目中提到了,数据结构只能使用单链表,所以数组不在考虑范围之内。因为将数字转为单链表以后,最高位排在表头,而我们进行整数加法的时候,是从个位开始的,与单链表的顺序相...

2019-01-27 15:00:00 740

原创 git 设置代理和取消代理

git 设置代理和取消代理 本地开启VPN后,GIt也需要设置代理,才能正常略过GFW,访问goole code等网站设置如下(可复制):git config --global https.proxy http://127.0.0.1:1080git config --global https.proxy https://127.0.0...

2018-10-20 11:10:00 288

原创 Warning: skipping non-radio button in group

Warning: skipping non-radio button in group 现象:当我们加入一组单选按钮,并将它们设置为一组互斥按钮,然后又添加其他控件,这时按F5编译,出现如下警告信息: Warning: skipping non-radio button in group.原因:这条警告告诉我们,编译系统跳过了(同这组互斥按钮在一...

2018-10-17 10:55:00 268

原创 "Warning: GetWindowMenuPopup failed! "

"Warning: GetWindowMenuPopup failed! " 对mdi程序中一个弹出菜单警告原因的分析作者: laomai网址: http://blog.csdn.net/laomai(转载时请注明出处)一、引子 最近在编译一个别人的mdi程序代码,在调试程序时,vc6的output窗口实现一个了提示 "Warni...

2018-10-17 10:51:00 327

原创 Nginx+Keepalived实现站点高可用

Nginx+Keepalived实现站点高可用 Nginx+Keepalived实现站点高可用发表于 2015-05-18 | 更新于: 2015-05-18 | 分类于 Linux , Nginx | | 阅读次数: 12301公司内部 OA 系统要做线上高可用,避免单点故障,所以计划使用2台虚拟机通过 Keepalived 工具来实现 ng...

2018-09-11 16:47:00 197

原创 mysql中的CURRENT_TIMESTAMP和ON UPDATE CURRENT_TIMESTAMP

mysql中的CURRENT_TIMESTAMP和ON UPDATE CURRENT_TIMESTAMP 在mysql中, 如果类型为时间的列设置了CURRENT_TIMESTAMP, 那么在insert一条新记录的收, 时间字段自动获取到当前时间, 如果设置了ON UPDATE CURRENT_TIMESTAMP, 则时间字段随着update命令...

2018-08-31 10:40:00 232

原创 mysql now的时间问题

mysql now的时间问题 mysql now()函数调用系统时间不对修正方法进入mysql命令行查看时区设置:show variables like '%zone%';select @@time_zone;两者保持与系统时间一致,如果不一致进行如下修改:vi /etc/my.cnf定位到[mysqld]所在的位置,在它的下面加上d...

2018-08-30 11:07:00 227

原创 在使用gdb调试过程中,经常需要查看变量的值

在使用gdb调试过程中,经常需要查看变量的值 在使用gdb调试过程中,经常需要查看变量的值,最常用的方法:(gdb) print {变量名}一般情况下,打印并不存在问题。但当一个字符串比较长时,打印出来的内容不完整,内容的最后为"..."例如:(gdb) p (char*)0x23b744a98$19 = 0x23b744a98 "obb...

2018-08-10 10:41:00 254

原创 Windows和Linux双系统时间不对的问题。

Windows和Linux双系统时间不对的问题。 解决Windows与Ubuntu双系统时间同步问题2016年07月11日 21:05:30阅读数:331151 问题发现本子上装的是Window 10(win7升级)和Ubuntu GNOME 14.04的双系统, 一直以来都发现双系统切换后系统的时间显示有问题每次都发现进入ubuntu系...

2018-07-23 14:48:00 612

原创 GCC 消除编译器的特定警告

GCC 消除编译器的特定警告 GCC allows the user to selectively enable or disable certain types of diagnostics, and change the kind of the diagnostic. For example, a project’s policy might ...

2018-07-16 11:37:00 383

原创 cmake:设置编译选项的讲究(add_compile_options和CMAKE_CXX_FLAGS的区别) 转自CSDN

cmake:设置编译选项的讲究(add_compile_options和CMAKE_CXX_FLAGS的区别) 转自CSDN https://blog.csdn.net/10km/article/details/51731959cmake:设置编译选项的讲究(add_compile_options和CMAKE_CXX_FLAGS的区别)2016...

2018-06-22 11:25:00 3998

原创 C++11 新特性简介

C++11 新特性简介 1.autoauto是旧关键字,在C++11之前,auto用来声明自动变量,表明变量存储在栈,很少使用。在C++11中被赋予了新的含义和作用,用于类型推断。auto关键字主要有两种用途:一是在变量定义时根据初始化表达式自动推断该变量的类型,二是在声明或定义函数时作为函数返回值的占位符,此时需要与关键字decltype连用...

2018-06-11 12:03:00 115

空空如也

空空如也

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

TA关注的人

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