You have a few options available. As the structure exists in the application class (CMyApp), you can create a member function that returns the address of this structure. Now, if this method is called from inside CMyDoc, the document has the address of the structure, and can operate on it freely, providing that both objects reside on the same thread. If they do not, things get more complicated. Alternatively, taking an advanced step from the section above, you can create a structure into CMyDoc as well, then get a pointer from CMyApp and use memcpy to copy the structure data from CMyApp to CMyDoc. Now, CMyDoc contains a copy of the structure. The previous posted created an example piece to show you how to access the application object at run-time. Use this method to call the function that returns the structure address. -Antti Keskinen ---------------------------------------------- The definition of impossible is strictly dependant on what we think is possible.