Log off Problem with SERVICE_INTERACTIVE_PROCESS

HI.
I Programmed Service Application with SERVICE_INTERACTIVE_PROCESS
and Created Frame Window on Win2k.
because, I Want to See My Frame Window Always...(Though Log Off -> Log On
)

at first, Log off is worked well, but next time, Log off is not worked.
in addition, Shutdown, Restart ...

What is The Relation between Log Off and SERVICE_INTERACTIVE_PROCESS, or
Between Log Off and Frame Window.

This is my code in Service Run Function

==
void CServiceTestApp::Run(DWORD, LPTSTR *)
{
CMainFrame* pMainFrame = new CMainFrame;

if (!pMainFrame->Create(AfxRegisterWndClass(0), _T("Test Window")))
return;

m_pMainWnd = pMainFrame;
m_pMainWnd->ShowWindow(SW_SHOW);
m_pMainWnd->UpdateWindow();

m_hStopEvent = ::CreateEvent(0, TRUE, FALSE, "StopEvent");
ReportStatus(SERVICE_RUNNING);

MSG message;
while(::WaitForSingleObject(m_hStopEvent, 1) != WAIT_OBJECT_0)
{
if(::PeekMessage(&message, NULL, 0, 0, PM_REMOVE))
{
::TranslateMessage(&message);
::DispatchMessage(&message);
}
}
}

Thanks in advance.