在OA系统中,邮件中带有WORD,EXCEL等附件。点击后在新窗口打开(文档嵌入在浏览器中显示)。
之后关闭浏览器。
这时,在某些客户端上的WINWORD进程不能结束,导致浏览器窗口不消失,这时再打开另一个附件时导致死机,只能手工结束WINWORD进程。但是某些客户端可以自动结束(要等几秒中)。
请问这是什么原因造成的?
服务器平台:winserver2003, sqlserver 2000(sp3),
客户端:office 2000, ie 6.0, winxp(sp1)和部分于IE无关的补丁。请帮忙! 谢谢谢谢!

解决方案 »

  1.   

    http://blog.csdn.net/net_lover/archive/2004/09/14/103676.aspx
      

  2.   

    http://support.microsoft.com/default.aspx?scid=kb;zh-cn;288367
      

  3.   

    Public Sub killExcelProcess()
            '结束 Excel 进程
            Dim xlProcess As New System.Diagnostics.Process        For Each xlProcess In System.Diagnostics.Process.GetProcesses
                If xlProcess.ProcessName.ToUpper.Equals("EXCEL") Then
                    '结束 excel 进程 
                    xlProcess.Kill()
                End If
            Next
        End Sub
      

  4.   

    http://community.csdn.net/Expert/topic/3077/3077526.xml?temp=.8746912
    http://www.dev-club.com/club/bbs/showEssence.asp?id=26350http://dev.csdn.net/Develop/article/18/18623.shtm
    http://community.csdn.net/Expert/topic/3112/3112296.xml?temp=.926861
    http://dotnet.aspx.cc/ShowDetail.aspx?id=BF0A54F9-C7C7-4200-BD9A-802AC1F5DE50
    http://expert.csdn.net/Expert/TopicView1.asp?id=2928057www.foxhis.com/powermjtest/
      

  5.   

    将你打开的word做为参数
    每次调用这个方法就行了!!public void CloseWord(Word.Application myword)
    {
      object nothing = Type.Missing ;
      object doNotSaveChanges = Word.WdSaveOptions .wdDoNotSaveChanges ;
      myword.Application .Quit(ref doNotSaveChanges,ref nothing,ref nothing);
      myword.Quit (ref doNotSaveChanges,ref nothing,ref nothing);  System.Runtime .InteropServices .Marshal .ReleaseComObject (myword);
      myword=null;
      GC.Collect ();
    }
      

  6.   

    public void CloseWord(Word.Application myword)
    {
      object nothing = Type.Missing ;
      object doNotSaveChanges = Word.WdSaveOptions .wdDoNotSaveChanges ;
      myword.Application .Quit(ref doNotSaveChanges,ref nothing,ref nothing);
      myword.Quit (ref doNotSaveChanges,ref nothing,ref nothing);  System.Runtime .InteropServices .Marshal .ReleaseComObject (myword);
      myword=null;
      GC.Collect ();
    }
      

  7.   

    当然了,用hta操作权限大一些,应该可以
      

  8.   

    Public Sub killExcelProcess()
            '结束 Excel 进程
            Dim xlProcess As New System.Diagnostics.Process        For Each xlProcess In System.Diagnostics.Process.GetProcesses
                If xlProcess.ProcessName.ToUpper.Equals("EXCEL") Then
                    '结束 excel 进程 
                    xlProcess.Kill()
                End If
            Next
        End Sub
    这种方法没问题 我式过
      

  9.   

    Public Sub killExcelProcess()
            '结束 Excel 进程
            Dim xlProcess As New System.Diagnostics.Process        For Each xlProcess In System.Diagnostics.Process.GetProcesses
                If xlProcess.ProcessName.ToUpper.Equals("EXCEL") Then
                    '结束 excel 进程 
                    xlProcess.Kill()
                End If
            Next
        End Sub在B/S下,这样杀死的会是客户端进程么?表示怀疑?