最近在操作WORD,中途老有这样那样的问题。
先是会随机崩溃。 for (i=0;i<cmdNode;i++)
{
xml.GetChildListNode(TEXT("str"),szGetNode,szGetInfo,i);
font.SetSize(10.5);
pf=sel.GetParagraphFormat();
pf.SetAlignment(0);
sel.SetParagraphFormat(pf);
if(!bFirst)
{
str.Format(TEXT("2.1.旋转"));
sel.TypeText(str);sel.TypeParagraph();
str.Format(TEXT("2.1.1.旋转方式"));
sel.TypeText(str);sel.TypeParagraph();
}
if (_tcscmp(szGetInfo[3],TEXT("0"))==0)
str.Format(TEXT("第%d次时,先逆向旋转后正向旋转"),i+1);
else
str.Format(TEXT("第%d次时,先正向旋转后逆向旋转"),i+1);
sel.TypeText(str);sel.TypeParagraph();
bFirst=TRUE;
}因为我是解析一个xml,然后内容全在迭代器里,所以函数中有很多这样的for循环。然后我发现它会随机性的崩溃(不是一定崩溃)。
崩溃的地方是
BOOL AFXAPI AfxDeactivateActCtx(DWORD dwFlags, ULONG_PTR ulCookie)
{
BOOL rc = pfnDeactivateActCtx != 0 ? pfnDeactivateActCtx(dwFlags, ulCookie) : FALSE;
return rc;
}
而最坑爹是的看堆栈没有任何信息。于是我尝试网上搜索,发现了如下博文:
http://blog.csdn.net/ocean2006/article/details/5805707
我怀疑可能原因是1,同CString有关,于是所有CSTRING改成TCHAR,如此试验数次未出现当初BUG(但还并不知道是否就是这个原因),于是跳过,继续出现其他问题。。一个for循环操作完表格之后
for(...)
{
...
}sel.MoveRight(COleVariant((short)1),COleVariant(short(1)),COleVariant(short(0)));//移出表格
sel.TypeParagraph();//显示断点运行之此行时老是被捕获异常,然后就不执行了
...本人对word并不熟悉,恳请高人讲解,因只能散100分,故稍后再开一帖。
先是会随机崩溃。 for (i=0;i<cmdNode;i++)
{
xml.GetChildListNode(TEXT("str"),szGetNode,szGetInfo,i);
font.SetSize(10.5);
pf=sel.GetParagraphFormat();
pf.SetAlignment(0);
sel.SetParagraphFormat(pf);
if(!bFirst)
{
str.Format(TEXT("2.1.旋转"));
sel.TypeText(str);sel.TypeParagraph();
str.Format(TEXT("2.1.1.旋转方式"));
sel.TypeText(str);sel.TypeParagraph();
}
if (_tcscmp(szGetInfo[3],TEXT("0"))==0)
str.Format(TEXT("第%d次时,先逆向旋转后正向旋转"),i+1);
else
str.Format(TEXT("第%d次时,先正向旋转后逆向旋转"),i+1);
sel.TypeText(str);sel.TypeParagraph();
bFirst=TRUE;
}因为我是解析一个xml,然后内容全在迭代器里,所以函数中有很多这样的for循环。然后我发现它会随机性的崩溃(不是一定崩溃)。
崩溃的地方是
BOOL AFXAPI AfxDeactivateActCtx(DWORD dwFlags, ULONG_PTR ulCookie)
{
BOOL rc = pfnDeactivateActCtx != 0 ? pfnDeactivateActCtx(dwFlags, ulCookie) : FALSE;
return rc;
}
而最坑爹是的看堆栈没有任何信息。于是我尝试网上搜索,发现了如下博文:
http://blog.csdn.net/ocean2006/article/details/5805707
我怀疑可能原因是1,同CString有关,于是所有CSTRING改成TCHAR,如此试验数次未出现当初BUG(但还并不知道是否就是这个原因),于是跳过,继续出现其他问题。。一个for循环操作完表格之后
for(...)
{
...
}sel.MoveRight(COleVariant((short)1),COleVariant(short(1)),COleVariant(short(0)));//移出表格
sel.TypeParagraph();//显示断点运行之此行时老是被捕获异常,然后就不执行了
...本人对word并不熟悉,恳请高人讲解,因只能散100分,故稍后再开一帖。
解决方案 »
- 如何成为WINDOWS开发大牛
- 关于界面的问题,我的毕业设计,望给点建议
- 怎样用Graphics:: SetInterpolationMode调整缩略图的质量。
- 请教一个关于数据类型的问题!
- 怎样在内存映射文件中存放复杂数据结构的数据?
- “试图执行不支持操作”,这是什么原因呢??????
- 给一个二维数组动态分配内存的最好方法是什么??(double ** a ?????)
- 这样翻译对不对???前往支持网站-》goto the support website
- VirtualQuery查询的地址不能是任意指定的么
- [H.264]码流编号不连续
- MFC Windows程序设计(第二版)
- 关于给工作线程循环传递消息
sel.TypeText(TEXT(""));
sel.TypeParagraph();