VC 无法设置断点问题
本来以前机子里面有vc++,后来安装了vc sp6的版本,发现不能调试了。确切的说是不能设置断点了,更严格的说是,在想设置断点的地方不能设置断点了,(当然这些地方都是合法的,比如说CView 的OnDraw)。而但你按F10,进入winmain后在mfc的源代码里面竟然可以设置断点,奇怪就奇怪在这里。
安装回以前的版本也不能用了。在网上查了很久,也没有人能解释这个问题,我就下定决心重新安装系统,安装了半天后,一开始,sp6版本的还可以用,但是,在一次进入vc中调试时,又发现不可以了。My God。当然要解决这个问题简直是太困难了,在网上找到一个帖子是美国人写的,好像是关于dll不能设置断点的问题,和我的情况也不太一样。今天,又想了半天,突然奇思到,是不是路径是中文的缘故啊?我记得sp6那个补丁是英文的,虽然安装后是中文界面,那是不是里面不支持中文路径呢?后来新建了一个mfc 的exe。single程序。调试,运行。可以了。呵呵。那肯定是路径的问题。路径有中文的化好像会出错。然后拿回以前的那个程序来调试,首先当然是换一个路径了,换了之后发现还是不行,好,首先是退出程序,到那个不能调试的程序目录底下,找到.opt 和 .ncb,删除他们,重新再次编译!成功。
安装回以前的版本也不能用了。在网上查了很久,也没有人能解释这个问题,我就下定决心重新安装系统,安装了半天后,一开始,sp6版本的还可以用,但是,在一次进入vc中调试时,又发现不可以了。My God。当然要解决这个问题简直是太困难了,在网上找到一个帖子是美国人写的,好像是关于dll不能设置断点的问题,和我的情况也不太一样。今天,又想了半天,突然奇思到,是不是路径是中文的缘故啊?我记得sp6那个补丁是英文的,虽然安装后是中文界面,那是不是里面不支持中文路径呢?后来新建了一个mfc 的exe。single程序。调试,运行。可以了。呵呵。那肯定是路径的问题。路径有中文的化好像会出错。然后拿回以前的那个程序来调试,首先当然是换一个路径了,换了之后发现还是不行,好,首先是退出程序,到那个不能调试的程序目录底下,找到.opt 和 .ncb,删除他们,重新再次编译!成功。
PS: 其实上文作者有错误之处,只有目录上含有不匹配全角字符(如 "()", 左括号是半角,右括号是全角)才会出现不能调试运行的问题。不过本文给了很多的启示。