我想把打过包的文件中的认证地址改  请问怎么办,除了重新打包!

解决方案 »

  1.   

    哪种DRM?WMDRM、OMA DRM、还是APPLE的那个?
      

  2.   

    用ultraedit打开音乐文件,左边是二进制代码,右边你会看到<title>之类的标记,找到<LAINFO>标记,后面的字符串就是你所要更改的URL,改变二进制的值,右边会相应的改变.URL是用Unicode写的,但如果是英文,那么就是16进制的ASCII码加上00构成,很容易修改。
      

  3.   

    那个没办法了.......如果有微软的SDK授权,自己用.net写个程序进行集体重新打包,也难不到哪去。没授权的话就没什么办法了.......
      

  4.   

    如果所有的文件都指向同一个地址,或者可以通过编写函数从原来的地址字符串转化成现有的地址字符串,那么很简单,把所有的文件都扔到同一个目录下,然后自己写个.net 程序,用foreach循环一个一个读取文件头,把头的数据更改掉,然后重新写入.
      

  5.   

    我试了  该HEAD中其他的属性都能改  可是一该这个属性和KEYID它就报异常
      

  6.   

    KID肯定不能改,那个东西要和license server统一的.
    更改头的话,你用的应该是download类
    查到错误返回值是什么了吗?
    Return code Description 
    0x80041108 Invalid content header. 
    0x8004110B Unsupported content header version. 
    0xC004291F This method does not support Windows Media Rights Manager 1. 
    0xC0042911 The InputFile property must be set before calling this method. 
    0xC004291A The input file must be protected. 
    0xC004291E The object was not created with Server.CreateObject. 
    0xC0042905 The property has not been set. 
      

  7.   

    不是用的这个类  我看SDK的时候  它说ProtectObj.WriteFile可以Update Head里面的属性  我试了几个无关紧要的属性没什么问题  它报的都是一个异常hresult这个System.Runtime.InteropServices.COMException  不太明白
      

  8.   

    对于动态修改头,微软的描述如下
    The basic process for modifying a content header dynamically is as follows: 1.Determine the path and file name of the packaged file to modify. 
    2.Use the Download.GetDRMHeader method to obtain the current content header and modify it as needed. For example, to add new attributes. 
    If you want to create a new content header and do not need the original one, you can skip this step.3.Sign the new header. 
    4.Generate the new header. 
    5.Add the new header to the packaged file by using the Download.Download or Download.DownloadEx method (the Download.DownloadEx method has additional options). 你可以用Download类看看,如果不行的话也没有办法了,以前没测过重新换URL打包的例子。
      

  9.   

    我想问一下 Download是哪个命名空间下的累啊
      

  10.   

    DRMREHEADERLib.DownLoadClass
    试试看吧,估计可能不行,否则一个音乐厂商可以直接使用另一个音乐厂商的drm文件了.
      

  11.   

    WMSDK一共有4个dll文件,都导入进去,肯定有这个命名空间的,分多少倒是无所谓。
      

  12.   

    我这里好象就这一个DLL  安装SDK的时候好象就这一个
      

  13.   

    http://hi.baidu.com/dlbtsoft/blog/item/d3cfccfd89d7dffbfc037f99.html 
    这个里面有关于DRM SDK详细的文档解答这里有详细的研究和文档说明