自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 资源 (9)
  • 收藏
  • 关注

原创 Nginx服务模块开发

纵观网上各种关于nginx的模块开发的资料都是基于HTTP的模块开发,这里就整理一篇是基于TCP协议的服务模块开发,并且给出一套自定义服务模块的源码,该模块主要实现的功能是监听某一端口,然后把接收到的客户端数据转发的上流服务器,再把上流服务器的返回数据回传给客户端。模块源码下载地址:https://code.csdn.net/gamer727/nginx_mypo_module Nginx的服务模

2016-01-02 22:19:11 971

原创 libcef调试render进程

这篇文章的前提你的libcef能够正常启动,能打开一个基本的网页,但是不清楚一些接口怎样在render进程调用和调试的人来说的。第一步,实现“CefRenderProcessHandler”接口,关键代码:class ClientApp : public CefApp, public CefRenderProcessHandler{public: ClientApp(); // CefA...

2018-03-31 09:51:17 1849

原创 ffmpeg解析HD264后图像上下翻转和颜色不对解决方法

接收到hd264的数据用ffmpeg进行解析后发现,画面是上下翻转的,网上有的人说可以在显示的时候在把图像上下翻转过来,但这样的效率明显很低,后来发现还有更高效的方法,只需要重排几个数组的地址就可以了: int result = avcodec_decode_video2(codec_, pFrame_, &got_frame, &pkt); //关键是这一步,上下翻转图像

2016-01-03 22:03:54 3262

原创 mima接收数据时粘包和大小端问题解决方案具体实现

使用java的mina框架接收数据总是会把数据拼接在一起然后再发送给上层的,所以在自定义网络传输协议的时候一定就在数据开始的固定位置处存放主体内容的数据长度,要不就是固定每个数据包的固定长度,其实两种方案的实现方式,只不过在拆包的时候一个变长,另一个是固定长度。下面就来开始代码的具体实现: 第一步,定义一个全局的变量接收保存接收的数据:public class ClientHandler exte

2015-12-31 09:58:30 1204

原创 java解析c语言之Javolution的坑

java解析c语言的结构体有好多种方案,经过对比之后还是选择了Javolution,主要是它的用法和平常c结构体的用法看起来差不多,而且一开始测试用的时候效果还可以,但是后来随着使用越多,那些坑就慢慢暴露出来了。 坑一: 对齐方式会变。 public static class UserInfo_t extends Struct { public final Unsigned

2015-12-29 15:50:10 4126 1

原创 去掉iframe的边框



2015-08-21 11:15:23 968

原创 如何printf64位整型!

对于GCC:64位整数类型是long long输出方法:printf("%lld ",x);同时支持cin coutllu   : 输出longlong的无符号数。llx   : 输出longlong的十六进制VC++等(PKU使用):64位整数类型是__int64输出方法: printf("%I64d ",x);不支持cin cout

2015-08-21 11:12:44 1223

原创 linux遍历目录C语言

#include  int i;  char *lpcCFile; DIR *lptDir;struct dirent *lptCurFile;lptDir=opendir("pathdir');while(lptCurFile=readdir(lptDir) != NULL){/* 判断当前指针是否时候为目录 *

2015-08-21 11:11:22 397

原创 sscanf()中表达式的用法

sscanf(data,"username=%[^&]&password=%[^&]",username,password);其中红色字体部分“[^&]”代替了“%s”,表示格式化的字符串到“&”结束,如果想要是其他分隔符只需要替换“&”符号。具体例子:代码:        char *src="--BC-http=456";        char mod

2015-08-21 11:07:55 470

原创 解决CGI输出中文乱码

我们在进行cgi程序开发时经常需要向界面输入一些html脚本,用作界面显示。如果这些脚本中有中文,再输出到界面上经常会有乱码,无论是在cgi程序中使用printf输出,或者在asp的函数中输出。其中最关键的就是要在保存这些cgi的或函数的的c程序时,要将其保存为gb2312或者gbk,再进行编译。然后在浏览器访问cgi或asp程序,才能得到正确的中文输出。

2015-08-21 11:02:44 1967

原创 linux改变文件文件的大小

以下是代码片段片段是实现文件大小减少16个字节,主要函数是ftruncate。num = lseek(fd, 0, SEEK_END);ftruncate(fd, num-16);

2015-08-21 10:58:19 1534

原创 dblink的使用

有时候的业务需要参照其他数据库的数据。我们可以在程序中分别从两个数据库中取值然后处理。但这样开发效率和性能都不是很好。如果两个数据库都是PostgreSQL的话,用扩展的DBLINK功能非常简单。比如一个数据db1,db2。首先需要把db1加入dblink扩展。示例1:取得db2的用户表的用户名[sql]view plaincopyprint?SELECT 

2015-08-19 14:40:04 915

原创 PostgreSQL使用技巧

##不重启数据库,更新配置/usr/local/pgsql/bin/pg_ctl reload -D /home/postgres/data远程备份:/usr/local/pgsql/bin/pg_dump dbname -f db_backup -h 192.168.1.2 -U username远程还原: /usr/local/pgsql/bin/psql -h 1

2015-08-19 14:34:57 911

原创 Linux网络编程下send到一个disconnected socket上

在Linux下写socket的程序的时候,如果尝试send到一个disconnected socket上,就会让底层抛出一个SIGPIPE信号。这个信号的缺省处理方法是退出进程,大多数时候这都不是我们期望的。因此我们需要重载这个信号的处理方法。调用以下代码,即可安全的屏蔽SIGPIPE:     struct sigaction sa;    sa.sa_han

2015-08-19 14:30:58 623

原创 make的时候能够检查头文件是否有更新过

在一般的Makefile文件里,如果我们的只对头文件进行修改,make时是不会检查的更新的,所有有时候为什么改了些参数后make完没反应,需要clean之后重新make才生效。如果要make是检查头文件可以:这样写:%.o : %.c XXX.h    gcc -IM -c $@ $这里有两个关键点:1、头文件放到依赖位置;2、编译时添加“-IM”选项,一定要大写。

2015-08-19 14:24:17 1629

原创 应用程序中嵌入的网页运行时出现“脚本错误”解决方法

CComPtr pWB2; HRESULT hr; hr = m_wndIE.QueryControl(&pWB2); if (pWB2) {  CComVariant v;  CComBSTR url(pszUrl);  pWB2 ->put_Silent(true);    //加上这句就解决了!!!!!    hr = pWB2

2015-08-19 14:20:26 1297

原创 Linux运行脚本作为守护进程的各种方法

1:nohup ping www.ibm.com &2:setsid ping www.ibm.com3:(ping www.ibm.com &)

2015-08-19 14:15:16 1812

原创 linux查看目录占用空间

# du -sh DirPath比如: du -sh /home/snail linux查看目录大小及硬盘大小的命令:# du -ks ---in all# du -k ---every lasts表示汇总目录下的内容,k表示以1024字节为单位,m表示以一兆字节为单位

2015-08-19 14:13:03 512

原创 监视某进程,保持进程处于启动状态(非正常退出后能自动启动)

####### nohup ./protect_process &  ######这个是启动本脚本时作为守护进程,即使退出当前终端,进程也不会被关掉###cmd是被监视的进程的启动命令###cmd=XXX##检查进程是否存在的函数CheckProcess(){    if [ "$1" = "" ];    then   

2015-08-19 14:10:50 2700

原创 基于IOS的sqlite数据库封装

DBController是基于IOS下的Object-C实现的,封装了对sqlite数据库的常用的查询、插入、更新和删除操作, 不需要再次修改和实现数据库的底层接口操作,直接申明模型类,然后调用DBController来进行数据的操作。当前项目的限制就是模型类的成员数据类型只支持整形、浮点型、NSString类型,需要支持其他类型的话, 需要修改DBController的源码了。

2015-08-19 10:58:41 760

原创 php过滤斜杠等特殊字符

$ArrFilters=array("'","","\x{5c}");function IsExistStrings($SrcString, $ArrFilters){        foreach ($ArrFilters as $key=>$value){                if (@preg_match("/$value/",$SrcString)){

2015-08-19 10:56:45 827

原创 php显示各种时间段

先把时间设置成北京时间date_default_timezone_set('PRC');当前时间$curtime=date("Y-m-d H:i:s", time());由于周一的划分跟我们平时所理解不太一样,所以要分开判断。if(date('D')  == 'Mon'){上一周:        $last_week_start=date("Y-m-d H:i:

2015-08-19 10:35:41 453

原创 GoAhead网页提交内容

提交的方式有两种get和postget:    这种传送方式所传输的内容有长度限制,一般在一百多字节以内。但是它所传送的 特殊字符 不需要的转换。post:    这种传送方式的内容可以比较大,可以大于2048字节,传送文件也是用这种方式,传送文件需要在form里添加enctype="multipart/form-data"。    post不加文件传输方式的话,传送的内容和get的一样,不过

2015-08-18 22:24:57 1036

原创 Linux下UDP端口扫描

由于UDP协议是非面向连接的,对UDP端口的探测也就不可能像TCP端口的探测那样依赖于连接建立过程,这也使得UDP端口扫描的可靠性不高。所以虽然UDP协议较之TCP协议显得简单,但是对UDP端口的扫描却是相当困难的。下面具体介绍一下UDP扫描方案:        方案1:利用ICMP端口不可达报文进行扫描        本方案的原理是当一个UDP端口接收到一个UDP数据报时,如果它

2015-08-17 17:42:28 1656

原创 Windows编程的兼容性问题

问题出现在软件发布之后,在个别用户的电脑上的win7系统运行我们的软件总是无法运行,运行就直接给出“XXX module 已停止工作”的提示框,但是如果运行选中运行程序右键,在兼容性那里选择“XP (sp3)”后又能正常运行。但是更奇怪的是在我们公司里的win7系统同样运行,无需选择兼容性,直接就能正常运行,而且很多用户上的电脑也是win7系统,同样也是能正常运行。自己的系统上怎么样也重现

2015-08-17 09:50:26 1039

RSA密钥对生成工具源码

RSA密钥对生成工具源码.RSA公钥加密算法是1977年由Ron Rivest、Adi Shamirh和LenAdleman在(美国麻省理工学院)开发的。RSA取名来自开发他们三者的名字。RSA是目前最有影响力的公钥加密算法,它能够抵抗到目前为止已知的所有密码攻击,已被ISO推荐为公钥数据加密标准。

2012-12-24

非对称的密钥的导出和导入

这两个工程主要用CSP主要分两个工程 1.CSPTEST 写的比较乱 主要是给当时一个朋友做参考调用的 完成非对称密钥的生成 导入 导出 加密 解密 对称的加密解密 签名 验证 2.CSTTEST2 写的比前个好些 但是平时上班 下班自己也要写论文 所以花的时间也不太多 很多地方都偷懒了 比如文件大小我没有用NEW 而且指定了1024 有需要的朋友可以自己修改。这个工程主要是非对称的密钥的导出和导入 还有就是会话密钥的操作。

2012-12-24

tomcrypt加密函数库

lib:包含lib文件(及相应源文件供参考)使用前将goozo_crypt.obj和tomcrypt.lib两个文件复制到C++builder的lib目录下 include:头文件,使用前复制到C++builder的include目录下 docs(tom):tom提供了加密函数库的pdf说明(想进一步了解功能可以看头文件和源文件中的注释) Rinick's ECC:椭圆曲线非对称加密的一个例子和密钥生成器 几个基本功能封装成了独立的函数,使用变得较为简单

2012-12-24

SM3密码杂凑算法

用途   国家密码管理局编制的商用算法,用于密码应用中的数字签名和验证、消息认证码的生成与验证以及随机数的生成,可满足多种密码应用的安全需求。 算法描述   对长度为l(l< 264) 比特的消息m,SM3杂凑算法经过填充和迭代压缩,生成杂凑值,杂凑值长度为256比特

2012-12-24

new--miracl

The Zipped archive MIRACL.ZIP contains all the source code for the latest version of MIRACL: a Multiprecision Integer and Rational Arithmetic C/C++ library. The full Manual is available in both MS Word (MANUAL.DOC) and Postscript format (MANUAL.ZIP).

2012-12-24

IBE基于身份的加密系统的解密程序

IBE基于身份的加密系统的解密程序,基于身份的加密IBE(Identity Based Encryption),在中国叫做IBC(Identity-Based Cryptograph)即基于身份的密码技术,已经通过中国国家密码管理局的认证并授权为SM9算法(商密9号算法)。

2012-12-24

IBE基于身份的加密系统的加密程序

IBE基于身份的加密系统的加密程序. 基于身份的加密IBE(Identity Based Encryption),在中国叫做IBC(Identity-Based Cryptograph)即基于身份的密码技术,已经通过中国国家密码管理局的认证并授权为SM9算法(商密9号算法)。

2012-12-24

基于VC++的测评系统(内附详细设计文档)

测评系统 要求 首先明确一下系统的一些基本要求和设置: 1. 可包含多套测试题; 2. 每套测试题包含任意数量题目; 3. 每个题目可包含单选、多选选项; 4. 每道题可定义不同的分值; 5. 多选题得分模式可设定[全对得分/累计得分]两种模式,全对得分模式有一个错误该题不得分,累计得分模式可根据选对的数量得分,但如有任意错误选择本题不得分; 6. 每套试题可定义限制时间,或不限时。

2012-05-23

一种改进的八数码问题内附文档

八数码问题算法的改进实现,内附详细的设计文档。

2012-05-08

空空如也

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

TA关注的人

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