cmjff 2016-04-14 07:41 采纳率: 0%
浏览 1655

DLL显式加载后,得到了DLL内的导出函数地址,但是调用的时候出现了0X00000005

如题,DLL加载内内存都没有问题,调用GetProcAddress也返回了正常的地址,但是偏偏调用时就出错了,请问如果是DLL加壳或者内部有算法会导致这样的问题吗?
strcpy_s(macRountineName,sizeof(macRountineName),"fnRequestOperation");
if (hinstLib == NULL)
hinstLib = LoadLibrary(TConvert::StrToTStr(mLibraryName).c_str());

    if (hinstLib != NULL)
    {
        SpoGetKey = (REQPROC)GetProcAddress(hinstLib,macRountineName);
    }
    hSecurity = SpoGetKey(lMus_Seed, wAlgorithm, &lMus_Key, wCkSum);

大致代码如上,我单步调试到hSecurity的时候,该值为0x00000005 Aceess is denied
请问这是什么问题啊?求大神,我都查了两天了。
  • 写回答

1条回答

  • 小灸舞 2016-04-14 08:07
    关注

    指针的非法访问,比如你向一个不能修改的区域进行了写操作,越界访问了,操作了NULL指针等等

    评论

报告相同问题?

悬赏问题

  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!