每天写代码,偶尔就会有让你抓狂的时候:代码改了千百遍,蓦然回首,Bug就在灯火阑珊处……这里就列举一些容易犯错的几个小地方,以后遇到了其他的,再慢慢添加。 1. 获取程序当前运行路径 情景复现:WPF客户端程序,开机自启动后无法进入主界面,卡在初始屏(Splash Screen) 处理问题:通... Read More
posted @ 2014-07-17 17:09 Hans Huang Views(2063) Comments(16) Diggs(5) Edit
一、 让文本变成声音 .Net里面自带了一个语音类库:System.Speech,调用系统的语音功能,就能实现string到语音的转换,很简单(记得先把电脑音量调大一下)://AddSystem.SpeechreferencefirstusingSystem.Speech.Synthesis;varreader=newSpeechSynthesizer();reader.SpeakAsync("I'm a programer. Hello, world! "); Hello, world! 你听到了……这里我用了SpeakAsync方法,也就是异步执行,不会阻塞主线 Read More
posted @ 2013-11-13 22:27 Hans Huang Views(6613) Comments(40) Diggs(38) Edit
Visual Studio 号称有史以来最强大的IDE,确实如此。创建单元测试也是一键完成:在方法的代码块中右键“Create Unit Test…”,勾选测试项,填项目名,完成。VS就会自动帮你创建好了一个工程,直接写测试方法就好。这创建出来的工程也就是一个普通的类库(class library),所以今天我就打算手动创建一个单元测试工程,但是最后却发现总是无法显示代码覆盖率。 发现问题,解决问题:反复对比手动创建和自动创建的工程,所有的属性都没区别。但是有一点引起了我的注意,右键工程名-Add,区别出来了:自动创建的Unit Test类库好像被打上了标签,能够被VS识别为单元测试工程。.. Read More
posted @ 2013-10-24 15:12 Hans Huang Views(1457) Comments(2) Diggs(1) Edit
下周要在Ubuntu中调试程序,所以今天抽空先配置好Myeclipse环境。 准备: JDK 下载地址: http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html MyEclipse 下载地址: http://www.myeclipseide.com/module-htmlpages-display-pid-4.html一、启用root账户 1.Ubuntu出于安全考虑默认关闭root账户,所以启用root账户之前要先为它设置密码,Ctrl+Al... Read More
posted @ 2013-06-29 20:02 Hans Huang Views(1321) Comments(0) Diggs(1) Edit
在我的上一篇随笔里介绍了Jquery文件上传插件Uploadify的一些基本配置参数、事件和方法,都是一些死的东西,这篇随笔里就介绍一些服务器端的配置和Demo。 用VS2010写Demo的时候,发现一个奇怪的现象,在FF、Chrome、IE6-8浏览器中文件上传一切正常,唯独在IE9中,Uploadify按钮点不动,无法打开选择文件对话框,郁闷啊,找原因:更新Flash Player、调整CSS样式,都不行……最后的解决办法竟然是在IIS中为demo单独配置一个站点,问题完美解决了!我也不知道Uploadify为什么在VS2010自带的调试服务器里面会出现这样的问题,而且只针对IE9…….. Read More
posted @ 2012-09-25 01:03 Hans Huang Views(2625) Comments(0) Diggs(0) Edit
上传文件的时候打算用Ajax方法,这样用户体验好一些,找来找去还是Uploadify好些,可惜相关的帮助文档不好找,园里有一篇可惜是2年前2.1版本的,和现在最新的3.2版差别很大,很多Option都已经取消了。唯一可用的就是官网(http://www.uploadify.com/),里面的资料还是很详细的,所以打算把它整理成中文以便于以后查阅(Flash版Uploadify)。 Options(选项、参数): Option Inpu... Read More
posted @ 2012-09-10 01:36 Hans Huang Views(3317) Comments(1) Diggs(0) Edit
原型(Prototype)模式:用原型实例指定创建对象的种类,并通过复制这些原型创建新的对象。其实就是从一个对象再创建另外一个可定制的对象,而且可以不需要知道创建的细节。当一个对象生成不是通过New而是通过复制旧对象的时候,可以考虑使用原型模式。 Read More
posted @ 2012-09-07 00:28 Hans Huang Views(558) Comments(0) Diggs(0) Edit
NaN:非数值(Not a Number),用于表示一个本来要返回数值的操作数未返回数值的情况。 Read More
posted @ 2012-09-06 14:13 Hans Huang Views(918) Comments(0) Diggs(0) Edit
创建者(Builder)模式适用于产品局部加工变化较大,但是组装过程性对固定的场景。创建者模式和工厂模式有点类似,不过关注点不同。工厂模式往往只关心你要的是什么,而创建模式则关心的是这个东西的具体细节的创建。 Read More
posted @ 2012-09-03 17:49 Hans Huang Views(458) Comments(0) Diggs(0) Edit