hResource =  LoadResource (hInst, 
                FindResource (hInst,  TEXT ("AnnabelLee"),
                                        TEXT ("TEXT"))) ;
          
pText = (char *) LockResource (hResource) ;iNumLines = 0 ;
while (*pText != '\\' && *pText != '\0')
{
if (*pText == '\n')
iNumLines ++ ;
pText = AnsiNext (pText) ;
}*pText = '\0' ;//这里会出现一个异常,请问怎么回事?怎么解决?

解决方案 »

  1.   

    在LockResource 调用后, 检查你的 pText 是不是空.
      

  2.   

    下边是从MSDN查出来的LoadResource的帮助
    Do not try to lock a resource by using the handle returned by the FindResource or FindResourceEx function. Such a handle points to random data.不要用FindResource或者FindResourceEx函数返回的句柄锁定资源。使用LoadResource返回的句柄
      

  3.   

    楼上的. 楼主没有用FindResource 的返回参数来 LockResource. 看清代码先, 楼主的用法应该没问题.FindResource 的第三个参数是不是应该用 RT_STRING?
      

  4.   

    AnnabelLee
    另外, 我也不知道你 FindResource 的第二个参数是资源名吗? AnnabelLee 不会就是要找的字符串吧? 呵呵, 相信你不会范这种低级错误. 检查 hResource 是不是NULL,
    检查 pText 是不是NULL.
      

  5.   

    这段代码是programming windows里的资源那一块的
    AnnabelLee是资源名
    TEXT是资源类型