|
빌더에서 새로운 어플레케이션을 만듭니다.
그러면 새 프로젝트가 생기고 폼이 하나 생기자나요,,
그 폼을 없애버립니다.(메뉴의 프로젝트->remove from project)
그러고 F9 하면 폼이 없으니까 어플리케이션이 그냥 시작되자 마자 끝나버립니다....
메인폼이 없으므로 그냥 종료되는거지요.그러므로...
메뉴의 프로젝트->view source 하면
이롷게 되어 있을겁니다.
여기가 제일 처음 실행되는 부분이거든요,,,
//---------------------------------------------------------------------------
WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
try
{
Application->Initialize();
Application->Run();
}
catch (Exception &exception)
{
Application->ShowException(&exception);
}
catch (...)
{
try
{
throw Exception("");
}
catch (Exception &exception)
{
Application->ShowException(&exception);
}
}
return 0;
}
//---------------------------------------------------------------------------
여기에다 님이 만든 소스를 넣으면 그거만 실행되고 끝나버리겟지요,,
//---------------------------------------------------------------------------
WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
HWND hWnd = FindWindow(NULL, "제목 없음 - 메모장");
if(hWnd)
{
DWORD ProcessId;
GetWindowThreadProcessId(hWnd, &ProcessId); // hWnd로 프로세스 ID를 얻음..
HANDLE hProcess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, ProcessId);
if(hProcess)
{
TerminateProcess(hProcess,0);//또는 ExitProcess 사용해서 죽임..
}
}
return 0;
}
//---------------------------------------------------------------------------
그럼,,,,
linuxman 님이 쓰신 글 :
: Form도 없으면서 (안보이면서 ) , 특정 Applicaton을 무조껀 확 죽어버리고, Application을 죽인후에는...
: 자신도 종료하는 kill 같은 Program을 간단하게 만들고 싶은데....
: 특정 Applicaiton은 아래처럼 죽이면 되는데...
:
: 폼은 화면에 안보이게 하는 속성으로 하면 될것같은데... 나 자신도 종료하는것은
: 어떤 식으로 구현하나요?
:
:
: === 메모장을 죽여버리는 example ==
:
: HWND hWnd = FindWindow(NULL, "제목 없음 - 메모장");
: if(hWnd)
: {
: DWORD ProcessId;
: GetWindowThreadProcessId(hWnd, &ProcessId); // hWnd로 프로세스 ID를 얻음..
: HANDLE hProcess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, ProcessId);
: if(hProcess)
: {
: TerminateProcess(hProcess,0);//또는 ExitProcess 사용해서 죽임..
: }
: }
: 수고하세요..
|