I have an object that lives throughout the life of an app. There are also DLLs that access the object to read _and_ write it. It is a pointer and is a data member of the Application (CWinApp). Obvisously this is not ideal and I inherited it, so Id like to address the issue, as currently there are AfxGetApp() calls everywhere and its ugly.

Suggestions? Where should the object live? and how best to access it?
Thx.