資源簡介
將所要嵌入的信息嵌入到音頻中,然后不易被別人獲取,在后期再獲取信息。

代碼片段和文件信息
//?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個文件信息
評論
共有 條評論