001
03.10.2002, 21:26 Uhr
Uwe
C/C++ Master (Administrator)
|
Hallo void*, ja, jedenfalls eleganter und schlanker als meine damalige Lösung. Aber wie terminiert man den Process ohne die lästige MessageBox? Mal ein möglicher Ansatz:
C++: |
void CConsole::OnButton1() { #ifdef _DEBUG
HANDLE con; AllocConsole(); SetConsoleTitle("stdout"); con= CreateFile("CON",GENERIC_WRITE,FILE_SHARE_READ | FILE_SHARE_WRITE,NULL,0,0,0); freopen("CON", "wt", stdout); SetConsoleTextAttribute(con, FOREGROUND_GREEN); std::cout <<"cout << stdout"<< std::endl; Sleep(2000); if(HWND hWnd =::FindWindow(NULL,(_T("stdout")))){ ::SendMessage(hWnd, WM_CLOSE,0,0); ::SendMessage(hWnd, WM_DESTROY, 0, 0); ::SendMessage(hWnd, WM_NCDESTROY, 0, 0); } #endif }
|
Killed by Name schlägt bei mir auch fehl *grübel* -- "Es ist schwierig, ein Programm wirklich idiotensicher zu machen, weil Idioten so genial sind."
Bis dann... Uwe |