ntdll.pdb 包含查找模块 ntdll.dll 的源文件所需的调试信息
Visual studio打开一个Qt项目编译后Release模式运行遇到 *.exe 已触发了一个断点。"ntdll.pdb 包含查找模块 ntdll.dll 的源文件所需的调试信息",点了四五次运行箭头,可以正常打开项目。
不想每次运行项目都出现断点的情况,打印信息找问题。定位到
foreach(const QSerialPortInfo & info,QSerialPortInfo::availablePorts()) {.....}这段代码位置,将代码改为QList<QSerialPortInfo> serialPortInfoList= QSerialPortInfo::availablePorts();foreach(const QSerialPortInfo & info, serialPortInfoList) {......} ,大括号代码涉及UI组件都加了非空判断,这样运行后少了三次断点的情况。
继续排查同样无法找到问题,经同事提醒,重装了office,项目编译后Release模式运行可以了,但切换到Debug模式编译运行后又出现了"ntdll.pdb 包含查找模块 ntdll.dll 的源文件所需的调试信息",继续排查后将项目->属性->配置属性->Qt Project Settings中的Build Config改为Debug;项目->属性->属性选为Debug;菜单栏的生成->*调试属性中涉及Release、Debug选项全部改为Debug,编译后运行没在出现过"ntdll.pdb 包含查找模块 ntdll.dll 的源文件所需的调试信息"。