小弟我的服务为什么输出一半就不输出了啊ServiceMain中输出文本。到了某行程序就罢工了

我的服务为什么输出一半就不输出了啊?ServiceMain中输出文本。。到了某行程序就罢工了
ServiceMain
{
......
while   (ServiceStatus.dwCurrentState   ==  
                    SERVICE_RUNNING)
      {
      char   buf2[30]= "place   1   is   ok ";
                        WriteToError(buf2);//该函数为向文件写入一个字符串函数。这里正常输出了结果
if   (!AfxWinInit(::GetModuleHandle(NULL),   NULL,   ::GetCommandLine(),   0))
{
strcpy(buffer, "Fatal   Error:   MFC   initialization   failed ");
WriteToError(buffer);//这儿不输出字符串到文件了。
nRetCode   =   1;
}
else
{
//   TODO:   code   your   application 's   behavior   here.
InitDatabase();
strcpy(buffer, "Init   OK ");
                                    WriteToError(buffer);//这儿也不输出字符串到文件了。
                            ......
                    }
                    strcpy(buffer, "why   can   not   write   to   file?? ");
                    WriteToError(buffer);//这儿也不输出字符串到文件了。

服务运行正常但是为什么就不输出结果呢?从服务运行的情况来看。后面的函数应该也运行到了。

------解决方案--------------------
把程序作成控制台程序就可以调了