分类目录归档:编程

Bing Wallpaper 1.0.2.0

Bing Wallpaper 1.0.1.0有一个严重的bug,会使某些情况下更换壁纸的功能彻底失效。请大家更新到1.0.2.0版本。

现在博客标题下面建立了Bing Wallpaper的页面,所以也许没大更新的话,我只会在那个页面里更新版本号和下载链接,不会特地发一篇新文章对更新进行说明了。

下载地址:http://up.kfstorm.com/BingWallpaper_1.0.2.0.zip

Bing Wallpaper 1.0.1.0

大家还好吗?大学毕业后已经工作一个月了,真是想念大学生活啊。闲暇之余,花了一个小时给Bing Wallpaper加上了切换壁纸的渐变特效(必应缤纷桌面就有这个效果),于是就有了这个1.0.1.0版本。当然XP用户是看不到的。

下载地址

顺带说一句,大家多多支持必应系列产品哦,什么必应搜索、必应缤纷桌面、必应词典、必应输入法……

See you!

扫雷机器人

今天心情好,为大家奉上两年前写的一个小玩意儿:扫雷机器人。扫雷机器人的用途当然就是自动扫雷了,需要Windows 7系统的扫雷(Vista的扫雷可能也可以,因为好像和Win7的长的一样,没测试过)。使用方法是打开扫雷与扫雷机器人,在扫雷中设置好你想玩的难度,并使扫雷机器人中的难度设置保持一致。扫雷机器人中的动画设置也必须与扫雷一致。在扫雷机器人中点击“开始新局”就开始自动扫雷了。

 

继续阅读

Bing Wallpaper 1.0.0.0

去年我发布了一个自动更换桌面背景为当日的Bing首页图片的小软件,在之后的使用过程中我一直设置了开机启动,但总觉得托盘上的图标很碍眼。于是这两天写了个新版本。新版本没有托盘图标,双击运行会打开一个窗口,里面包含版本信息、设置、当日图片的链接等。这个窗口可以关闭,Bing Wallpaper仍然会在后台运行。关闭窗口后如果想再次打开这个窗口,或者想退出Bing Wallpaper,请再次双击运行程序的exe文件。开机启动是不会显示这个窗口的(仍然可以之后双击exe以显示窗口),比较清静。

 

继续阅读

豆瓣电台2.0.9发布!

更换了登录方式,新的登录方式会稳定很多,不会受豆瓣FM网页版改版影响。不再需要输入验证码, 不再受账号浏览器中注销而影响,提高加载速度,大幅减少“请稍候”的显示时间。去掉了“累积收听XXX首……”的显示(这个没办法)。

最近才知道豆瓣FM的iPad版是有歌词的,于是歌词源除了千千静听外又多了个豆瓣官方的源,而且豆瓣优先。

 独立安装程序:http://doubanfmcloud-client.stor.sinaapp.com/DoubanFMSetup_2.0.9.0.exe

 

更新说明

1、更换了登录方式,不再需要输入验证码,提高加载速度。

2、增加豆瓣官方的歌词源。

 

详细信息请看:http://www.kfstorm.com/blog/doubanfm/

.NET下使用全局Shell Hook

今天我解决了一个长期困扰我的问题,那就是如何在.NET程序中使用全局Shell Hook。

豆瓣电台需要响应用户按下键盘上的“播放/暂停”键与“下一首”键,无论豆瓣电台的窗口是否处于活动状态。

响应多媒体指令的最佳方法就是处理WM_APPCOMMAND消息,但WM_APPCOMMAND消息只在窗口处于活动状态时才会触发,当窗口处于非活动状态时,WM_APPCOMMAND是不会触发的。从某种角度上来说,WM_APPCOMMAND消息不是全局广播的。另一个办法是使用全局Shell Hook,使用SetWindowsHookEx函数添加一个类型为WH_SHELL的全局钩子,并在Shell钩子的回调函数中处理wParam参数为HSHELL_APPCOMMAND的消息。一切看起来很美好,不是吗?别急,下面才是重点。豆瓣电台使用C#编写,生成的代码当然为托管代码,而包含全局钩子的代码必须编译为本机DLL,所以单纯使用托管代码是无法安装全局钩子的(见此文的“在 .NET 框架中不支持全局挂钩”一节)。难道要逼我用C++写个DLL?注册热键的方法也不太好,因为热键有唯一性,可能会出现热键冲突。

继续阅读

豆瓣电台2.0.8发布!

最近客户端在某些网络下经常出现一直显示“请稍候”的问题,这是因为频道列表在我的服务器上,而我的服务器在新浪的SAE上,当新浪SAE的DNS解析出问题时,我的服务器就无法访问了。新版本改善了这个问题,加入了本地频道列表备份,只要曾今成功播放过,就不会出现这个问题了。

另外,谷歌音乐已经停止服务很久了,所以我把它从客户端移除了,还加入了QQ音乐。

新年新气象,祝大家新年快乐!

 

PS:无法打开.application格式的用户,或者嫌ClickOnce安装麻烦、不够自由的用户,可以下载这个独立安装程序:http://doubanfmcloud-client.stor.sinaapp.com/DoubanFMSetup_2.0.8.0.exe。注意,使用这种独立安装程序将无法自动更新,我也不一定会每个版本都发布独立安装程序。

 

更新说明

1、移除已经失效的谷歌音乐搜索,加入QQ音乐搜索。

2、减少客户端一直显示“请稍候”情形的出现。

 

详细信息请看:http://www.kfstorm.com/blog/doubanfm/

如何打开.application文件?

(经过大家的大量实践证明,这个方法不靠谱,这篇文章就当看着玩儿吧……)

.application后缀的文件是ClickOnce应用程序部署清单,在IE下点击后缀为.application的链接可以直接安装应用程序,其他浏览器下很可能会把这个.application文件下载下来,不过不用担心,下载下来的文件双击后一样能正常安装应用程序。

有极少数用户在点击我的豆瓣电台软件主页上的“立即使用”后下载下来一个文件名为doubanfm.application的文件,但却无法打开它,原因是缺少默认的打开方式(或者打开方式设置错误)。出现这个问题有两种可能,一种是没安装.NET Framework,解决方法就是安装一个.NET Framework。另一种情况很少有人遇到,就是已安装.NET Framework,但仍然无法打开,具体原因未知。

继续阅读