无法执行添加/移除操作,因为代码元素**是只读的

来源:互联网 发布:淘宝手机客户端网址 编辑:程序博客网 时间:2024/05/12 11:14

在vs中,大量添加窗体或者控件后,发现无法由系统IDE自动生成代码,如自动添加按钮响应函数等,rc管理器界面双击按钮添加函数,会出现 提示框 “无法执行添加/移除操作,因为代码元素**是只读的”。开始认为可能是对应的.cpp和.h被加了只读属性,后来发现是工程的ncb文件引起的。

解决方案:关闭vs,删除工程对应的.ncb文件,重启vs就好了。

问题原因:NCB是no compile brower的缩写,文件中存放了供ClassView、WizardBar和Component Gallery使用的信息(关于ClassView、WizardBar请访问http://msdn.microsoft.com/zh-cn/library/6761383e.aspx)

在复制资源或者工程时,要修改工程的ncb文件,因为要适应新的环境可能造成ncb文件混乱;而添加按钮响应函数等是修改ncb文件中ClassView、WizardBar模块的数据,数据混乱就会导致自动添加函数失败。删除ncb文件让vs重新建立ncb即可。