- 博客(170)
- 资源 (16)
- 收藏
- 关注
转载 Win32串口编程(函数基本介绍,过程介绍)
在工业控制中,工控机(一般都基于Windows平台)经常需要与智能仪表通过串口进行通信。串口通信方便易行,应用广泛。一般情况下,工控机和各智能仪表通过RS485总线进行通信。RS485的通信方式是半双工的,只能由作为主节点的工控PC机依次轮询网络上的各智能控制单元子节点。每次通信都是由PC机通过串口向智能控制单元发布命令,智能控制单元在接收到正确的命令后作出应答。 在Win32下,可以使
2011-11-28 12:25:30 1008
原创 windows下php+apache安装配置
本人安装过N次了,但是老是记不住这些东西,所以记录一下安装php以及apache过程不进行描述,基本下一步下一步就能安装完成.这里介绍下最基本的配置.下面是httpd.conf的配置:1.设置php module任意位置加入:PHPIniDir "D:/Program Files/PHP"LoadModule php5_module "D:/Program File
2011-11-28 12:23:02 568
原创 php线程安全 非线程安装区别
1.Non Thread Safe版本php适用在使用CGI以及fastCGI的web服务器上,如nginx,lighttpd以及IIS的CGI模式下2.Thread Safe版本php适用在使用ISAPI或者module的web服务器上,如IIS的ISAPI模式或者apache module模式这只是一般的适用区别,并不绝对,也就是说两种版本在web服务器上都能使用,并不一定会出
2011-11-28 11:05:43 2257
转载 nfs挂载相关以及umout问题
在Fast Cache工程中, 当创建 nfs mount 目录 时, 如果 nfs 网络断开情况时, 函数 stat/opendir/df -k 等命令被挂住. 问题产生了, 如何在程序中检查 nfs mount 目录的可访问性而程序又不被挂住?解决思路:1, mount 采用 soft 方式, 当 一个 major timeout 到达后, stat 能返回给调用者. 但如果是 har
2011-11-25 14:53:02 3701
原创 vs2010 vs2008 vs2005 链接libcurl静态库
1.首先下载libcurl库,用vs打开工程文件2.编译时选择lib Bebug和lib relase,得到它的静态库3.在你的工程中包含libcurl库,在预编译指令中添加:BUILDING_LIBCURL4.在依赖库中加入:libcurl.lib(debug就用libcurld.lib) ws2_32.lib winmm.lib wldap32.lib上面4步搞定,就可以链
2011-11-16 08:29:51 11902
原创 不使用局部变量编写strlen
int strlen(char *pstr){ if (*pstr != '\0') return (strlen(++pstr) + 1); else return 0;}使用递归方式实现
2011-09-08 14:49:18 419
原创 c++传递数组大小的方式
1.参数夹带法void fun(int a[], int size){printf("size: %d\n", size);}2.数组引用传递法(缺点,实参数组大小必须和型参匹配)void fun1(int (&a)[100]){print
2011-09-04 16:11:46 892
原创 INNO SETUP 5.4 中文语言包
; *** Inno Setup version 5.1.11+ English messages ***;; To download user-contributed translations of this file, go to:; http://www.jrs
2011-08-08 17:18:53 4527 5
转载 常用的正则表达式
常用的正则表达式1、非负整数:^\d+$2、正整数:^[0-9]*[1-9][0-9]*$3、非正整数:^((-\d+)|(0+))$4、负整数:^-[0-9]*[1-9][0-9]*$5、整数:^-?\d+$6、非负浮点数:^\d
2011-08-08 16:14:25 913
原创 巴厘岛旅游
去巴厘岛时也了解到了不少事,当时回来的时候,就想写个游记啥的,但头痛的是文笔不好,而且拖了段时间后就忘记了,今天想起来了就赶紧给它弄点上去。 去年11份——就是2010年11月,去了趟巴厘岛旅游。早就听闻那里的景色怎么怎么好了,电视里貌似也常有巴厘岛的一些个介绍之类
2011-08-08 16:13:52 3418
原创 windows下使用lighttpd+php(fastcgi)+mysql
一.windows下编译配置运行lighttpd1、下载并安装cygwin。 2、下载lighttpd源代码并解压3、在cygwin环境下进入lighttpd的解压目录后,执行: 1> ./configure –prefix=C:/lighthttd2> make 3> make
2011-07-20 12:39:49 3023 4
原创 防止因为自动缓存,导致flash调用http请求返回304的问题
为flash,如:www.xxx.com/1.swf 加上末尾的随机数 www.xxx.com/1.swf?rand()
2011-06-15 13:45:00 1383
原创 javascript与flash的调用
1.jquery获取flash对象:var flashObj = $("#id")[0]; 2.javascript调用flash所需代码:flash部分:import flash.external.*; function MyFlashFunction(str: String): String{ return "FlashFunction Return";}
2011-06-15 13:42:00 677
原创 64位boost编译
<br />例:<br />bjam --toolset=msvc-10.0 address-model=64 ... ...
2011-05-26 16:43:00 769
原创 libcurl提交表单上传文件
<br />不多说了,curl的http上传文件代码示例,有需要的可以参考。<br /> <br />int http_post_file(const char *url, const char *user, const char *pwd, const char *filename)<br />{<br /> assert(url != NULL);<br /> assert(user != NULL);<br /> assert(pwd != NULL);<br />
2011-04-06 12:50:00 5739 4
原创 wlan scan record
http://msdn.microsoft.com/en-us/library/ms706556%28v=VS.85%29.aspx
2011-03-29 22:38:00 1001
原创 windows下QT对话框禁止放大缩小以及拖动
<br />我没怎么碰过QT,新建的工程后,默认的QT主窗口会有最小化最大化以及关闭按钮,还有就是拖动窗口可放大缩小。发现QT不像MFC以及Delphi那样可以直接禁止拖动并且去掉工具栏最大化按钮。因此花了几分钟把问题解决了,以下是解决方式:<br /> <br />直接在main中:<br /> Qt::WindowFlags flags = 0;<br /> flags |= Qt::WindowMinimizeButtonHint;<br /> flags |= Qt::Wi
2011-03-29 16:53:00 12104 2
原创 进程提升权限
简单的提升进程权限代码,里面用到的权限参数根据不同需要设置: HANDLE hToken; TOKEN_PRIVILEGES tkp; //提升权限 if(!::LookupPrivilegeValue(NULL, SE_DEBUG_NAME,&tkp.Privileges[0].Luid))
2011-03-29 14:37:00 580
转载 C++中extern “C”含义深层探索
<br />1.引言<br /> C++语言的创建初衷是“a better C”,但是这并不意味着C++中类似C语言的全局变量和函数所采用的编译和连接方式与C语言完全相同。作为一种欲与C兼容的语言,C++保留了一部分过程式语言的特点(被世人称为“不彻底地面向对象”),因而它可以定义不属于任何类的全局变量和函数。但是,C++毕竟是一种面向对象的程序设计语言,为了支持函数的重载,C++对全局函数的处理方式与C有明显的不同。<br /> 2.从标准头文件说起<br /> 某企业曾经给出如下的一道面试题:<b
2011-03-26 12:48:00 622
转载 Qt显示Flash的两种方法 QWebview和QAxWidget
<br /> <br />【QWebview】的必要设置<br />WebView->settings()->setAttribute(QWebSettings::JavascriptEnabled, true);<br />WebView->settings()->setAttribute(QWebSettings::PluginsEnabled, true);//重要<br /><br />用的是QT4.6 免费版难道不支持播放Flash了? TNND 没调试出来 显示Flash的位置只
2011-03-17 16:19:00 14541 1
转载 关于QT与Flash互操作
这几天在学习Action Script,在网上乱逛发现QT与flash互操作的可能性,试验了一把,居然成功了。首先是QT调用Flash中的函数:QT中有一个控件叫QAxWidget,加载一个.swf文件代码如下:QAxWidget flash(this,NULL); flash.setControl(QString::fromUtf8("{d27cdb6e-ae6d-11cf-96b8-444553540000}")); flash.dynamicCall("LoadMovie(long
2011-03-17 14:06:00 2443
原创 printf参数介绍
<br />int printf(const char *format,[argument]);<br /> format 参数输出的格式,定义格式为:%[flags][width][.perc][F|N|h|l]type 规定数据输出方式,具体如下: <br /> 1.type 含义如下: <br /> d 有符号10进制整数 <br /> i 有符号10进制整数 <br /> o 无符号8进制整数 <br /> u 无符号10进制整数 <br /> x 无符号的16进制数字,并以小写a
2011-03-16 21:46:00 726
转载 赵光瑞:小孩想做贪官可怕在哪里
<br /> <br /> 思想道德建设谁来管?在全国政协的小组讨论会上,全国政协常务委员、卫生部原部长张文康表示,目前,学术造假、公务员腐败、奢靡之风流行均现思想道德建设的短板。他举例称,小孩将“做贪官”定为人生目标的现象需要引起重视,这是现实的也是可怕的。(3月14日《京华时报》)<br /> 张文康先生在非典时期是位著名人物,这几年有关他的信息少了。这回他所发表的“小孩想做贪官”言论,可能又会引起社会的注意。不过,笔者不赞成他“小孩想做贪官”是思想道德建设短板表现看法。<br /> 目前
2011-03-15 08:58:00 1724
原创 如何在MFC DLL工程添加DllMain入口
<br />今天碰巧看到有人问了这个问题.<br /> <br />他使用的是MFC DLL,但是却想添加DllMain作为入口函数,但是很明显直接编译肯定编不过.所以我在这里介绍一个通过编译的简单方法:<br /> <br />右键 -> 项目属性 -> 配置属性 -> c++ -> 预处理器<br />删除_USRDLL即可<br /> <br />希望可以帮助一些朋友解决困难
2011-03-13 22:15:00 4871
转载 VC中用代码判断windows的版本
<br /> <br />MSDN上有一个表<br />Operating systemVersion numberdwMajorVersiondwMinorVersionOtherWindows 76.161OSVERSIONINFOEX.wProductType == VER_NT_WORKSTATIONWindows Server 2008 R26.161OSVERSIONINFOEX.wProductType != VER_NT_WORKSTATIONWindows Server 20086.060
2011-03-02 10:11:00 3890 1
转载 (纯属转贴,没有测试过)如何优化Mysql千万级快速分页,limit优化快速分页
<br />MySQL数据库优化处理实现千万级快速分页分析,来看下吧。<br />数据表 collect ( id, title ,info ,vtype) 就这4个字段,其中 title 用定长,info 用text, id 是逐渐,vtype是tinyint,vtype是索引。这是一个基本的新闻系统的简单模型。现在往里面填充数据,填充10万篇新闻。<br />最后collect 为 10万条记录,数据库表占用硬盘1.6G。OK ,看下面这条sql语句:<br />select id,title fr
2011-02-21 11:23:00 856
原创 从缓冲上看阻塞与非阻塞socket在发送接收上的区别
最近在网络上看到一些帖子以及回复,同时又搜索了一些网络上关于阻塞非阻塞的区别,发现很多人在描述两者的发送接收时操作返回以及缓冲区处理的区别时有不同程度的误解。所以我想写一篇文章来纠正错误,并作为记录方便查阅,如有转载,注明作者(jwybobo2007)以及出处即可。 首先soc
2011-01-26 11:03:00 10535 29
原创 socket选项自带的TCP异常断开检测
TCP异常断开是指在突然断电,直接拔网线等等情况下,如果通信双方没有进行数据发送通信等处理的时候,无法获知连接已经断开的情况. 在通常的情况下,为了使得socket通信不受操作系统的限制,需要自己在应用层实现心跳包机制,来检查异常断开的情况,一般的方式就是服务器在一段时间没有收到客户端数据包时,定时发包,然后客户端回应,如果已经出现异常断开则服务器接收会返回错误,而客户端在指定时间内没有收到数据包,则主动向服务器发包,得到错误就说明断开.诸如此类的方式就是自己实现的心跳包机制. 但操作系统本身也自带
2011-01-25 12:51:00 7595
原创 TCP滑动窗口和SO_RCVBUF之间的实际关系
上次转载了一篇文章http://blog.csdn.net/jwybobo2007/archive/2010/12/30/6107419.aspx,上面提到了TCP窗口大小与SO_RCVBUF选项之间的关系.但其实这篇文章描述的是有问题的. 在以Unix为核心的一些操作系统中(不一定都是),SO_RCVBUF选项确实决定了TCP窗口的大小.你设置为多少窗口就为多少.但在Windows上确并非如此,通过一些抓包工具分析后,你会发现这两者并不是一一对应关系,MSDN的说明上确实也告知这一事实. 如使
2011-01-21 10:14:00 5929 1
转载 TCP滑动窗口和socket缓冲区之间的关系(记录)
一、TCP的滑动窗口大小实际上就是socket的接收缓冲区大小的字节数二、对于server端的socket一定要在listen之间设置缓冲区大小,因为,accept时新产生的socket会继承监听socket的缓冲区大小。对于client端的socket一定要在connet之前设置缓冲区大小,因为connet时需要进行三次握手过程,会通知对方自己的窗口大小。在connet之后再设置缓冲区,已经没有什么意义。三、由于缓冲区大小在TCP头部只有16位来表示,所以它的最大值是65536,但是对于一些情况来说需要使
2010-12-30 16:05:00 5344 1
原创 How To Manage User Privileges Programmatically in Windows NT
<br />http://support.microsoft.com/default.aspx?scid=kb;EN-US;132958
2010-12-06 16:53:00 674
原创 boost ptime 与 time_t等的转换
<br /> <br />#include <boost/date_time/posix_time/posix_time.hpp><br />#include <boost/date_time/gregorian/gregorian.hpp><br />#include <iostream><br />#include <stdint.h><br />int main()<br />{<br /> using namespace boost::posix_time;<br /> using namespac
2010-10-16 19:57:00 9698
转载 OpenSSL: 椭圆曲线签名与校验 (ECDSA)
<br />/*<br />目录:<br />--------------------<br />1. 简介<br />2. 生成 ECDSA 密钥对<br />3. 签名<br />4. 校验<br />*/<br /><br />/*<br />1. 简介<br />--------------------<br /> 对 PE 文件做 ECDSA 签名. 签名写入 PE 头部 DOS Stub代码后边. 使用的椭圆<br />曲线是 FIPS 186-2 中的 P-192. 签名长度不超过 56 字节
2010-10-15 09:47:00 7832 4
转载 TCP TIME_WAIT详解
TIME_WAIT状态 TCP要保证在所有可能的情况下使得所有的数据都能够正确被投递。当关闭一个 socket 连接时,主动关闭一端的 socket 将进入TIME_WAIT状态,而被动关闭一方则转入CLOSED状态。见图解。当一个socket关闭的时候,是通过两端互发信息的四次握手过程完成的,当一端调用close()时,就说明本端没有数据再要发送了。这好似看来在握手完成以后,socket就都应该处于关闭CLOSED状态了。但这有两个问题, 第一:我们没有任何机制保证最后的一个ACK能够正常送达 第二:网络
2010-10-12 19:16:00 1734
转载 TCP实现P2P通信、TCP穿越NAT的方法、TCP打洞
下载源代码这个标题用了两个顿号三个名称,其实说得是同一个东西,只是网上有不同的说法罢了,另外好像还有人叫TCP打孔(我的朋友小妞听说后问“要打孔啊,要不要我帮你去借个电钻过来啊?”“~!·¥%……·!”)。闲话少说,我们先看一下技术背景:Internet的迅速发展以及IPv4 地址数量的限制使得网络地址翻译(NAT,Network Address Trans2lation)设备得到
2010-09-28 23:35:00 3685 2
转载 读写锁 共享读 独占写
class ReadWriteLock { public: int m_currentLevel; int m_readCount; HANDLE m_unlockEvent; HANDLE m_accessMutex; CRITICAL_SECTION m_csStateChange; public: ReadWriteLock { m_currentLevel = LOCK_LEVEL_NONE; m_readCount = 0; m_un
2010-09-26 15:02:00 868
linux开发常用帮助文档
2011-12-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人