【mfc】_pFirstBlock==pHead解决办法

本文介绍了如何解决Expression:_pFirstBlock==pHead调试错误的问题。通过调整Visual Studio工程设置,具体包括配置属性中的C/C++代码生成部分以及在命令行中添加特定宏定义来解决。此外,还提供了关于OpenCV版本冲突导致类似问题的解决方案。

遇到调试错误:Expression: _pFirstBlock==pHead。查阅了好久不知道是什么原因。最后发现是工程设置问题。现已经解决了。

----------》debug版下:属性--配置属性--C/C++--代码生成--运行库:
Multi-threaded Debug DLL (/MDd)

1>e:\visual studio\vc\atlmfc\include\afx.h(24): fatal error C1189: #error :  Building MFC application with /MD[d] (CRT dll version) requires MFC shared dll version. Please #define _AFXDLL or do not use /MD[d]

----------》工程->属性- >配置属性->c++->命令行
结尾加上
/D "_AFXDLL" 

 

以上转自http://blog.youkuaiyun.com/u013346007/article/details/51638320

For unknown reasons, some versions of opencv (2.x at least) have a CMake variable "BUILD_WITH_STATIC_CRT" that by default gets set to on, thus causing issues like that. Disable that flag, then the solution should get generated with /MDd defined.

Secondarily, open your exe file in dependency walker. Look for multiple versions of MS C++ runtime libraries. For example, you may have a version of QT built against msvcp110.dll (visual studio 2012) but your current project uses msvcp120.dll (visual studio 2013).

 

以上转自 http://stackoverflow.com/questions/26803975/debug-assertion-failed-pfirstblock-phead-using-opencv
importSubroutine("GUIUtils") importSubroutine("SUB_FAC_Comm") importSubroutine("SUB_UTL_DB") DLG_EDIT_FORM_NAME = "qm_dlg_UnitHoldSon" DLG_EDIT_UNIT_SUPER_HOLD = "qm_dlg_UnitSuperHoldSon" //表格对应的顺序 GRID_NAMEPLATE_UNIT_ID = 2 GRID_NAMEPLATE_ORDER_NUMBER = 3 GRID_NAMEPLATE_OPERATION_NO = 4 GRID_NAMEPLATE_ROUTE_NUMBER = 5 GRID_NAMEPLATE_DCP_NUMBER = 6 intCheck = vector() searchEnter = vector() //初始化界面 function frmInitForm() { // UI 初始化 initUI() edit_box_no.clear() edit_part_no.clear() // edit_operation_no.clear() // edit_route_no.clear() edit_work_order.clear() editPower.clear() // edit_electricity.clear() // edit_power.clear() intCheck.clear() searchEnter.clear() buttonHold.setEnabled(false) //buttonSuperHold.setEnabled(false) lines = getByLines() setComboboxItems(comboboxLine, lines) electricity = getByDianLiu() setComboboxItems(comboboxDianLiu, electricity) dateTimePickerStart.setValue(null) //创建日期结束 dateTimePickerEnd.setValue(null) glbInitGrid(gridSearchResult) glbReSizeGridColumnsToFit(gridSearchResult, GRID_COL_WIDTH) } //查询 function searchHandle() { editMessage.setText("") vectorSupplierInfo = vector() params = vector() sql = " SELECT T.SERIAL_NUMBER, PHEAD.BOX_ID_S, W.ORDER_NUMBER, pl.DESCRIPTION, U.AI_FQC_IMG_S, U.IV_IMG_S, PHEAD.packing_time_t, def.CAUSESOFDEFECTS, U.POWER_CLASS_S, U.ELECTRICITY_CLASS_S FROM UNIT T LEFT JOIN AT_PM_PALLET_INFO PALLET ON T.UNIT_KEY = PALLET.UNIT_47 LEFT JOIN AT_PM_PALLET_HEAD PHEAD ON PHEAD.vpallet_id_i = PALLET.vpallet_id_i LEFT JOIN WORK_ORDER W ON PHEAD.ORDER_54 = W.ORDER_KEY LEFT JOIN UDA_ORDER UO ON W.ORDER_KEY = UO.OBJECT_KEY LEFT JOIN PRODUCTION_LINE pl ON pl.p_line_key = UO.PRODUCTION_LINE_23 LEFT JOIN UDA_UNIT U ON T.UNIT_KEY = U.OBJECT_KEY LEFT JOIN ( SELECT UNIT_47, LISTAGG ( '不良位置:' || def.LOCATION_S || ' 不良原因:' || def.DEFECT_DESC_S, '|' ) WITHIN GROUP ( ORDER BY def.UNIT_47
03-14
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值