ASP中建立Excel对象,Excel进程总是无法释放(看了网上的很多帖子,两种方法,但是都不是很好)

来源:互联网 发布:淘宝网大童女装秋装 编辑:程序博客网 时间:2024/05/01 16:57

方法一:

  var   idTmr   =   "";  
  function   Cleanup()   {  
          window.clearInterval(idTmr);  
          CollectGarbage();  
  }  
  function   AutomateExcel()    
  {  
  var   oXL   =   new   ActiveXObject("Excel.Application");    
  oXL.DisplayAlerts   =   false    
  var   oWB   =   oXL.Workbooks.Add();    
  var   oSheet   =   oWB.ActiveSheet;    
  var   htmlTable   =   document.all.outtable;  
  var   hang   =   htmlTable.rows.length;    
   
  var   lie   =   htmlTable.rows(0).cells.length-1;    
   
  for   (i=0;i<hang;i++)  
  {  
  for   (j=0;j<lie;j++)  
  {  
  oSheet.Cells(i+1,j+1).value   =   htmlTable.rows(i).cells(j+1).innerText;  
  }  
   
  }  
  oXL.Visible   =   true;    
  oXL.UserControl   =   false;    
  oXL   =   null;  
  idTmr   =   window.setInterval("Cleanup();",1);  
  }  
原文参见  
  http://support.microsoft.com/default.aspx?scid=KB;en-us;q266088

 

方法二:       

       Process[] allexcel = Process.GetProcessesByName("excel");
        for (int i = 0; i < allexcel.Length; i++)
        {
            allexcel[i].Kill();
        }

原创粉丝点击