问题: File:f:\dd\vctools\crt_bld\_self_x86\crt\src\flength.c
Debug|Win32编译选项。环境是vs2008
编译成功,但运行时就出现如下图所示的错误:

出错代码大致如下:
int main(int arg ,char ** argc){
/*省略内容*/
int fh1 = _open( "CRT_OPEN.C", _O_RDONLY ); // C4996
/*省略内容*/
filelength(fh1);
/*省略内容*/
return 0;
}
原因:
根本就找不到 CRT_OPEN.C 这个文件,open打开失败,但又没有对失败处理,导致filelength传入的是空文件

在VS2008的Debug|Win32编译环境下,运行时遇到File:f:\dd\vctools\crt_bld\_self_x86\crt\src\flength.c错误,原因是CRT_OPEN.C文件未找到。通过查找源代码定位到flength.c的第46行,发现错误处理缺失。解决方法是根据内存泄露输出的路径结合VS安装路径找到对应源代码进行修复。

2万+

被折叠的 条评论
为什么被折叠?



