| 382 | |
| 383 | |
| 384 | ServiceStatus ServiceManager::QueryStatus() { |
| 385 | auto lines = ProcessUtil::StartProcessAndOutput("sc", {"query", this->srv_name_}); |
| 386 | ServiceStatus status = ServiceStatus::kUnknownStatus; |
| 387 | for (auto &l: lines) { |
| 388 | auto line = QString::fromStdString(l); |
| 389 | |
| 390 | std::cout << "line: " << l << std::endl; |
| 391 | if (!line.contains("STATE")) { |
| 392 | continue; |
| 393 | } |
| 394 | if (line.contains("STOPPED")) { |
| 395 | status = ServiceStatus::kStopped; |
| 396 | } else if (line.contains("PENDING")) { |
| 397 | status = ServiceStatus::kPending; |
| 398 | } else if (line.contains("RUNNING")) { |
| 399 | status = ServiceStatus::kRunning; |
| 400 | } |
| 401 | } |
| 402 | return status; |
| 403 | } |
| 404 | |
| 405 | std::string ServiceManager::StatusAsString(ServiceStatus status) { |
| 406 | if (status == ServiceStatus::kPending) { |
no outgoing calls
no test coverage detected