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
[62666] Re:CreateProcessA로 생성한 프로세스의 제목표시줄을 안보이게 할수 있나요?
박영목.월천 [gsbsoft] 1230 읽음    2010-10-13 17:54
요즘 또 회사 가고 싶습니다. 노는 것도 지루하군요... ㅋㅋㅋ

역시 코딩은 중독성이 있습니다. 코딩이 아니고 파헤치는 것? 인가?

그래서 몇 군데 입사원서를 넣어 보니...  연락도 안옵니다....

프로그램은 그럭저럭 하는 데.....  ㅋㅋㅋ,  부산이라  한국이라 그런가? 봅니다.

이렇게 해서 우리나라 개발자들 60까지 개발하겠습니까?   미래가 암울하군요...  ㅋㅋㅋ

현재 회사 팀장님들 나이먹은 프로그래머들 좀 뽑으세요...  당신도 곳 연락오지 않게 됩니다.
나이드신 프로그램 선배님들... 회사 가면 팀장님 시키는 대로 일만 하십시오.... 댓구하지 말고 이렇게 하면
더 좋은 데... 쫑알쫑알...  잔소리 많은 시어머니 누가 모실려고 합니까? ㅋㅋㅋ

이렇게 되면 좋아하는 프로그램 60까지 할 수 있지 않을까?   아 ~~  사장이 되어 그렇게 할 수 있겠군요... ㅋㅋㅋ

그런데 사장은 재미가 없잖아~~~~~

--------------------------------------------------------------------------------------------

이것도 재미있겠다 싶어 검색을 좀 했습니다. 검색을 하고 연구하시면 될 듯한데....

찾긴 찾았는 데... 옛날에 TASKBAR 숨기고 장난할 프로그램이 있어서... 말입니다.

XP에서 되기는 됩니다. 다른 데는 모르겠고...

개발툴은 C++Builder 6.0 인데.... 

계산기, 메모장, 이런 것 잘 됩니다.  MFC로 만들어져서 그런가?  여기까지는 모르겠고요...

C++Builder로 만든 놈은 사라지지 않네요...  대단해 C++Builder ㅋㅋㅋ

스쳐가는 생각에 C++Builder를 만들 때 안에 어딘가 무엇을 더 추가하면 되지 안을까? 생각이 떠오르는 데...

소스가 있다면 이렇게 복잡하게 숨기려고 하지 않을 실 것이고...  그리고 숨기고자 하는 프로그램이....

현재로서는  C++Builder로 만들어진 것이 아니야 한다는 것... Delphi도 안될 수 있겠네요... 혹 버전이 다르면 될지도..

더 연구하는 것은 또 피를 흘리는 고통이 따르니까?  알아서 하시고... 저는 간단한 것만....

도움이 되었으면 합니다.....  참고하세요...

계산기 프로그램 하나 띄워두고 TEST하시면 됩니다. XP에서 다른 곳에서도 해보셔도 되고... 장담은 못함...
여기에 대한 답변은 여기까지 하겠습니다. 질문을 혹 하시면 다른 고수님이 답변 부탁드립니다.
저는 초보이기 때문에 힘듭니다. 이것도 찾아서 한 것이라.... ㅋㅋㅋ   그럼

//---------------------------------------------------------------------------
#define NO_WIN32_LEAN_AND_MEAN       //소스파일 제일 위에 을 넣어주세요.

#include 
#include 
#include 
#include 
#pragma hdrstop

#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;

ITaskbarList *pTaskbar;  //이런 저도 급하게 TEST하다고 여기다가??.. 초보님들 저 따라 하지 마세요
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)
{


  //pTaskbar->HrInit(); //DeleteTab(this);  // HrInit(this);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::HideCalcClick(TObject *Sender)
{
  hwnd = ::FindWindow( "SciCalc", "계산기" );

  CoInitialize(NULL);
  //We call below function since we only need to create one object
  CoCreateInstance(CLSID_TaskbarList,0,CLSCTX_INPROC_SERVER,IID_ITaskbarList,(void**)&pTaskbar);

  HRESULT ret = pTaskbar->DeleteTab( (HWND)hwnd );

  //if( ret==S_OK ) ShowMessage( "OK" );

  ::ShowWindow( (HWND)hwnd, SW_HIDE );
}
//---------------------------------------------------------------------------
void __fastcall TForm1::ShowCalcClick(TObject *Sender)
{
  ::ShowWindow( (HWND)hwnd, SW_SHOW );
}
//---------------------------------------------------------------------------











Task

30억 님이 쓰신 글 :
: STARTUPINFO si ;
:         memset ( &si, 0, sizeof ( STARTUPINFO ) ) ;
:         si.cb = sizeof ( STARTUPINFO ) ;
:         si.dwFlags = STARTF_USESTDHANDLES ;
:         si.wShowWindow = SW_HIDE;
:
:         PROCESS_INFORMATION pi ;
:
:         flag = CreateProcessA ( NULL, comLine.c_str ( ), NULL, NULL, true, DETACHED_PROCESS, NULL, processDir.c_str ( ), &si, &pi ) ;
:
:         if  ( ! flag )
:             {
:
:             return false ;
:
:             }
:
:         HWND hWnd = NULL ;
:         TRect rc ;
:         WaitForInputIdle ( pi.hProcess, INFINITE ) ;
:
:         for ( int index = 0 ; index < 100 ; index ++ )
:             {
:
:             hWnd = FindWindow ( NULL, "XXX" ) ;
:             if ( hWnd != NULL )
:                 {
:
:                 ShowWindow ( hWnd, 0 ) ;
:                 break ;
:
:                 }
:
:             }
:
:         DWORD Ret = WaitForSingleObject ( pi.hProcess, waitMilSec ) ;
:
: 다음과 같이 프로세스를 생성하는데 윈도우 창이 안보이게는 했는데 제목표시줄도 안보이게 할수 있는지
: 궁금합니다.
:
: 고수님들의 조언 부탁드립니다.

+ -

관련 글 리스트
62658 CreateProcessA로 생성한 프로세스의 제목표시줄을 안보이게 할수 있나요? 30억 1669 2010/10/13
62666     Re:CreateProcessA로 생성한 프로세스의 제목표시줄을 안보이게 할수 있나요? 박영목.월천 1230 2010/10/13
62668         Re:Re:CreateProcessA로 생성한 프로세스의 제목표시줄을 안보이게 할수 있나요? 장성호 1639 2010/10/13
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.