GetFileSize()具体使用方法。 我自己写了个文件——file_path,想用GetFileSize()函数获得该文件的大小并在视图类显示,按照MSDN做了几次多不对。请问GetFileSize()函数的具体使用方法是怎样的?最好是能给个实际的例子。谢谢你! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 do you still have any questions? hFile = CreateFile(...);dwSize = GetFileSize(hFile, NULL);if( dwSize == INVALID_FILE_SIZE ) { dwError = GetLastError();}dwSizeLow = GetFileSize (hFile, & dwSizeHigh) ;if (dwSizeLow == INVALID_FILE_SIZE && (dwError = GetLastError()) != NO_ERROR ){ //Failed }...CloseFile(hFile); 谢谢!上面同志的支持。我已经试过了,具体的代码是:hfile=CreateFile(file_path,//是我自己写的文件的路径 GENERIC_READ|GENERIC_WRITE, FILE_SHARE_READ|FILE_SHARE_WRITE, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL|FILE_FLAG_RANDOM_ACCESS, NULL); dwsize = GetFileSize(hfile, NULL);if( dwsize == INVALID_FILE_SIZE ) { dwError = GetLastError();}dwsizeLow = GetFileSize (hfile, & dwsizeHigh) ;if (dwsizeLow == INVALID_FILE_SIZE && (dwError = GetLastError()) != NO_ERROR ){ MessageBox("GetFileSize error!"); }}运行后就会出现“GetFileSize error!”的提示。调试后发现hfile=0xffffffff;是不是CreateFile()失败阿?另外说下我在MSDN中没找到CloseFile()。 请哪朋友详细指教下。我是位新手,对于你来说是个简单的问题,但对于我来说是很复杂;你的指点,会让我少走很多的弯路。真诚谢谢你! hfile=0xffffffff,打开文件失败了。 获取文件大小可以用CFIle CFileStatus CFileStatus st; CFile fl; fl.GetStatus("sss.voc",st); rec_size.Format("大小%d 字节",st.m_size); fl.Close(); 文件路径是不是给错了?你可以判断一下hfile是否正确 msvbvm60(HOOK)的方法我已经试过了,但有问题。首先完全按照他的代码做,程序运行后会出现:Debug Assertion Failed!错误。然后我把fl.Close()屏蔽掉后,程序运行起来没问题;但对于任何文件,文件的大小都是:-842150451。请问这是怎么回事? 在CreateFile后最好加个判断,像下面:if (hfile == INVALID_HANDLE_VALUE){ MessageBox("CreateFile error!"); return;} 你这里肯定是打开文件失败了,仔细看一下MSDN里的CreateFile。 求一个用mfc中的Dialog做的登录界面的流程图,着急用。 2个网络编程的问题 不使用MFC,在程序中如何内嵌一个浏览器 请问各位高手!为什么在Debug下能运行的程序,而换成Release状况就回出错。谢谢!! 关于界面的问题 关于智能建筑的问题,请各位大虾指教! 关于“状态条上显示位图的问题”,请高手。。。。。 求助改变程序字体 如何获取安装目录的路径? 许多ActiveX控件都提供了events接口,请问如何在已经插入该控件的对话框中捕获这些事件 简单的问题,偶的MSDN丢了。。郁闷。。。求救 如何判断异步connect连接成功?
dwSize = GetFileSize(hFile, NULL);
if( dwSize == INVALID_FILE_SIZE )
{
dwError = GetLastError();
}
dwSizeLow = GetFileSize (hFile, & dwSizeHigh) ;
if (dwSizeLow == INVALID_FILE_SIZE
&& (dwError = GetLastError()) != NO_ERROR )
{
//Failed
}...
CloseFile(hFile);
我已经试过了,具体的代码是:
hfile=CreateFile(file_path,//是我自己写的文件的路径
GENERIC_READ|GENERIC_WRITE,
FILE_SHARE_READ|FILE_SHARE_WRITE,
NULL,
OPEN_EXISTING,
FILE_ATTRIBUTE_NORMAL|FILE_FLAG_RANDOM_ACCESS,
NULL);
dwsize = GetFileSize(hfile, NULL);
if( dwsize == INVALID_FILE_SIZE )
{
dwError = GetLastError();
}
dwsizeLow = GetFileSize (hfile, & dwsizeHigh) ;
if (dwsizeLow == INVALID_FILE_SIZE
&& (dwError = GetLastError()) != NO_ERROR )
{
MessageBox("GetFileSize error!");
}
}
运行后就会出现“GetFileSize error!”的提示。
调试后发现hfile=0xffffffff;是不是CreateFile()失败阿?
另外说下我在MSDN中没找到CloseFile()。
请哪朋友详细指教下。我是位新手,对于你来说是个简单的问题,但对于
我来说是很复杂;你的指点,会让我少走很多的弯路。真诚谢谢你!
CFile fl;
fl.GetStatus("sss.voc",st);
rec_size.Format("大小%d 字节",st.m_size);
fl.Close();
首先完全按照他的代码做,程序运行后会出现:Debug Assertion Failed!错误。
然后我把fl.Close()屏蔽掉后,程序运行起来没问题;但对于任何文件,文件的大小都是:-842150451。请问这是怎么回事?
{
MessageBox("CreateFile error!");
return;
} 你这里肯定是打开文件失败了,仔细看一下MSDN里的CreateFile。