精华内容
下载资源
问答
  • MFC如何正常关闭一个程序

    千次阅读 2018-01-17 16:50:08
    今天在敲代码的时候,突然忘记 如何正常关闭一个MFC程序(我自己用的方法关闭不彻底),很简单的问题,但是心里有点疑惑,那么要怎么做才可以正常完全的关闭一个MFC程序呢?解决方法:1.给主窗口发送 WM_CLOSE消息,...

    今天在敲代码的时候,突然忘记 如何正常关闭一个MFC程序(我自己用的方法关闭不彻底),很简单的问题,但是心里有点疑惑,那么要怎么做才可以正常完全的关闭一个MFC程序呢?

    解决方法:

    1.给主窗口发送  WM_CLOSE消息,如下:



    经查阅 我是用这种方式解决了我的问题。

    下面补充一下其它一些有效的方法:

    1、对话框用   CDialog::OnOk();   
         Doc/View用 OnClose();

    2、PostQuitMessage(0);//最常用

         PostMessage(WM_QUIT,0,0);//最常用

         ::SendMessage(AfxGetMainWnd()->m_hWnd,WM_CLOSE,0,0);//最常用
         ::PostMessage(AfxGetMainWnd()->m_hWnd,WM_CLOSE,0,0);//最常用

    3、ExitProcess(0);注意使用时先释放分配的内存,以免造成内存泄露

    4、exit(0) 正常终止程序; exit(非0)非正常终止程序

    5、OnClose();

    void CMainFrame::OnClose() 
    {
            // TODO: Add your message handler code here and/or call default
           if (MessageBox("确定要退出吗?","提示",MB_YESNO|MB_DEFBUTTON2)==IDYES)
           {
                    CFrameWnd::OnClose();
           }
    }

    展开全文
  • linux 关闭一个程序脚本

    千次阅读 2018-11-30 09:15:48
    #!/bin/sh function PidFind() { PIDCOUNT=`ps -ef | grep $1 | grep -v "grep" | grep -v $0 | awk '{print $2}' | wc -l`; if [ ${PIDCOUNT} -gt 1 ] ; then ...There are t...
    #!/bin/sh
    
      
    
    function PidFind()  
    
    {  
    
        PIDCOUNT=`ps -ef | grep $1 | grep -v "grep" | grep -v $0 | awk '{print $2}' | wc -l`;  
    
        if [ ${PIDCOUNT} -gt 1 ] ; then  
    
            echo "There are too many process contains name[$1]"  
    
        elif [ ${PIDCOUNT} -le 0 ] ; then  
    
            echo "No such process[$1]!"  
    
        else  
    
            PID=`ps -ef | grep $1 | grep -v "grep" | grep -v ".sh" | awk '{print $2}'` ;  
    
            echo "Find the PID of this progress!--- process:$1 PID=[${PID}] ";  
    
    echo "Kill the process $1 ...";  
    
            kill -9  ${PID};  
    
            echo "kill -9 ${PID} $1 done!";  
    
        fi  
    
    }  
    
    #PidFind your_file_Name
    
    PidFind hello
    
    exit 1
    

     

    $0 ——Shell本身的文件名 
    $1~$n ——添加到Shell的各参数值。$1是第1参数、$2是第2参数…。 

    grep -v 是反向查找的意思,比如 grep -v grep 就是查找不含有 grep 字段的行

    awk,更适合文本格式化,对文本进行较复杂的格式处理

    展开全文
  • windows如何定时关闭一个程序

    千次阅读 2018-10-22 18:42:00
    方法其实系统本身有这项功能的,打开记事本,将以下内容保存为.bat文件(将下面cmd.exe的名字改成你的音乐播放软件的exe名)@echo offTASKKILL /F /IM cmd.exe /T保存好之后,打开控制面板任务计划,添加新任务,把...

    方法一
    其实系统本身有这项功能的,打开记事本,将以下内容保存为.bat文件
    (将下面cmd.exe的名字改成你的音乐播放软件的exe名)
    @echo off
    TASKKILL /F /IM cmd.exe /T
    保存好之后,打开控制面板任务计划,添加新任务,把这个bat定时就行了,时间到了之后那个播放器就会被结束掉,用这个批处理你可以结束掉大多数的程序。

    方法二
    1、点开始,在运行框里输入cmd,选择cmd,鼠标右键选择以管理员身份运行;

    2、比如:要在11点钟的时候关闭迅雷软件;
    在命令窗口中,输入at 11:00 taskkill /im thunder.exe /f;
    taskkill:是结束指定进程的命令;
    /im imagename:要终止的进程名;
    /f:强制终止进程。

    方法三(例要关闭千千静听)
    运行中输入:
    at 8:50 ntsd -c q -pn TTPlayer.exe
    解释:8:50结束“TTPlayer.exe”进程,即关闭千千静听。
    当然也可以写为批处理:把“at 8:50 ntsd -c q -pn TTPlayer.exe”写入记事本,另存为bat格式即可。

    转载于:https://www.cnblogs.com/asdyzh/p/9831906.html

    展开全文
  • 由于插件受制于主程序,因此我必须另外提供一个程序可以扩展插件的功能。于是乎,我就编写了一个更加复杂的程序来完成更多的功能,但是为了使这个程序可以看起来是和使用插件的程序象是集成在一起的,就必须在启动...

    今天正在编写的程序是一个插件(PlugIn)。插件其实就是一个动态链接库,可以被主程序装入内存中,并调用插件中按照主程序规定编写的函数。由于插件受制于主程序,因此我必须另外提供一个程序可以扩展插件的功能。于是乎,我就编写了一个更加复杂的程序来完成更多的功能,但是为了使这个程序可以看起来是和使用插件的程序象是集成在一起的,就必须在启动插件程序的过程中,也同时启动我后来编写的程序,并且还要在插件主程序关闭之前,将我编写的程序也关闭。为了实现这一目的,ShellExecuteEx()以及FindWindow()就被使用了。
        ShellExecute()和ShellExecuteEx()被设计可以通过系统来启动一个程序。为了可以正确执行程序,那么就要为ShellExecute()和ShellExecuteEx()指定正确的目录和程序名。

        下面是一个使用ShellExecuteEx的例子:

    SHELLEXECUTEINFO  ShExecInfo;
    ShExecInfo.cbSize = sizeof(SHELLEXECUTEINFO);
    ShExecInfo.fMask     = NULL;
    ShExecInfo.hwnd      = NULL;
    ShExecInfo.lpVerb    = NULL;
    ShExecInfo.lpFile      = _T(“C:MyProgram.exe“);        // 执行的程序名
    ShExecInfo.lpParameters = NULL;
    ShExecInfo.lpDirectory     = NULL;
    ShExecInfo.nShow           = SW_MAXIMIZE;                // 全屏显示这个程序
    ShExecInfo.hInstApp = NULL;

    ShellExecuteEx(&ShExecInfo);

        如果ShellExecuteEx()没有执行正确,GetLastError 会帮助你找到问题所在。如果ShellExecuteEx执行正确,那么这个函数会返回TRUE.

        要关闭一个程序,我们可以通过FindWindow()找到这个窗口,然后向窗口发送关闭消息,就可以了。问题就在于如何找到正确的窗口。

    HWND FindWindow(

      LPCTSTR lpClassName,  // class name

      LPCTSTR lpWindowName  // window name

    );

    FindWindow的两个参数可以帮助你定位一个窗口。如果你确实知道一个窗口的窗口名称,那么可以这样用。

    HWND hWnd = ::FindWindow(NULL, _T(“NotePad”));

    if (NULL != hWnd) {

        ::SendMessage(hWnd, WM_CLOSE, 0, 0);

    }

        如果窗口的标题是可变的,那么就要利用窗口的类名。类名可以通过使用Spy++得到。如果这个窗口是自己编写的,就要注册一个好记的窗口类名,在创建窗口之前,注册这个窗口。

    BOOL CMyWnd::Create(DWORD dwStyle, CRect& rect, CWnd* pParent, UINT nID)
    {
        WNDCLASS wndcls;
        HINSTANCE hinst = AfxGetInstanceHandle();
        LPCTSTR lpszClassName = _T(“MyWindow“);
        if(!(::GetClassInfo(hinst, lpszClassName,&wndcls)))
        {
            //not yet,so register it
            wndcls.style         =  CS_DBLCLKS|CS_HREDRAW|CS_VREDRAW; [Page]
            wndcls.lpfnWndProc   =  ::DefWindowProc;
            wndcls.cbClsExtra    =  wndcls.cbWndExtra = 0;
            wndcls.hInstance     =  hinst;
            wndcls.hIcon         =  NULL;
            wndcls.hCursor       =  NULL;
            wndcls.lpszMenuName  =  NULL;
            wndcls.hbrBackground =  (HBRUSH)(COLOR_3DFACE + 1);
            wndcls.lpszClassName =  lpszClassName;
            if(!AfxRegisterClass(&wndcls)) {
                AfxThrowResourceException();
            }
        }

        return CWnd::Create(lpszClassName, NULL, dwStyle, rect, pParentWnd,NULL));
    }

    /
    HWND hWnd = ::FindWindow(_T(“MyWindow“), NULL);
    if (NULL != hWnd) {
        ::SendMessage(hWnd, WM_CLOSE, 0, 0);
    }

    本文转自:http://c.chinaitlab.com/cc/ccjq/200810/766491_2.html

    通过了本人的测试!

    展开全文
  • 在PyCharm中如何关闭一个死循环程序

    万次阅读 2017-12-08 10:35:07
    在PyCharm中如何关闭一个死循环程序
  • 一个正执行的程序如何启动另一新程序关闭现执行程序
  • ShellExecute()和ShellExecuteEx()被设计可以通过系统来启动一个程序。为了可以正确执行程序,那么就要为ShellExecute()和ShellExecuteEx()指定正确的目录和程序名。下面是一个使用ShellExecuteEx的例子:...
  • 查看: ps -ef | grep 程序关闭:kill -15 进程号(查看时会显示出对应的进程号,15不行换9-强制关闭
  • 在MFC程序里打开和关闭一个程序

    千次阅读 2010-01-20 17:04:00
    首先是打开一个程序 ShellExecute(this->m_hWnd,"open","C://Temp//ABC.exe",NULL,NULL,SW_HIDE);   在是关闭这个程序  HWND h =::FindWindow(NULL,"C://Temp//ABC.exe"); ::SendMessage(h,WM_CLOSE,0,
  • 出现了一个问题,导致程序停止正常工作。请关闭程序 cmd 输入:netsh winsock reset catalog
  • 如题,我在程序里DoModal了一个对话框,此时通过托盘关闭主窗口,程序就崩溃,而没有这个DoMal的时候关闭 主窗口确实正常的,什么原因
  • 我写了一个java程序,有main方法入口,已经打包一个jar,并已经能在unix下启动运行,但我想写个脚本文件,方便管理人员去启动和关闭我的java进程. 类似于tomcat的startup.sh,shutdown.sh ,但不能具体如何写,我查过资料,...
  • 一个PC端的应用中,经常会出现关闭主窗体,进而需要把所有打开的窗体都随着关闭,结束程序的情况,那么具体怎么实现呢? 1、在main函数中将QApplication::lastWindowClosed()信号和QApplication::quit()槽函数相...
  • if(e.... //我想在这里判断 姓名查询()关闭的话这把 this.setEnabled(false);改为 this.setEnabled(true); } 希望有人可以帮帮我,百度了好久都找不到,好像听人说可以用单例模式,可是不会
  • 在VS调试运行过程中可能会出现些许问题,随之会提示关闭程序、重新启动程序关闭程序等。可以通过以下方法进行修复: 1、通过控制面板里面的卸载程序,找到VS右键更改,随后会有提示。 2、工具 → 导入和导出设置 ...
  • 我想在程序被其他程序关闭时 或者在系统关机 程序关闭的时候 执行一个MessageBox指令 不是在人为关闭的时候 该怎么做 就以一个普通的WIN32应用程序作例子
  • 本文要实现的功能就是在windows下,实现用一个程序来打开,关闭和监视其它的exe程序,我这里的的exe程序是我自己实现的。 1.监视exe是否崩溃 首先如果一个进程不在了,它的进程ID就是0, 那么通过检测进程ID是否为0...
  • .net写了一个程序,最初是用vs2008编的,后来用vs2012在源程序上新加了一些功能,在自己电脑上运行没有问题,然后将bin目录下的Release整个文件夹拷到服务器上,然后运行程序,程序跑起来的时候会弹窗提示说:出现了...
  • //System.Environment.CurrentDirectory 可执行程序文件的程序(exe程序)运行的启动完整路径 //System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName;...用程序控制一个exe程序的启动和关闭
  • Delphi中我在Form里新建了一个Button用来关闭exe应用程序。 然后我要求点击按钮有提示问是否要删除,另外点击Form上的关闭按钮也要有一样的提示 如何做?
  • 打开这个程序我是 这样调用的: private void CmdRun(string exeStr) { if (App.Current....现在我想实现的是,点击一个页面的button 把这个叫做大头菜的exe关闭 但silverlight的页面还在,怎么实现呢?
  • Win7运行程序总提示出现一个问题,导致程序停止正常工作 请关闭程序 原来GreenBrowser下载有问题
  • 此种情景常用于用户登录界面跳转到主界面的情形,本文以此为例。 法1: step1:program.cs中main函数: static void Main() ...step4:在主窗体关闭函数Form1_FormClosing中关闭login窗体: this.login.Close();
  • WINDOWS上我在运行一个jar程序,用的bat运行的,现在我要定时关闭、定时重启这个程序 现在遇到了问题 1.我用系统自带的任务任务计划程序,不能实现,后来放弃了,改用启动另外一个jar来监控这个程序。 2,那么问题...
  • 使用shell关闭占用某一个端口的程序

    千次阅读 2013-02-26 21:22:35
    有时候我们经常要结束占用某些端口的程序。如在Linux中做socket开发的时候。 我们可以使用以下命令的:(假设我们呀关闭占用80端口的程序) ...所有可以写成一个shell脚本文件。方便使用了 #!/bin/bash
  • 1.近期,无意中浏览到
  • Codeplex即将关闭,SOD框架源码将迁移到github ,现在发布一个纪念版程序,散分: [url=https://pwmis.codeplex.com/releases/view/631546]https://pwmis.codeplex.com/releases/view/631546[/url]
  • 一个关闭显示器的小程序

    千次阅读 2006-03-28 20:46:00
    开始照着网上很多文章说的 SendMessagege(GetDesktopWindow(), WM_SYSCOMMAND, SC_MONITORPOWER, 2); 发现并不能关闭显示器,我... 后来发现了一篇Delphi的贴子,发现它调用这个函数时第一个参数(即消息发送的目标窗

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 32,476
精华内容 12,990
关键字:

关闭一个程序