string strconExcel="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+@"D:\C#\スタ情報庫.xls"+";Extended Properties=\"Excel 8.0;MaxScanRows=8\"";
    olecn=new OleDbConnection(strconExcel);
try
{
olecn.Open();
}
catch(Exception ex)
{
MessageBox.Show(ex.Message);
return;
}
上面的代码,很显然是打开了一个Excel文件,所以进程当中就存在了Excel.exe,如何能把这个进程关掉呢,当然是用C#代码实现。

解决方案 »

  1.   

    有个笨办法就是
      你遍历当前进程 找到Excel.exe进程的ID 关闭之
      

  2.   

    用Process类阿
    里面有个方法是以进程名称查找的
    找到后关掉就OK了
      

  3.   

    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
    这是vb的代码,能否把它改成C#的
      

  4.   

    //杀死Excel进程
    //Process myproc = new Process();
    Process proc;
    Process[] procs = Process.GetProcessesByName("EXCEL"); //得到所有打开的进程
    try
    {
    foreach (Process tempLoopVar_proc in procs)
    {
    proc = tempLoopVar_proc;
    if (! proc.CloseMainWindow())
    {
    proc.Kill();
    }
    }

    }
    catch
    {}