xmlDir字符串变量名---微软BUG?

今天在我的工程中,使用了xmlDir字符串变量名。CString xmlDir;

突然程序中出现Data Abort异常,调了很久,最后终于锁定错误位置,居然是变量名问题。然后搜索整个工程,未发现与xmlDir重名变量。将xmlDir换名字为strDir,一切正常。到底是什么造成了这个问题了?

说明平台:开发为WINCE6.0系统服务器程序,ARM板平台。

发现这个问题后,我上网查了一下,未发现相关问题报告。然后我用串口查看了一下异常信息:

Exception 'Data Abort' (4): Thread-Id=06760022(pth=822fd900), Proc-Id=06710022(pprc=82237cdc) VM-active=06710022(pprc=82237cdc) 
PC=000164ec(*.exe+0x000064ec) RA=000164cc(*.exe+0x000064cc) SP=0051e91c, BVA=2020201c
Exception 'Raised Exception' (-1): Thread-Id=06760022(pth=822fd900), Proc-Id=00400002(pprc=81681308) 'NK.EXE', VM-active=06710022(pprc=82237cdc) '*.exe'
PC=c003b9f4(k.coredll.dll+0x0001b9f4) RA=800354c8(kernel.dll+0x000064c8) SP=d3f2f018, BVA=ffffffff
Exception 'Data Abort' (4): Thread-Id=06760022(pth=822fd900), Proc-Id=06710022(pprc=82237cdc) '*.exe', VM-active=06710022(pprc=82237cdc) '*.exe'
PC=0003b248(*.exe+0x0002b248) RA=0003b214(*.exe+0x0002b214) SP=0051eba8, BVA=00000018
Exception 'Raised Exception' (-1): Thread-Id=06760022(pth=822fd900), Proc-Id=00400002(pprc=81681308) 'NK.EXE', VM-active=06710022(pprc=82237cdc) '*.exe'
PC=c003b9f4(k.coredll.dll+0x0001b9f4) RA=800354c8(kernel.dll+0x000064c8) SP=d3f2f3d4, BVA=ffffffff

实在搞不懂如何跟内核有关系。然后我继续测试了一下,定义string类型,wstring类型xmlDir变量名,都会出现异常。

但是定义为char*和wchar*等类型是没有问题的,太疯狂了。CSDN中的大神们有人能帮我解答一下嘛?

总的问题就是:

在EPCARM3500板子WINCE6.0系统环境,使用CString xmlDir;文件名出现‘Data Abort’问题。

更换变量名为其他,如CString strDir一切正常。why?莫非与是环境变量同名,或是转换成汇编代码或是什么码的时候出现系统名冲突。不清楚!

你可能感兴趣的:(exception,汇编,String,平台,微软,WinCE)