摘要:
前言 在WPF嵌入地图,有两种方式: 浏览器方式;控件方式。 1)浏览器方式就是使用浏览器控件WebBrowser,设置好网址就行了。这种方式与地图的交互不太直接,需要懂html、javascript。对于不懂web编程的开发者来说,有点困难。 2)控件方式就是使用第三方控件;不需要处了解web相关 阅读全文
摘要:
假设一种情景:TCP服务器有1万个客户端连接,如果客户端5秒钟不发数据,则要断开。服务端如何检测客户端是否超时?这看起来是一个非常简单的问题,其实不然! 最简单的处理方法是:启动一个线程,每隔一段时间,检查每个连接是否超时。每次处理需要1万次检查。计算量太大!检查的时间间隔不能太小,否则大大增加计算 阅读全文
摘要:
音频处理分为播放和录音两类。对这些处理,微软提供了一些列函数,称之为Waveform Functions。这篇文章讨论录音功能。会对微软提供的函数做简单说明,并对这些函数封装成c++类,再进一步封装成c#类。 1 Waveform Functions函数简介 根据录音处理步骤,对这些函数做简单介绍。 阅读全文
摘要:
手机方便了我们的生活,可以随时随地拍摄。越来越多的图片堆砌在电脑里。看到杂乱无章的图片,实在感到头痛。手动整理太复杂。基于此,我写了一个小程序,可以将图片按日期整理和查看。按日期查看图片,回忆过去的点点滴滴! 手机拍摄图片时,图片文件会存储拍摄时间,也就是exif信息。通过读取exif信息,可以知晓 阅读全文
摘要:
介绍 pcm格式是音频非压缩格式。如果要对音频文件播放,需要先转换为pcm格式。 windows提供了多套函数用于播放,本文介绍Waveform Audio Functions系列函数。 原始的播放函数比较难用,因工作需要,我写了一个播放器,将播放相关函数封装了;非常好用,还不易出错。 播放流程 程 阅读全文
摘要:
XAML与XML类似,就是XML延伸过来的。为了更好的表达一些功能,WPF对XML做了扩展,有些功能是WPF在后台悄悄的替你做了。有时候,虽然实现了某个功能,但是对实现原理还是很茫然。今天就讲讲XAML中赋值操作。 1 通过类型转换赋值 赋值是最简单最常见的操作,举例: 这里把Width值赋值为20 阅读全文
摘要:
前言 TCP\IP已成为业界通讯标准。现在越来越多的程序需要联网。网络系统分为服务端和客户端,也就是c\s模式(client \ server)。client一般有一个或少数几个连接;server则需要处理大量连接。大部分情况下,只有服务端才特别考虑性能问题。本文主要介绍服务端处理方法,当然也可以用 阅读全文
摘要:
前言 多年前开发了一套网络库,底层实现采用IOCP(完成端口)。该库已在公司多个程序中应用;经过多次修改,长时间检验,已经非常稳定高效。 最近把以前的代码梳理了一下,又加进了一些新的思路。代码结构更加合理,性能也有所提升。打算将该库一些的知识点写出来,以供参考。 服务端要在多个端口监听,这种场合并不 阅读全文
摘要:
分布式系统有很多成熟的解决方案。如:微软的WCF。WCF太过于复杂,配置也麻烦。其实可以自己动手设计一个小的分布式系统。系统的原理完全在自己掌握之中,可以根据业务随机而变。这里展示远程调用最核心最基本的处理逻辑,其实远程调用并不复杂神秘。 分布式系统其实是数据流的交换。数据必须快速的从一段传送到另一 阅读全文
摘要:
因工作的需要,开发了一款视频播放程序。期间也经历许多曲折,查阅了大量资料,经过了反复测试,终于圆满完成了任务。 我把开发过程中的一些思路、想法写下来,以期对后来者有所帮助。 视频播放的本质 就是连续的图片。当每秒播放的图片超过一定数量,人眼就很难觉察到每帧图像播放间隔,看到的就是连续的视频流。 视频 阅读全文