char* path;
CString str = ::sysInI.currPath;
path = (LPSTR)(LPCTSTR)str;
char str3[20];
char* SpecFileName;
sprintf(SpecFileName,"%s%s",path,ini);
CString Segment;
CString KeyStr,V;
Segment="GENERAL";
KeyStr.Format("sysInI.ParamFilePath"); V.Format("%s",sysInI.ParamFilePath);
WritePrivateProfileString(Segment,KeyStr,V,SpecFileName);
SingleDisplay.exe 中的 0x7857716d (mfc100d.dll) 处有未经处理的异常: 0xC0000005: 读取位置 0xec34f9cd 时发生访问冲突
该问题是由这一段程序引发的,执行时能通过,最后系统报了这个错误,百度上查了一下,是某个资源没有释放,不知道程序哪里出了错误?
2 个解决方案
#1
[char* SpecFileName;
sprintf(SpecFileName,"%s%s",path,ini); 没有申请内存, 崩溃的时候在弹出的对话框按相应按钮进入调试,按Alt+7键查看Call Stack即“调用堆栈”里面从上到下列出的对应从里层到外层的函数调用历史。双击某一行可将光标定位到此次调用的源代码或汇编指令处, 看不懂时双击下一行,直到能看懂为止。
]
sprintf(SpecFileName,"%s%s",path,ini); 没有申请内存, 崩溃的时候在弹出的对话框按相应按钮进入调试,按Alt+7键查看Call Stack即“调用堆栈”里面从上到下列出的对应从里层到外层的函数调用历史。双击某一行可将光标定位到此次调用的源代码或汇编指令处, 看不懂时双击下一行,直到能看懂为止。
]
#1
[char* SpecFileName;
sprintf(SpecFileName,"%s%s",path,ini); 没有申请内存, 崩溃的时候在弹出的对话框按相应按钮进入调试,按Alt+7键查看Call Stack即“调用堆栈”里面从上到下列出的对应从里层到外层的函数调用历史。双击某一行可将光标定位到此次调用的源代码或汇编指令处, 看不懂时双击下一行,直到能看懂为止。
]
sprintf(SpecFileName,"%s%s",path,ini); 没有申请内存, 崩溃的时候在弹出的对话框按相应按钮进入调试,按Alt+7键查看Call Stack即“调用堆栈”里面从上到下列出的对应从里层到外层的函数调用历史。双击某一行可将光标定位到此次调用的源代码或汇编指令处, 看不懂时双击下一行,直到能看懂为止。
]