用别人封装好的DLL时,调用一个函数(该函数没有参数)时出现unhandled exception in XXX.exe(XXX.DLL) 0xC0000005 Access Violation这个错误,(XXX.DLL)就是封装好的DLL,调用里面的其他函数时没有问题。封装的DLL没有问题,在别的地方能用,请高人帮忙。

解决方案 »

  1.   

    看看另外的程序是否对这个DLL做了些什么额外的初始化动作。
    或者这个导出函数的调用是否有依赖另一个函数调用。
    就是说,这个接口设计的时候,必须先调另一个接口。
      

  2.   

    封装的DLL没有问题?
    按照软件工程的标准,这就是问题,应该是不管怎么调用,都不会导致程序崩溃,顶多返回个错误值罢了。0xC0000005一般是空指针所致。我估计原因是DLL的初始化函数没有调用。或者调用时序不对(有可能先需要调用一个函数才能调用这个函数)。