小弟想做VOD点播所以这段时间一头埋入windows Media SDK帮助当中,现将一部份研究成果与大侠们共享!  多提意见,出错之处请指点我本想用VC将服务器管理这一模块实现但想到方法及思想所以现在正在用VB构建这些研究成果,到时再发部出来与大家共享! Windows Media Unicast Controls(Nsunimgr.ocx)
1、 Windows Media Unicast服务器控件组包括两个控件
A、 Admin Control配置和管理一个服务器(设置服务器一些属性、方法、事件响应)
B、 TraceView Control用于管理一个服务器的一切事件(用来显示)
2、 Windows Media Unicast Admin Control(服务器配置管理控件)
A、 用于在自制程序中用一个Administrator管理一个运行Media Services的服务,管理此服务器的一切配置包括服务的事件、属性、方法。
B、 也可用于管理一切连接服务,包括客户端连接到服务器的管理。如:Clients对象集管理Client连接的集合。
C、 功能说明:
1) 设置服务器的属性(Setting and retrieving server properties)
置最大服务带宽(the maximum aggregate bandwidth)
连接客户端最大数(the maximum number of clients)
2) 控制客户端的状态(Monitoring client behavior)
所有连接(connections)
断开链接(disconnections)
标题播放(titles played)
3) 全面管理服务的活动(Monitoring overall system activity)
服务状态(server status)
管理各种服务功能(administration functions)
服务的限制条件(server limits)
过滤各种收到的事件(Filtering the types of events received by the control)
3、 Windows Media Unicast TraceView Control(监测Media服务器活动状态)
A、 显示Media Servicers提供的一切事件状态
B、 显示事件引发的时间及日期
C、 功能说明:
1) 停止、恢复事件的监控显示(pause and resume event monitoring)
2) 清除事件的显示内容记录(clear the event logging display)
3) 选择显示事件的条件包括:服务、客户、管理、警告事件的显示(selection includes the Server, Client, Admin, and Alert events)
D、 使用说明:
1) 启动程序前初始设置此监测控件连接的服务器  SetServer(“服务器名或IP”)链接到监制的服务器Media Servicers,从而开始收到事件的显示
2)
4、 Windows Media Unicast Admin Control详解
A、 属性(Properties)
1) AdminEvents 是否允许收到管理的事件
2) AlertEvents  是否允许收到警告事件
3) AuthenticationPlugins 返回一个连接的插件
4) ClientEvents 是否允许收到客户一切状态事件
5) Clients 获得连接的客户集
6) EnableHttpStreaming 是否允许通过Http协议传输播放的多媒体流
7) EnableLogging 
8) EnableProxy 是否进行代理
9) EventPlugins 返回一个连接事件的插件相关程序
10) EventsProxy 设置代理的服务器
11) LogFileDirectory  设置或返回日志文件的保存目录
12) LogFilePeriod 设置或查询日志文件产生的时间间隔
13) LogFileSize 设置或返回日志文件的大小
14) MaxBandWidth 设置或返回最大的服务带宽
15) MaxClients 设置或返回连接的最大客户数
16) MaxFileBitRate 设置或返回最大文件的比特率
17) ProxyHostName   设置或返回代理服务器的名字
18) ProxyUser 登录代理服务器的用户ID
19) Server 设置或返回当前配置的服务器名或IP(连接到的Media服务器)
20) ServerEvents 是否允许收到服务事件
21) ServerStatus 返回当前Media服务器的状态
22) VirtualRoots 返回此Media服务器的根目录
B、 方法(Method)
1) Connect 连接到一个Media配置管理的服务器(参数为服务器的名称或IP地址)
2) KillClient   断开一个客户连接(参数为此客户的ID)
3) SetProxyAuthenticationInfo  设置客户登录Http代理服务器的USER ID及PASSWORD
C、 事件(Events)
1) 说明:主要包括Media服务器的服务事件(Server  events)、客户事件(Client Events)、管理事件(Administration events)、警告事件(Alert Events)
2) OnEventBacklogReached
3) OnServerFault  Media服务错误失败事件
4) OnServerOffline   Media服务关闭事件
5) OnServerOnline Media 启动服务事件
6) Administration events 管理事件
7) OnAdminBandwidthLimit  Media带宽改变事件
8) OnAdminClientLimit Media客户连接限制数量改变事件
9) OnAdminFileBitRateLimit  Media服务文件的比特率改变事件
10) OnAdminKillClient Media服务关闭一个客户连接的事件
11) Client Events 客户一切事件
12) OnClientConnect 客户连接事件
13) OnClientDisconnect 客户退出连接事件
14) OnClientPlay 客户开始播放事件
15) OnClientStop 客户停止播放事件
16) OnClientStride   客户浏览此文件(快进或后退….)
17) Alert events  警告事件
18) OnMaxBandWidth 达到最大带宽时发生的事件
19) OnMaxClients 达到最大客户连接数时的事件
 
20) OnMaxFileBitRate 达到最大文件比特率的事件
D、 Windows Media Unicast Admin Control Objects(Admin Control管理的对象)
1) AuthenticationPlugins 插件程序集(得到设置Media服务器的所有插件程序功能)
属性:Count 插件总数
Item  表示具体的一个插件
例如:得到Media服务器的所有插件说明
For i=1 to CInt( NSUnicastMgr1.AuthenticationPlugins.Count )
  MsgBox (NSUnicastMgr1.AuthenticationPlugins.Item[i-1].Description)
Next
具体一个插件的属性:
Enabled 设置此插件是否有效
Description 返回此插件的说明
CLSID 插件的类ID
Author 插件的作者名称
Copyright 返回版权的声明信息
LastError 返回是否发生错误
Status  插件的状态
2) Clients Collection Object(客户连接对象集保存所有连接到Media服务器的客户对象)
属性: Count 客户连接的总数
Item 表示具体的一个客户对象
具体一个Client对象属性:
Disconnect  关闭客户的连接
ClientID   客户的ID标识
Filename   客户正在播放的文件名称
IPAddress  客户的IP地址
PortID    客户的端口号
Status      客户当前状态
4) EventPlugins Collection Object(与插件对象集类事相同得到事件的插件信息)
5) VirtualRoots Collection Object(Media服务器根目录集对象-服务器)
属性: Count 得到总数
  Item   具体的一个对象可以进一步得到此对象的信息属性
方法: Add 增加一个VirtualRoot  object对象到对象集中( 增加一个目录)
  Remove  从VirtualRoot  objects对象集中删除一个指定的对象
SetAsHome  设置此对象为默认根目录