In summary I am trying to pass a compressed file to an uncompress function...

The uncompress function is defined as follows

Code:
/*------------------------------------------------------------------------------
--------------------------
int DecompressLZW(BYTE *pSrcData,DWORD dwSrcSize,BYTE* OutputBuffer,DWORD dwMaxOutput) 

pSrcData - raw compressed data to be decompressed
dwSrcSize - the number of bytes of compressed data to decompress
OutputBuffer - the location to write the decompressed data into
dwMaxOutput - the maximum amount to write into the OutputBuffer
--------------------------------------------------------------------------------
---------------------*/
I then have an open file dialog....

Code:
BYTE * OutputBuffer;
BYTE * pSrcData;
CString strl="Please Select a Compressed File to Decompress";

	char strFilter8[]= { "CMP Files(*.cmp)|*.cmp|All Files(*.*)|*.*||"};
	CFileDialog dlgFile8(TRUE, ".cmp", NULL,0,strFilter8);
	dlgFile8.m_ofn.lpstrTitle= strl;
                if (dlgFile8.DoModal() ==IDOK)
	{
		
		
		
		
	ifstream file9((LPCTSTR) dlgFile8.GetFileName(), ios::in|ios::binary);
		file9.seekg (0, ios::end);
		int sizecmp = file9.tellg();
		int sizecmp2 = sizecmp * 3;
		file9.seekg (0, ios::beg);
		pSrcData = new BYTE[sizecmp];
		file9.read (pSrcData, sizecmp);
		file9.close();
		OutputBuffer = new BYTE[sizecmp2];
	DecompressLZW(pSrcData,sizecmp, OutputBuffer,sizecmp2);
		
	}
The problem is the file.read requires a char * buffer and if I use a char * buffer I cannot pass pSrcData to the function as the function requires a Byte *

I know the answer is staring me in the face but I cant seem to get it to work.