#ifdef _WIN32 #include #else #include #include #include #endif #include class ProcessLauncher { public: // Запуск программы в фоновом режиме static int launch(const std::string& command); // Ожидание завершения процесса и получение его кода возврата static int waitForProcess(int pid); // проверка запущен ли процесс static int isProcessActive(int pid); private: #ifdef _WIN32 // Для Windows static int launchWindows(const std::string& command); static int waitForProcessWindows(HANDLE processHandle); static int isProcessActiveWindows(HANDLE processHandle); #else // Для UNIX-подобных систем static int launchUnix(const std::string& command); static int waitForProcessUnix(pid_t pid); static int isProcessActiveUnix(pid_t pid); #endif };