Well, access violation is usually very easy to solve. Either the pointer is invalid (points to garbage), is null/0, or is overwritten by something else. You should examine the pointer/instance from when you create it to when you use it.
Make sure you are not having issues with different builds of libs (ie using debug libs with release builds), are not passing in an invalid 'this' pointer to your method (ie you called (null)->SomeMethod()) or have other memory issues - buffer overruns, double frees, etc.