C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[7209] Re:[질문]NMUDP를 폼에 사용하면 윈도우종료시 안죽네요?
경호 [ansoni19] 2400 읽음    2001-05-04 15:34
안녕하세요 경호입니다.

일단 UDP를 올려 놓았을때 윈도우 종료시 어플이 안죽는것의 이유는 잘 모르겠네요 ^^
내부적으로 세션을 계속 스켄하고 있어서 그런것인지 ...

아무튼 하시고 싶으신게 윈도우가 종료될때 어플을 먼저 죽이고 싶으신것
아닌가요...

그럼 윈도우 종료메세지를 잡아서 그때 해당 어플을 종료시켜 버리면
되겠네요 ^^

예전에 제가 윈도우 종료시 어플을 죽이려고 메세지 맵을 이용해서
한적이 있었는데 별문제는 없는것 같더군요...

음 여기다가 필요없는 프로세스까지 찾아서 죽일수도 있구요...
일단 윈도우 종료 메세지를 잡아내는 방법으로 함 해보시지요...

//---------------------------------------------------------------------------
#ifndef Unit1H
#define Unit1H
//---------------------------------------------------------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
#include <NMUDP.hpp>
//---------------------------------------------------------------------------
class TForm1 : public TForm
{
__published:    // IDE-managed Components
        TNMUDP *NMUDP1;
private:    // User declarations
        void __fastcall WMQueryEndSession(TMessage Msg);
public:        // User declarations
        __fastcall TForm1(TComponent* Owner);
BEGIN_MESSAGE_MAP
        MESSAGE_HANDLER(WM_QUERYENDSESSION,TMessage,WMQueryEndSession)
END_MESSAGE_MAP(TForm)
};
//---------------------------------------------------------------------------
extern PACKAGE TForm1 *Form1;
//---------------------------------------------------------------------------
#endif


//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop

#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::WMQueryEndSession(TMessage Msg)
{
        if(MessageDlg("정말로 윈도우를 종료할까요?", mtConfirmation, mbOKCancel, 0) == mrOk)
        {
                Msg.Result = true;
        }
        else
                Msg.Result = false;
        //위의 부분은 빼두 상관 없겠죠 메세지 테스트 하르라고 넣어 놓은것이니까요
        Close();
}

이렇게 걍 종료 시켜 버리시면 어떠신지요 ^^
그럼 즐프하세요^^

+ -

관련 글 리스트
7204 [질문]NMUDP를 폼에 사용하면 윈도우종료시 안죽네요? 조경달 2045 2001/05/04
7209     Re:[질문]NMUDP를 폼에 사용하면 윈도우종료시 안죽네요? 경호 2400 2001/05/04
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.