我想在MainFrm中打开一个.res的文件,经过读取转化在显示出来,
大概思路是怎么样啊?我一点都不懂。(是单文档)
大概思路是怎么样啊?我一点都不懂。(是单文档)
解决方案 »
- VC++如何连接SQL数据源?我是新手,各位请指点一下,谢谢!!
- 请问我想用C/C++对硬件(微机接口)编程,需要用哪些参考资料
- IIS加载我的Isapi DLL后,该DLL中的代码是作为系统权限运行还是作为其他用户权限运行?比如:
- 帮忙看看把!!
- MFC,API,SDK之间是什么关系啊?
- 紧急求助bmp图像读吗和处理----等直线编码
- 如何启动另外一个程序,并在需要的时候让其退出?
- SQL高手请进
- 关于CGridCtrl在vs2008环境下得问题!!跪求!!!!! 急啊 !!!!!
- vc编译时经常出现INTERNAL COMPLIER ERROR是什么原因,请各位高手不吝赐教
- vc中变量突变
- CSocket和CAsynSocket是否支持IPv6?
代码大约是这个样子的:
CFileDialog dlg(TRUE);
CFile file;
if(dlg.DoModal()==IDOK)
{
file.open(dlg.GetPathName(),...);//打开文件}
==================================
res文件是编译好的资源文件吧,应该是二进制的,你想显示什么呢?二进程内容还是什么?
我在MainFrm里打开了文件,然后再View里定义了extern CFile file来获得MainFrm的那个文件,然后把它显示出来。
你看怎么做啊?
{
CReadFileDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
if (!pDoc)
return;}
我不明白这一段时什么意思啊?
能给我解释一下吗?
我在MainFrm里打开了文件,然后再View里定义了extern CFile file来获得MainFrm的那个文件,然后把它显示出来。
你看怎么做啊?
============
根据这个文件的格式来显示吧,不知道res具体的内容,不好说
pDC->TextOut(x,y,字符,字符长度);x,y是显示位置。
但还是运行时错了啊。。
{
// TODO: 在此添加命令处理程序代码
CFileDialog fileDlg(true);
fileDlg.m_ofn.lpstrFilter=_T("Text Files(*.res;*log;*RES;*LOG)\0*.res;*log;*RES;*LOG\0\0"); if (IDOK==fileDlg.DoModal())
{
file.Open(fileDlg.GetFileName(),CFile::modeRead);
}
}void CReadFileView::OnDraw(CDC* pDC)//我想在这显示
{
CReadFileDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
if (!pDoc)
return;
// TODO: 在此处为本机数据添加绘制代码
if (file.GetLength()!=0)
{
CString RecordNo;
long int lon=0;
file.Seek(lon,CFile::begin);//跳至文件保存相应位置
file.Read(&RecordNo,sizeof(long int));//读记录序列
pDC->TextOut(50,50,RecordNo);
}}
另外我也在View的.h文件中定义了CFile file;在析构函数中赋值了,file=NULL;
编译说:'CObject::operator =' : cannot access private member declared in class 'CObject'
-----------------------------------------
囧,你看过file直接赋值为NULL了吗?我是没有看到过
那CFile file怎么赋值啊?