I doing a print preview from a form view. Since formview doesnt support
printing, I am launching my own view, temporarily and printing the contents
of the formview on this view.

The problem is when I close the temporary view window without closing the
print preview view, the application crashes. This is because the
OnEndPrintPreview function of the CView class is not closed before closing
the window. If I want to manually call the OnEndPrintPreview function from
the OnClose function of my CView class, I need a CPreviewView object
pointer, as the OnEndPrintPreview function needs it. Is there anyway to get
a CPreviewView pointer from CView?

CPreviewView is undocumented in MSDN.