加解密多媒体文件

本文介绍了一种使用Delphi和Windows SDK API进行多媒体文件加解密的方法,通过XOR操作实现简单加密,适用于临时保护文件内容。讨论了加密后的文件在播放前的解密流程,以及如何在文件使用完毕后重新加密,防止意外泄露。
加解密多媒体文件 Delphi / Windows SDK/API
http://www.delphi2007.net/DelphiMultimedia/html/delphi_20061106153805172.html
procedure   FileXor(qFileName   :   String);       //加解密函数  
  var  
          fd   :   array[1..1024]   of   byte;  
          hf   :   integer;  
          br   :   Integer;  
          i   :   Integer;  
  begin  
          hf:=fileopen(qFileName,fmOpenReadWrite);  
        if   hf   <>   -1   then  
          begin  
                    FileSeek(hf,0,0);  
                    br   :=FileRead(hf,   fd,   1024);  
                    for   i   :=   1   to   br   do  
                    begin  
                          fd[i]   :=   (fd[i])   xor   (i   mod   $ff);  
                    end;  
                    FileSeek(hf,0,0);  
                    filewrite(hf,fd,   br);  
          end;  
          FileClose(hf);  
  end;  
  FORM的CREATE事件里:  
      filexor(‘c:\pin.mpg');           //解密MPG文件  
      mpp:=cvideo.Create(self);  //生成播放MPG控件  
      try   
            mpp.ReadFile(‘c:\pin.mpg',0);  
      finally  
          filexor(‘c:\pin.mpg');  //重新加密MPG文件  
      end;  
   
      mpp.free;  
   
  因为MPG文件正在被使用,所以后来想重新加密MPG文件不成功。只有在MPP.FREE后面再加密这个文件才可以。但我在程序中还需要用到这个录象文件,不能马上释放,如果不马上把这个文件加密,程序突然中断,我的录象就相当于没加密了,请问怎么解决。  
  一般的录象加密是怎么做的,程序中是怎么解密并运行的,能给个例子吗  
   
 

创建副本     加密好   覆盖掉原先的.                        
  录像   本身支持流   播放才能   以   流的方式解压.   播放.

转载于:https://www.cnblogs.com/delphi2007/archive/2008/11/05/1326879.html

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值