2012年10月11日
摘要: 在中文Windows系统下编写的ldif文件默认使用gb2312编码,但LDAP 规定了 ldif 文件需要使用 UTF-8 格式,因此在导入ldif文件时需要做编码转换。步骤如下:1、下载iconv.exe程序2、在windows的命令行下输入命令:iconv.exe -f gb2312 -t utf-8 test1.ldif > test.ldif命令解释:-f: 源文件编码格式-t: 目标文件编码格式test1.ldif 为源文件> test.ldif表示转换后输出到test.ldif3、导入ldif文件:ldapadd -x -D "cn=Manager,dc=s 阅读全文
posted @ 2012-10-11 09:55 顾文锦 阅读(1270) 评论(0) 推荐(0) 编辑
  2012年7月10日
摘要: 1 安装及概述:SIPp是一个测试SIP协议性能的工具软件。这是一个GPL的开放源码软件。它包含了一些基本的SipStone用户代理工作流程(UAC和UAS),并可使用INVITE和B YE建立和释放多个呼叫。它也可以读XML的场景文件,即描述任何性能测试的配置文件。它能动态显示测试运行的统计数据(呼叫速率、信号来回的延迟,以及消息统计)。周期性地把CSV统计数据转储,在多个套接字上的TCP和UDP,利用重新传输管理的多路复用。在场景定义文件中可以使用正规表达式,动态调整呼叫速率。SIPp可以用来测试许多真实的SIP设备,如SIP代理,B2BUAs,SIP媒体服务器,SIP/x网关,SIP P 阅读全文
posted @ 2012-07-10 15:00 顾文锦 阅读(7319) 评论(1) 推荐(2) 编辑
  2011年12月21日
摘要: 本文介绍一个本人自定义的NativieActivity,该NativieActivity可实现如下功能:1、 运行时创建OutArgument,并绑定到变量;2、 使用书签进行活动的触发;3、 与宿主中的WCF服务进行交互。代码如下:public sealed class WaitActivity : NativeActivity { //创建了书签的NativeActivity需要返回true protected override bool CanInduceIdle { get { return true; } ... 阅读全文
posted @ 2011-12-21 19:35 顾文锦 阅读(1218) 评论(2) 推荐(0) 编辑
摘要: 最近在项目中碰到了这样一个场景:DataGrid需要绑定到一个ObservableCollection<MyClass>,MyClass包含了一组对象,每个对象对应DataGrid的一个Column,如果把这一组对象放进MyClass的一个ObservableCollection<>属性中,则无法绑定;如果每个对象做为MyClass的一个属性,则可以动态创建Column并绑定到属性。因此我们需要能为MyClass动态添加属性,使用dynamic类型是个不错的选择。实现步骤如下: 1、 首先定义属性 public ObservableCollection<dynam 阅读全文
posted @ 2011-12-21 19:15 顾文锦 阅读(1146) 评论(0) 推荐(0) 编辑
  2011年11月19日
摘要: 在开发大型复杂系统时,我们通常会按功能将系统分成很多模块,这样模块就可以独立的并行开发、测试、部署、修改。使用Prism框架设计表现层时,我们也会遵循这个原则,按功能相关性将界面划分为多个模块,每个模块又包含多个Region。这就需要解决模块之间、Region之间经常需要进行通信的问题,Prism提供了以下几种方式:1、聚合事件(Event aggregation)使用方式,先在一个公共模块中定义一个事件MyEvent ,传输数据为MyEntity。public class MyEvent : CompositePresentationEvent<MyEntity>{}然后在需要等 阅读全文
posted @ 2011-11-19 17:46 顾文锦 阅读(1282) 评论(1) 推荐(1) 编辑
  2011年11月17日
摘要: WF4并非是在原有WF3.x上的改进,而是全新的开发有新的命名空间,程序集,原WF3的部分会继续保留这主要是为了兼容,下面的表格告诉你具体的变化:1.程序集的变化WF3.x程序集WF4程序集System.Workflow.Activities.dllSystem.Activities.dllSystem.Workflow.ComponentModel.dllSystem.Activities.dllSystem.WorkflowServices.dllSystem.ServiceModel.Activities.dll2.名空间的变化WF3.x命名空间WF4命名空间System.Workflo 阅读全文
posted @ 2011-11-17 10:25 顾文锦 阅读(388) 评论(0) 推荐(0) 编辑
  2011年11月14日
摘要: <ContextMenu x:Key="ModeMenu"> <MenuItem Header="添加" Command="{Binding AddCommand}" CommandParameter="{Binding ElementName=ModesTree, Path=SelectedItem}"> <MenuItem.Icon> <Image Source="../Images/Add.png" Width="16" Hei 阅读全文
posted @ 2011-11-14 18:51 顾文锦 阅读(1232) 评论(0) 推荐(0) 编辑
  2011年11月1日
摘要: MVVM模式中的事件的响应一般有以下几种方式:直接绑定到命令、使用依赖属性、使用Blend自带的两个库(System.Windows.Interactivity.dll和Microsoft.Expression.Interactions.dll)。其中直接绑定到命令的方式只有在部分场景中可用,如Button的click事件;使用依赖属性的方式在之前的一篇文章中已讲过(http://www.cnblogs.com/wenjingu/archive/2011/04/12/2013608.html),这种方法较通用,但过于臃肿,而第三种方法则简明的多。具体使用方法如下(以ListView 的Sele 阅读全文
posted @ 2011-11-01 14:51 顾文锦 阅读(1137) 评论(0) 推荐(1) 编辑
  2011年10月12日
摘要: 一个SIP消息既可以是一个从客户端到服务器端的请求,也可以是一个从服务器端到客户端的一个应答。一个消息由三部分组成:消息起始行、消息头、消息体。消息体分为XML格式的消息和SDP消息。消息编解码时采用延迟解析策略,即用到某个字段时再解析,提高响应速度。消息生成时,先将消息分解为三部分:消息起始行、消息头、消息体。如果用到某个具体的字段时,再对上述三部分进行解析。 下图描述了消息层的关键类的类图: 阅读全文
posted @ 2011-10-12 17:52 顾文锦 阅读(433) 评论(0) 推荐(0) 编辑
摘要: 一个事务是客户发送的一个请求事务(通过通讯层)发送到一个服务器事务,连同服务器事务的所有的该请求的应答发送回客户端事务。事务层处理应用服务层的重发,匹配请求的应答,以及应用服务层的超时。任何一个用户代理客户端(user agent client UAC)完成的事情都是由一组事务构成的。通常一个SIP 事务由一个单个请求和这个请求的所有应答组成,这些应答包括了零个或者多个临时应答以及一个或者多个终结应答事务层包含两个事务库:客户端事务库和服务端事务库。每个事务都包含若干状态。其中Invite客户端事务包括Calling、Proceeding、Completed、Terminated四种状态;非I 阅读全文
posted @ 2011-10-12 17:43 顾文锦 阅读(1403) 评论(0) 推荐(0) 编辑