摘要:
TCP服务器服务器类图这里模仿了WebFrom的IHttpHandler,我设计了一个ITcpHandler提供给ServiceListener让外部解析。实现类是KeyMethodHandler。报文TcpContext包含了TcpRequest和TcpResponse,TcpRequest和消息报文结构相同,增加了从Socket获取的TcpEndpoint,TcpResponse仅仅只是回调状态和消息(暂时没有使用)。ServiceListener、BufferManager、SocketAsyncEventArgsPool和MDSN上标准的例子接近,原则上都是为了重用Buffer和Soc 阅读全文
摘要:
WP7支持的通信方式1. HTTP协议主要是由WebClient或HttpWebRequest两个类提供,直接封装HTTP协议访问Web站点。最常用的通信方式。2. WCFWCF作为MS大力推广的通信方案非常强大,但是到了WP7上就变成了太监,只支持简单的BasicHttpBinding而且还有非常多的限制。3 Socket7.1SDK里新增的通信方式,支持TCP和UDP但只能使用异步的SocketAsyncEventArgs事件方式,也有不少限制。选择通信方式因为同时需要考虑到服务器端的实现,在服务器端尽量精简,最好不要有什么IIS之类大型依赖。对应是服务器端实现方式如下:HTTP协议Htt 阅读全文
摘要:
控件功能分析圆形控件 能识别顺时针、逆时针滑动的手势,并能识别滑动速度。系统提供的相关事件OnManipulationStarted滑动开始手按下OnManipulationDelta滑动中手按住并移动OnManipulationCompleted滑动完成手放开这3个事件是实现滑动的必要事件,因为EventArgs提供了手的XY坐标已经移动速度,不过遗憾要识别顺时针需要自己实现。识别顺时针滑动识别了顺时针,反之就能识别逆时针,但如何识别顺时针滑动呢,其实这个问题困扰了我不少时间,首先看看默认的坐标轴结构图:用红色刷子表示手势,貌似没有找到突破口,光从X和Y的变化没有什么参考的地方。必须要换一下 阅读全文
摘要:
界面设计回顾一下按钮清单:播放控制播放/暂停Space停止F4快进Right快退Left快进X2Control+Right快退X2Control+Left快进X3Alt+Right快退X3Alt+Left音量放大Up缩小Down静音M节目下一个PageDown上一个PageUp基本上就是把这些按钮布置到480*800的屏幕上。快进按钮设计不过有个地方有点不舒服,就是快进、快退居然有3套,而且功能相似只是速度不同,如果像这样摆放6个按钮一定很不爽。之前再说点题外话,就是为什么没有用拖动进度条的方式。因为实现起来比较麻烦,需要API或者Windows消息。加上现在播放器大部分有断点续播,我不能设计 阅读全文
摘要:
思考既然决定了开发一款手机遥控器,那么首先确定开发的功能和实现方式。实现方式暂定以在PC端模拟键盘的方式触发快捷键。功能需求首先是遥控器上的按钮。首先是我用的播放器是PotPlayer64,常用的就是快进、后退、播放/暂停、下一文件、音量等。参考了自己的电视遥控器,感觉换台什么的为主,在这里实用性不强,我也不需要换台。然后是DVD遥控器,播放操作基本还是可以,不过上下左右之类的貌似也没有什么用。总结了一下,还是简单的设计,不常用的这个版本先不实现。下面是按钮清单和对应的播放器快捷键:播放控制播放/暂停Space停止F4快进Right快退Left快进X2Control+Right快退X2Cont 阅读全文
摘要:
前言几个月前买了一部三星的Omnia7,对WP7的系统特别有好感,加上本身就是.net个程序员,想着以后也可以自己开发点小程序。1月初公司里某项目正在搞令人恶心的CMMI3标准,我天天都在开会或者写概要设计和详细设计的文档,没怎么碰代码感觉手生,决定回家学习WP7开发。学习的过程学习的过程嘛,现在WP7的学习资源真的很少,买了一本《Windows Phone 7 高级编程》,其实我一直不怎么喜欢红皮书,感觉都是点到位置,只教方法不教原理,这本也让我很失望,不过拿来入门还是将就一下,至少能从中学习到WP7的一些大概情况。其次嘛,MSDN还是最好的在线学习的地方,Windows Phone 开发已 阅读全文