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
[48882] Re:Re:[급급급]고수님들 폼이 없는 프로그램 작성시 질문
mossmin [] 1174 읽음    2007-04-10 17:44
답변감사합니다
프로젝트엔 폼을 포함 시키지 않고 싶다는
의미입니다. Hide처리 말구요
덧붙여 폼이 없을경우 trayicon도 가능한가
도 다시 한번 질문드립니다.

현덕0 님이 쓰신 글 :
: 다 지워졌네.. ㅜ.ㅜ 머 암튼
:
: 1. 폼 없는 윈도우를 사용할때 Hide로 두시고
:
: Thread는 사용하시면 될듯합니다. waitfor 부분에서 cpu 사용량이 높을 듯 싶습니다
:
: waitfor는 Terminate 될때까지 기다리는 함수입니다.
:
: 또한 Thread의 메모리 해제 하는 부분도 안보이는 군요
:
: FreeOnTerminate = true 설정해주는 센스!
:
: 2. trayIcon는 빌더 6.0에서는 컴포넌트가 있습니다. 거기의 메소드를 이용하시면 폼을 안띄울수도 있습니다.
:
: Popup메뉴 등록하는 부분도 있기 때문에 종료 메뉴를 추가 시켜 줄수 있습니다.
:
: 게시판 언딘가에 예제도 본거 같습니다. 찾아 보시면 쉽게 하실수 있을껍니다.. ^^
:
: mossmin 님이 쓰신 글 :
: : 폼이 없는 프로그램을  만들려 합니다.
: : 폼 없이 10초에 한번씩 지정한 파일을 체크해서 변경이
: : 있는 경우 로그를 남기는 처리를 하려고 합니다.
: :
: : 1.프로젝트에 폼을 포함시키지 않는다.
: : 2.트레이 아이콘을 표시 해서 종료 할 수 있게 한다..
: : 3.10초에 한번씩 체크 한다.
: :
: : 질문입니당..
: : 1.아래와 같이 할 경우 CPU를 50%이상 차지 합니다.
: :  CPU 사용량을 낮게 할 수있는 방법을 알고 싶습니다.
: :
: : 2. 트레이 아이콘을 표시 하고 종료 메뉴를 넣을 수 있는
: : 방법을 알고 싶습니다.
: :
: : WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
: : {
: :     try
: :     {
: :          Application->Initialize();
: :          TimerThread * PicThread = new TimerThread();
: :          PicThread->WaitFor();
: :          PicThread->Terminate();
: :         Application->Run();
: :     }
: :     catch (Exception &exception)
: :     {
: :          Application->ShowException(&exception);
: :     }
: :     return 0;
: : }
: :
: : class TimerThread: public TThread {
: :     enum { TIMERTHREAD_TERMINATE = WM_APP + 0x100 };
: :
: :     void TimerProc(void) { Beep(); }
: :
: :     public:
: :         TimerThread(): TThread(false) { }
: :
: :         __fastcall ~TimerThread()
: :         {
: :             PostThreadMessage(ThreadID, TIMERTHREAD_TERMINATE, 0, 0);
: :         }
: :
: :         void __fastcall Execute(void)
: :         {
: :             UINT id = SetTimer(NULL, 0, 10000, NULL);
: :             MSG msg;
: :             while (GetMessage(&msg, NULL, 0, 0)) {
: :                     switch (msg.message) {
: :                             case TIMERTHREAD_TERMINATE:
: :                                 KillTimer(NULL, id);
: :                                 return ;
: :                             case WM_TIMER:
: :                                 TimerProc();
: :                     break;
: :                 }
: :             }
: :         }

+ -

관련 글 리스트
48867 [급급급]고수님들 폼이 없는 프로그램 작성시 질문 mossmin 1257 2007/04/10
48872     Re:[급급급]고수님들 폼이 없는 프로그램 작성시 질문 현덕0 1279 2007/04/10
48882         Re:Re:[급급급]고수님들 폼이 없는 프로그램 작성시 질문 mossmin 1174 2007/04/10
48890             Re:Re:Re:[급급급]고수님들 폼이 없는 프로그램 작성시 질문 현덕0 1524 2007/04/11
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.