Herkese merhaba,
Bir Timer'a bağlı CreateProcess komutu sürekli çalışıyor. CreateProcess her çalıştığında GUI 2 3 saniye donuyor. Bunu nasıl çözebilirim? Bunun yerine QThread kullanılabilir mi?

Örneğin;
STARTUPINFO si;    
si.dwFlags = STARTF_USESHOWWINDOW;    
PROCESS_INFORMATION pi;    
HANDLE hProcess;    
HANDLE hThread;    
DWORD dwProcessId = 0;    
DWORD dwThreadId = 0;  
ZeroMemory(&si, sizeof(si));    
ZeroMemory(&pi, sizeof(pi));    
si.cb = sizeof(si);

LPTSTR cmdPath = _T("C:\\Windows\\System32\\cmd.exe");  
LPTSTR cmdArgs = _T("/c ping www.google.com > result.txt");    

BOOL bCreateProcess = CreateProcess(        
    cmdPath,        
    cmdArgs,        
    NULL,        
    NULL,        
   FALSE,      
   CREATE_NO_WINDOW,        
   NULL,        
   NULL,        
   &si,        
   &pi);

WaitForSingleObject(pi.hProcess, INFINITE);    
CloseHandle(pi.hProcess);    
CloseHandle(pi.hThread);
Buradaki ping komutu arka planda çalışıyor. İşlem bitene kadar GUI donuyor.