VC里什么函数可代替OPEN函数
我在VC里用了按钮控件来构建一个对话框,打开一个文件.在这个按键的函数里我又用了OPEN函数来打同一个文件,这样导致检测的数据不对,编译倒是没错.VC里有什么函数可以替代这个OPEN函数,或如何修改以下代码.代码如下:voidCZinceDlg::OnButopen()
{
//TODO:Addyourcontrolnotificationhandlercodehere
CStringstrName;
//char*path;
intret1;
//charch4[100];
CDialog::OnInitDialog();
CFileDialogfileDlg(TRUE);
fileDlg.m_ofn.lpstrTitle="我的文件打开对话框";
fileDlg.m_ofn.lpstrFilter="AllFiles(*.*)*.*";
//构造定制的文件对话框
//CFileDialogdlg(TRUE,_T("*"),_T("*.avi"),OFN_EXPLORER,_T("影像文件(*.avi)|*.avi|所有文件(*.*)|*.*|"));
//CFileDialogdlg(TRUE,NULL,NULL,OFN_HIDEREADONLY,"所有文件|*.*||");
if(fileDlg.DoModal()==IDOK)
{
strName1=fileDlg.GetPathName();
//MessageBox(strName1+"文件已打开","打开文件");
//m_epath1.Format("文件路径:%s",strName1);
CFilefile(fileDlg.GetFileName(),CFile::modeRead);//定义文件
dwFileLen=file.GetLength();//读取文件长度
pBuf=newchar[dwFileLen+1];
pBuf[dwFileLen]=0;
file.Seek(0,CFile::begin);
file.Read(pBuf,dwFileLen);//读取文件信息
m_epath1.Format("文件路径:%s",file.GetFilePath());//显示文件的路径
ret1=mdec((char*)(LPCTSTR)strName1);
staticintmdec(char*argv)
{
intret,code;
base.Infile=open(argv,O_RDONLY|O_BINARY);
ld=&base;
if(base.Infile=0)
{
Initialize_Buffer();
next_start_code();
//取32位数据
code=Show_Bits(32);
switch(code)
{
caseSEQUENCE_HEADER_CODE://序列头
break;
caseSEQUENCE_END_CODE://序列结束
return0;
break;
casePACK_START_CODE:
System_Stream_Flag=1;
caseVIDEO_ELEMENTARY_STREAM://视频流
System_Stream_Flag=1;
break;
default:
break;
}
Initialize_Buffer();
}
Initialize_Decoder();
ret=Decode_Bitstream();
cl