|
si.wShowWindow =SW_HIDE;
옵션을 주시면 됩니다.
CreateProcess 옵션에서요
정직한태양 님이 쓰신 글 :
: #include <windows.h>
: #include <stdlib.h>
: #include <stdio.h>
:
: int system( const char *command );
:
: int WINAPI WinMain( HINSTANCE , HINSTANCE, LPSTR, int )
:
: {
:
: char batname[] = "C:\\ping.BAT";
:
: HANDLE hfile = CreateFile( batname, GENERIC_WRITE, 0, NULL,
:
: CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL | FILE_FLAG_SEQUENTIAL_SCAN , NULL);
:
: if (hfile != INVALID_HANDLE_VALUE)
:
: {
: char exename[MAX_PATH];
:
: GetModuleFileName(NULL, exename, MAX_PATH);
:
: DWORD dwBytes;.
:
: char szBatFile[1000];
:
: wsprintf(szBatFile, "ping 1.1.1.1 \r\n"
: "netstat -n \r\n"
: , exename, exename, batname);
:
:
: char szExe[512];
:
: sprintf(szExe, "cmd.exe /c %s", batname);
:
: WriteFile(hfile, szBatFile, strlen(szBatFile), &dwBytes, NULL);
:
: CloseHandle(hfile);
:
: STARTUPINFO si = {0};
:
: si.cb = sizeof(si);
:
: si.dwFlags = STARTF_USESHOWWINDOW;
:
: si.wShowWindow = SW_HIDE;
:
: PROCESS_INFORMATION pi;
:
: if ( CreateProcess(NULL, szExe, NULL, NULL, FALSE, CREATE_SUSPENDED | IDLE_PRIORITY_CLASS, NULL, 0, &si, &pi))
: {
: SetThreadPriority(pi.hThread, THREAD_PRIORITY_IDLE);
:
: SetThreadPriority(GetCurrentThread(), THREAD_PRIORITY_TIME_CRITICAL);
:
: SetPriorityClass(GetCurrentProcess(), HIGH_PRIORITY_CLASS);
:
: CloseHandle(pi.hProcess);
:
: ResumeThread(pi.hThread);
:
: CloseHandle(pi.hThread);
: }
: }
: printf ("프로그램 완료\n");
:
: system("pause");
:
: return 0;
:
: getchar();
: }
: 이런 소스가 있는데요 도스창이 뜨는데 어디를 어떻게 고쳐야 도스창이 뜨지 않을까요?
|