存档

‘日常’ 分类的存档

IIRF 在windows server 2012 IIS8上崩溃的问题

2016年4月3日 没有评论

IIRF 是一个很不错的IIS辅助工具,纯c编写,用来实现 URL重写功能很是方便。IIS这块以前没有apache/nginx之类的方便,好在后来有了自己的URL重写模块。

衣服自己洗前几天把服务器升级到windows server 2012了,至于原因么后续再说,升级后发现其中的一个网站 IIRF配置无法使用,总是崩溃。

崩溃出现在 Redirect 上,对于 Rewrite 没有影响。折腾了很久,今天终于在stackoverflow上找到了解决方法,分享出来方便各位同学。其实早就有人提出这个问题了,但是官方的版本一直没有合并进去,可以参考这里:https://iirf.codeplex.com/workitem/34722

签出最新的代码,然后打开 Rewriter.c 文件,找到 DoRewrites 方法,大约在这个方法的最后几行,有一个函数调用:

pfc->ServerSupportFunction (pfc,
SF_REQ_SEND_RESPONSE_HEADER,
(PVOID) codestring,  // eg, “302”
(DWORD) buf,         // headers to add
0);

 

把实参的类型由DWORD修改为 ULONG_PTR ,然后重新编译即可。

网上也有人提供编译好的版本(还支持IPv6哟),可以直接下载,这里

还有另外一个思路就是使用IIRF的32位的特定版本,由于多数服务器都是64位的,感觉有点强迫症的感觉,就不多介绍了。

分类: 日常 标签: ,

科目一通过

2016年3月8日 没有评论

过完年后,顶不住压力就去报了驾校,价格实在是超出了我的预期。为了有更多的选择余地,我选择了周一到周日的班。

拿到书还没有怎么看过,到后面去录指纹的时候,别人都把在线视频看完了,我才着急起来。花了几个晚上把书给过了一边,又从网上下载了**宝典开始做题。

到考试的前一天晚上,居然发现**宝典里有一个栏目专门是收集容易出错的题目。在考试时居然就派上用场了,好几个题目都来自那里面。没有想到的是交警手势的题目居然做对了。

排队进考场,登陆不成功,指纹识别不了,只好悻悻出来先录指纹等着再次叫号。

等再次进去时就不那么紧张了,指纹也识别出来了,登陆系统后就开始做题。做到大概有20多道题目的时候,看到右边很多×,心里就焦虑,后来再一数,差不多有10几个了,寻思着这个应该过不了了,本来想着直接交卷的,但是又不甘心,因为心里觉得很奇怪有的题目明明是做对了为什么打×呢。

那个系统也是慢的不行,点击下一题看着都没有响应。于是就随便点着鼠标。

直到第二次弹出做题错误提示,我才明白原来我理解错了。右边的×并不表明我做错了,而是说我的答案选择的是错误这项。界面也没有个说明,好在我没有放弃,一路认真做过来的。虽然错了2题,也做到大概40题左右的样子吧,后面就宽心慢慢做了,居然一题都没有错。

最后交卷,出门打印成绩单,签字上交。

科目一就这么有惊无险的通过了。下面就是科目二了,对于我这样从来没有碰过方向盘的人来说,心里总是没有底。

分类: 一句话, 日常 标签: ,

解决spdlog无法编译的问题

2015年11月29日 没有评论

衣服自己本来是想使用log4cxx\log4cpp\log4cplus这样的库来作为日志库的,但是无论那个都无法集成,一堆的问题,于是衣服自己洗一番搜索后,发现spdlog 是一个速度非常快的C++开源库,线程安全。

这个库有一个特点就是全部都是头文件,没有cpp文件,直接引用即可。

使用VS2015添加了include文件引用后,编译报错。

