What compiler and IDE are you using? (Helps us help you to debug - doesn't have to do with the problem)
Most likely what is happening is that you are passing a pointer to a function and that pointer is null (0x00000000). Then the function tries to do something on the data pointed to by the pointer but gets an error because the pointer is pointing at 0x0000000.
The solution is to step through your application and look at all the pointers passed to the function in which the Access Violation happens.
If using Visual Studio 2002 you would start a debug run with F10 then step through your small program by hitting F10 each line. Eventually you'll hit the line of code that creates the Violation. Remeber generally which area the line was in and place a breakpoint somewhere about it.
Then stop the debug run (click the stop button). Then start again with the F5 key (it will run until the break point). Then open the watch window and look for a variabe that is 0x0000000. That variable will be causing the problem. Then find out why that variable is 0x0000000.
I THINK that I know the line, where the x000000 appears. And this line I have marked at this post... its the xml->read() .
I said to compiler the path, but nothing,,, and i must say, that it works when it was in one file... than I made CMainMenu class and began to use readCFG function from it... the result is this strange problem for me.
OS: WinXP Pro SP2
IDE: VS. Net 2003
Debug information(i see 0x00000, BUT WHY?):
- xml 0x00000000 irr::io::IXMLReader *
- irr::IUnknown {ReferenceCounter=??? DebugName=??? } irr::IUnknown
- __vfptr CXX0030: Error: expression cannot be evaluated *
[0] CXX0030: Error: expression cannot be evaluated *
ReferenceCounter CXX0030: Error: expression cannot be evaluated int
- DebugName CXX0030: Error: expression cannot be evaluated const char *
CXX0030: Error: expression cannot be evaluated const char