zoukankan      html  css  js  c++  java
  • 在操作EXCEL时,关闭当前进程

    在操作EXCEL时,看到一个方法是杀掉所有“EXCEL”进程,这样如果有打开的文档也会被关且不提示是否保存,使用者会疯掉的,下面这种方法可以只杀当前进程

    Microsoft.Office.Interop.Excel.Application m_xlApp = new Microsoft.Office.Interop.Excel.Application();
    int m_k = m_xlApp.Hwnd;

    //进行操作

    KillProcess(m_k);
    //关闭进程


    //关闭的方法
            [DllImport("User32.dll", CharSet = CharSet.Auto)]
            
    public static extern int GetWindowThreadProcessId(IntPtr hwnd, out int ID);
           
    /// <summary>
           
    /// 杀掉进程
           
    /// </summary>
           
    /// <param name="ID"></param>
            private static void KillProcess(int ID)
            {
                IntPtr t 
    = new IntPtr(ID);
                
    int k = 0;
                GetWindowThreadProcessId(t, 
    out k);   //得到本进程唯一标志k
                if (k != 0)
                {
                    System.Diagnostics.Process p 
    = System.Diagnostics.Process.GetProcessById(k);   //得到对进程k的引用
                    p.Kill();     //关闭进程k
                }

            } 

     这样就可以操作了,在循环操作中更是好用的,以前我在导出新浪BLOG到WORD时就是杀掉所有进种的,方法好用,但不太合理,用了上面的例子感觉很好

  • 相关阅读:
    网页居中的问题
    棋盘覆盖
    可变宽度的圆角框
    多线程编辑问题
    实验五 Web项目开发
    实验三 一个标准的Windows应用程序
    【语言处理与Python】1.2将文本当作词链表
    【语言处理与Python】1.5自动理解自然语言
    【语言处理与Python】1.1文本和单词
    【语言处理与Python】1.3计算语言:简单的统计
  • 原文地址:https://www.cnblogs.com/hantianwei/p/2168917.html
Copyright © 2011-2022 走看看