首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

为何生成了一个ini文件后程序出错了 删掉该生成语句后程序还是恢复不了原样?该怎么解决

2012-03-07 
为何生成了一个ini文件后程序出错了 删掉该生成语句后程序还是恢复不了原样?我的程序有个登陆界面 登陆后

为何生成了一个ini文件后程序出错了 删掉该生成语句后程序还是恢复不了原样?
我的程序有个登陆界面 登陆后是单文档程序 我在CWinApp的派生类的InitInstance()函数中加了free((void*)m_pszProfileName);
 //改变Ini文件名.
m_pszProfileName=_tcsdup("c:\\sys.ini"); 这两句话,然后再在登录按钮对应的函数中添加了ini文件数据写入功能,结果生成了该ini文件,也实现了数据写入ini文件,但是登录后跳转到的单文档程序出错了,菜单不能实现不同界面的切换了,程序崩溃了,后来我把生成ini文件的语句和写入数据的语句都删了,程序还是恢复不了,原本菜单能切换的界面还是切换不了了,不知道怎么回事啊?高手帮忙看看吧!

[解决办法]
你的free干吗用啊?m_pszProfileName是动态分配的?
[解决办法]
// 去看一下别人的程序里 m_pszProfileName 是怎么定义的,对其是否有molloc之类的操作。
[解决办法]
SetRegistryKey(_T("Siemens"));
// under "HKEY_CURRENT_USER\\Software"
LoadStdProfileSettings(); // Load standard INI file options (including MRU)
而向导生成的是:
// Change the registry key under which our settings are stored.
// You should modify this string to be something appropriate
// such as the name of your company or organization.
SetRegistryKey(_T("Local AppWizard-Generated Applications"));

热点排行