错误 C2589 “(”:“::”右边的非法标记

参考了一下,发现是和系统的命名冲突,解决方法也很简单。

打开 format.h 文件,找到 int compare(BasicStringRef other) const 方法,将 std::size_t size = std::min(size_, other.size_) 修改为 std::size_t size = (std::min)(size_, other.size_),然后重新编译即可。

分类: C++, 日常 标签: ,

未能为数据库 ‘*’中得对象’*’分配空间,因文件组’PRIMARY’已满

2015年10月11日 没有评论

最近几天发现网站数据没有变化,还以为是数据同步发生了错误,今天登录服务器,日志显示了大量的未能为数据库 ‘*’中得对象’*’分配空间,因文件组’PRIMARY’已满错误。

网上搜索发现是数据库文件的体积有限制导致,后来发现数据库原来是在虚拟主机运行的,运营商对数据库做了限制,而我迁移到自己的服务器上后直接附加的数据库,所以这个限制也一起带过来了。

解决方法也比较简单,选择数据库,右键属性, 在“文件”标签页里设置数据库为不受限制,确定即可。

分类: 日常 标签: ,

Ubuntu 下Sox无法播放mp3音频的问题

2015年9月18日 没有评论

在衣服自己洗的香蕉派上,有安装sox去播放音频文件,最近在使用play命令播放mp3文件时,提示错误信息为:

play FAIL formats: no handler for file extension ‘mp3’

原因在于mp3解码是有版权风险的,所以使用apt-get安装sox默认是不支持的,一种解决方法是编译带参数安装sox,我觉得很麻烦,于是找到第二种方法。

sudo apt-get install libsox-fmt-mp3

这样就可以使用 play 播放了。此外,还可以使用 libsox-fmt-all 来支持尽可能多的音频格式。

分类: Banana Pi, 一句话, 日常 标签: , ,

C# 阻止系统待机和关闭显示器(一)

2015年8月24日 没有评论

最近衣服自己洗在开发过程中遇到一个需求就是在不修改电源管理选项的情况下,阻止系统进入休眠状态。和我们的需求比较类似的是视频播放器,在播放视频的时候,即使用户没有操作电脑,也会阻止休眠。退出播放器后,系统又正常了。

实现起来不太复杂,我们可以利用系统的API函数:SetThreadExecutionState

这个函数只有一个参数,可以选择3个值,当然值可以组合使用

只使用Continus参数时,则是恢复系统休眠策略。
不使用Continus参数时,实现阻止系统休眠或显示器关闭一次。
组合使用Continus参数时,实现阻止系统休眠或显示器关闭至线程终止。

C#的示例代码如下:
setThreadExecutionState

看着很简单,对不对。当然,如果不需要阻止显示器的关闭,则可以不传递 Display 参数即可。

批处理清空事件查看器日志

2015年8月12日 没有评论

Windows 的事件查看器对于开发人员来说比较有用,除了开发自己的日志系统外,还可以将一些信息的输出放到这里。

还记得若干年前的拨号上网时代,中国电信不允许路由器拨号,只能通过猫来拨号,这样就导致家庭里多个电脑无法同时上网。后来有网友发现电信拨号客户端有把真实的密码输出到事件查看器里。于是就方便了我们,虽然那时我还没有电脑,但是给亲戚朋友们破解使用还是蛮爽的事情。

当然,这里扯远了。回到我们的话题,日志虽然好,但是随着使用时间的增加,日志里的内容和分类也越来越多,对于我这样的洁癖者来说,及时清理日志就是一个比较麻烦的事情。

应用程序、安全、设置这3个还可以右键选择清空。但是对于应用程序和服务日志里的分类,只能遍历目录,耗时耗力。

今天让我找到了懒人的方法,放上来和大家一起分享。把下面的代码放到一个批处理文件里,要清理日志时,只需要以管理员权限运行即可。

@ECHO OFF
TITLE 清除所有事件查看器里看到的EventLog日志
FOR /F "delims=" %%I IN ('WEVTUTIL EL') DO (WEVTUTIL CL "%%I")
PAUSE

这样简直方便太多。

分类: 一句话, 日常 标签: , ,

小弹簧生病

2015年7月23日 没有评论

在这个月时候,小弹簧发烧了,第一次生病。

到半夜的时候,体温已经到达38.5度了,为了避免出问题,打算送医院。可是大半夜2、3点多的,连车都没有,小区楼下的药店晚上都不营业了,只好打120叫了一辆救护车。

夲来是打算送到积水潭的,但是打电话一问,人家没有儿科。好在人家有建议送到华医,于是又赶紧往目的地奔过去。呼叫救护车也算是一种奇特的经历吧。到了之后,一结算230。

医院的保安还是蛮不错的,前后几次告诉我们科室和路线。赞一个。

我们心急火燎的样子,怕发烧把孩子大脑烧出问题,医生到是蛮淡定的,一副见怪不怪的样子,不知道是不是他们见多了的原因。简单地询问了下,给我们开了几种药。一个狗皮膏药物理降温的,还有另外2个药。我们感觉稍微贵了点,就没有买。

处理完后,天都亮了。出门刚好碰到一个出租车,送到家才23块钱。简单买了点早点,一家人稍微休息了下,还说准备补瞌睡的,结果后来体温又上去了,到39度多了,又下楼去买药。

药买上来后,还是决定再去医院。于是在小区里又找了个黑车,给送到积水潭。到那里一打听,周末没有急诊。只好又出门找黑车重新去华医。路上心里还是蛮后悔一开始没有买医生开的药导致现在要返工。去了后重新挂号,还是开原来的药。买到手一看就是我们在小区药店里看到的那种。

吃完药出医院后等不久就来了个出租车,送回家绕了下远路,35块。

到下午的时候,小弹簧的温度就降下来了。后来就打电话把我爸从老家给叫过来了,一来是照顾下小弹簧,二来是想让他们出去玩一玩。结果来了后也没有出去玩,倒是把家里给收拾的干干净净的,那几天还一直在睡沙发。直到走之前,都没有出门吃次大餐。

分类: 日常 标签: ,

房子交付

2015年6月22日 没有评论

六月份,房子交付。从最开始决定买到现在都过去几年了。

为了最快地办好手续,特意选择了一个早上的火车,不巧的是,那天正在下雨,于是买了一把七彩虹的雨伞,心情顿时好了很多。到达地点的时候,人家都还没有上班。

预交物业管理费、填表、办理门禁卡、拿钥匙,抽奖还抽了一个拖把,到还是蛮适合的。

物业找了一个师傅陪同上楼验收。总体上来说还算可以,不过很多细节地方不是太满意。

首先发现厨房墙上的电源插排居然没有安装,这个问题比较严重,后来找电工,发现是插排的基座埋的太深了,导致螺丝不够长而安装不了,又只好在墙里填木板,把螺丝拧到木板上。但是在切割的时候,火星给飞溅到墙面上,导致很多黑点。只好又找钢丝球擦,后来发现效果不是很明显,钢丝球又把墙面给磨花了。很悲催有没有。

厨房的柜子门面上有一个地方花了,只好找人给填平,但还是看的出来。客厅地板的正中央也有一块有一个坑。可愁坏了。

阳台的门把手有生锈的地方,我怕时间长了会脱落,坚持让他们给更换了门把手。

卫生间的灯不亮了,地漏里都是建筑垃圾,不处理好将来就会是个坑。

卧室玻璃上有油漆。

总之,不那么顺利。更恼火的是保洁,磨磨蹭蹭,拖拖拉拉,最后实在是忍不住,凶了人家一顿。不过有负责陪同看家居装修的阿姨,一直很耐心地等待,带领我去看各个样板间。

有一个样板间里的装修还是蛮对我的胃口的,最后还是下了订单。又是要还好久的信用卡,有点后悔不该那么早就买的。

分类: 日常 标签: ,

Gokit 上手试用

2015年5月12日 没有评论

在几个月前,在机智云官网上申请了他们的Gokit硬件,就在快要放弃掉的时候,他们人工审核联系了我,话说妹子的音色还不错,呵呵,话题扯远了。

经过电话的简单沟通,妹子说等消息吧。然后几天前,突然就收到了他们发的邮件,提供了邀请码,迅速兑换。然后昨天就拿到了真实的机器。

不知道大家有没有注意到,上面的图中,外面的透明盒子有一面是破了个洞。我开始还以为是快递在运输的过程中给损坏了,后来一琢磨,如果这里没有洞口的话,那么 USB 线是无法接进去的。后续如果对透明盒子那一面做好加工处理就更好了,目前的方式略暴力。

点击查看大图

开箱图

点击查看大图
Gokit 2代把板子分成2块,底部为功能块,有2种版本,我拿的是ST的版本,听说是要用C语言来开发,心里有点怵的慌。上面为扩展块,扩展块上集成有wifi组件,电机,此外有温度、湿度传感器,红外传感器,还有一个小灯,还兼容Arduino,很是不错喔。按照随机附送的说明书步骤说明,开机打开airlink的时候,诶哟喂,电机转的可欢了,我在办公室顿时吓呆了。不过后来我再开机的时候,电机到是没有运转。还不清楚具体的逻辑细节。

底部的螺丝固定位置设计的很好,可以防止安装位置反向,赞一个。

在出货时,里面就已经刷了微信宠物屋的固件了,按照说明书已经成功绑定了,可以在手机上远程控制,微信里也可以看到设备当前的温湿度。

后续有什么好玩的东西我再放上来吧,我需要把他和 yeelink 放一起评测下。等我的消息吧。

分类: 日常 标签: ,