• 大小: 4.05MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-09-18
  • 语言: 其他
  • 标签: 音频水印  

资源简介

将所要嵌入的信息嵌入到音频中,然后不易被别人获取,在后期再获取信息。

资源截图

代码片段和文件信息

// Dib.cpp: implementation of the CDib class.
//
//////////////////////////////////////////////////////////////////////

#include “StdAfx.h“
#include “Dib.h“

#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

CDib::CDib()
{
m_hDrawDib=NULL;
m_pDib=NULL;
}

CDib::~CDib()
{
Close();
}

void CDib::Draw(CDC *pDCint nWidth int nHeight)
{
if(m_pDib!=NULL)
{
ASSERT(IsValid());
DrawDibRealize(m_hDrawDibpDC->GetSafeHdc()TRUE);
DrawDibDraw(m_hDrawDibpDC->GetSafeHdc()
0  //desktop left
0  //desktop top
nWidth
nHeight
(BITMAPINFOHEADER *)m_pDib
(LPVOID) GetBits()
0  //source left
0  //source top
((BITMAPINFOHEADER *)m_pDib)->biWidth
((BITMAPINFOHEADER *)m_pDib)->biHeight
DDF_BACKGROUNDPAL);
}
}

CSize CDib::GetSize()
{
return CSize(((BITMAPINFOHEADER *)m_pDib)->biWidth
 ((BITMAPINFOHEADER *)m_pDib)->biHeight);
}

LONG CDib::GetWidth()
{
return ((BITMAPINFOHEADER *)m_pDib)->biWidth;
}

LONG CDib::GetHeight()
{
return ((BITMAPINFOHEADER *)m_pDib)->biHeight;
}

void CDib::Close()
{
if(m_hDrawDib!=NULL)
{
DrawDibClose(m_hDrawDib);
m_hDrawDib=NULL;
}

if(m_pDib!=NULL)
{
delete m_pDib;
m_pDib=NULL;
}
}

BOOL CDib::Open(const char * pzFileName)
{
// BITMAPFILEHEADER bmpFileHeader;
CFile file;
int nBmpFileHeaderSize;

Close();

//drawdibopen initialize the diradib library and 
//returns a handle for all drawdib operations
if(!(m_hDrawDib=DrawDibOpen()))
goto exit;

  //open and read the DIB file header
nBmpFileHeaderSize=sizeof(BITMAPFILEHEADER);

if(!file.Open(pzFileNameCFile::modeRead | CFile::typeBinary))
goto exit;

if(file.Read((void *)&bmpFileHeadernBmpFileHeaderSize)!=(UINT)nBmpFileHeaderSize)
goto failure;

//validate the DIB file header by checking the first
//two characters for the signature “BM“
if(bmpFileHeader.bfType!=*((WORD *)“BM“))
goto failure;

//allocate a big chuck of global memory to store the DIB
m_pDib=(BYTE *)new char [bmpFileHeader.bfSize-nBmpFileHeaderSize];

//allocate memory fail
if(!m_pDib)
goto failure;

//read the dib into the buffer at a time using ReadHuge
file.ReadHuge(m_pDibbmpFileHeader.bfSize-nBmpFileHeaderSize);

if(((BITMAPINFOHEADER *)m_pDib)->biSizeImage==0)
{
//the application that create this bitmap didn‘t fill
//in the biSizeImage field. Let‘s fill it
//in even though the DrawDib * functions don‘t need it.
BITMAPINFOHEADER *pDib=(BITMAPINFOHEADER *)m_pDib;

//scan lines must be DWord aligned hence the strange bit stuff
pDib->biSizeImage=((((pDib->biWidth*pDib->biBitCount)+31)&~31)>>3)*pDib->biHeight;
}

m_pDibBits=GetBits();

file.Close();
ret

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2015-04-27 15:06  基于音频的水印\
     目录           0  2015-04-27 15:06  基于音频的水印\Debug\
     文件       24715  2009-03-01 19:19  基于音频的水印\Debug\Dib.obj
     文件      105709  2009-03-01 19:19  基于音频的水印\Debug\StdAfx.obj
     文件      222208  2015-04-11 00:04  基于音频的水印\Debug\vc60.idb
     文件      397312  2009-03-01 19:34  基于音频的水印\Debug\vc60.pdb
     文件      131143  2009-03-01 19:59  基于音频的水印\Debug\WaterMark.exe
     文件      273920  2009-03-01 19:59  基于音频的水印\Debug\WaterMark.ilk
     文件       23542  2009-03-01 19:19  基于音频的水印\Debug\WaterMark.obj
     文件     5628416  2009-03-01 19:19  基于音频的水印\Debug\WaterMark.pch
     文件      418816  2009-03-01 19:59  基于音频的水印\Debug\WaterMark.pdb
     文件        5144  2009-03-01 19:59  基于音频的水印\Debug\WaterMark.res
     文件       83650  2009-03-01 19:34  基于音频的水印\Debug\WaterMarkDlg.obj
     文件        4429  2006-03-29 18:54  基于音频的水印\Dib.cpp
     文件         964  2006-03-29 18:16  基于音频的水印\Dib.h
     目录           0  2015-04-27 15:06  基于音频的水印\Pic\
     文件       23610  2006-08-10 13:15  基于音频的水印\Pic\11.bmp
     文件      196662  1998-02-03 17:48  基于音频的水印\Pic\Apple.bmp
     文件      447390  1999-03-16 03:57  基于音频的水印\Pic\BoatCake.BMP
     文件      921654  1999-03-16 03:46  基于音频的水印\Pic\Fruit.BMP
     文件      138514  2002-11-29 19:41  基于音频的水印\Pic\lena.bmp
     文件       23610  2006-08-10 13:18  基于音频的水印\Pic\MarkWater.bmp
     文件      177356  2003-04-28 09:46  基于音频的水印\Pic\plane24.bmp
     文件      113334  2000-07-09 20:11  基于音频的水印\Pic\street.bmp
     文件      125952  2006-08-15 11:03  基于音频的水印\Pic\Thumbs.db
     目录           0  2015-04-27 15:06  基于音频的水印\res\
     文件        1101  2006-04-02 20:34  基于音频的水印\Resource.h
     文件        3310  2009-03-01 17:14  基于音频的水印\res\FACE.ICO
     文件      306016  2009-03-01 16:02  基于音频的水印\res\FACE2.ICO
     文件       10240  2006-08-15 11:03  基于音频的水印\res\Thumbs.db
     文件        1078  2006-03-20 22:23  基于音频的水印\res\WaterMark.ico
............此处省略15个文件信息

评论

共有 条评论