none
WIN2008 R2 x64 Media Service 用程序安装时报错:无法将类型为“WMSServerLib.WMSServerClass”的COM对像强制转换为“WMSServerLib.IWMSServer” RRS feed

  • 问题

  • 以下是我创建MMS的代码,在WIN2003和WIN2008 32位上都可以正常运行,

    但是在WIN2008 R2 X64上面报以下错误:

    无法将类型为“WMSServerLib.WMSServerClass”的COM对像强制转换为“WMSServerLib.IWMSServer”;

    在2008R2 64位上面要如何写C#代码创建Mdeia Service点播

    谢谢

            private void btnMMS_Click(object sender, EventArgs e)
            {
                WMSServer Server;//WMS服务器对象
                IWMSPublishingPoints PubPoints;//发布点
                IWMSPublishingPoint PubPoint;//发布点实例
                IWMSOnDemandPublishingPoint BCPubPoint;//点播发布点
                IWMSAnnouncementStreamFormats AnnounceStreamFormats;
                string strFile = "";
                try
                {
                    try
                    {
                        // Create a new WMSServer object.
                        var ServerRemove = new WMSServerClass();
                        // Retrieve the IWMSPublishingPoints object.
                        var PubPointsServerRemove = ServerRemove.PublishingPoints;
                        // Remove the publishing point with the specified name.
                        PubPointsServerRemove.Remove("AVAResourcesPlatform");
                    }
                    catch (Exception ex)
                    {
                        // TODO: Handle exceptions.
                    }
                    //创建WMS服务对象
                    Server = new WMSServerClass();
                    //通过WMS对象得到发布点
                    PubPoints = Server.PublishingPoints;
                    //添加发布点
                    PubPoint = PubPoints.Add("AVAResourcesPlatform",
                     WMS_PUBLISHING_POINT_CATEGORY.WMS_PUBLISHING_POINT_ON_DEMAND,
                     (txtPath.Text + "\\AVA.ResourcesPlatform.AdminUI\\Upload").Replace("\\\\", "\\"));
                    BCPubPoint = (IWMSOnDemandPublishingPoint)PubPoint;
                    BCPubPoint.AllowClientsToConnect = true;
                    //BCPubPoint.AllowClientToStartAndStop = true;
                    ////如果发布点的状态时停止的话 则自动启动
                    //if (BCPubPoint.BroadcastStatus ==
                    //    WMS_BROADCAST_PUBLISHING_POINT_STATUS.WMS_BROADCAST_PUBLISHING_POINT_STOPPED)
                    //{
                    //    BCPubPoint.Start();
                    //}
                    MessageBox.Show("MMS点播创建成功", "提示!");
                }
                catch (Exception err)
                {
                    MessageBox.Show(err.Message, "出错");
                }
            }

    2012年12月25日 10:45

全部回复

  • http://technet.microsoft.com/zh-cn/LIBRARY/ms741055.ASPX
    Reference: Add a reference to Microsoft.WindowsMediaServices.
    Namespace: Microsoft.WindowsMediaServices.Interop.
    Assembly: Microsoft.WindowsMediaServices.dll.
    Library: WMSServerTypeLib.dll.
    Platform: Windows Server 2003 family, Windows Server 2008 family.

    他这里说引用的DLL是:WMSServerTypeLib.dll
    但是我引入不进,提示:不是一个有效的程序集或COM组件
    2012年12月26日 3:32
  • http://technet.microsoft.com/zh-cn/LIBRARY/ms741055.ASPX
    Reference: Add a reference to Microsoft.WindowsMediaServices.
    Namespace: Microsoft.WindowsMediaServices.Interop.
    Assembly: Microsoft.WindowsMediaServices.dll.
    Library: WMSServerTypeLib.dll.
    Platform: Windows Server 2003 family, Windows Server 2008 family.

    他这里说引用的DLL是:WMSServerTypeLib.dll
    但是我引入不进,提示:不是一个有效的程序集或COM组件

    是COM吧,regsvr32注册了吗?
    2012年12月26日 5:46