MCPcopy Create free account
hub / github.com/RGAA-Software/GoDesk / QueryStatus

Method QueryStatus

src/service/service_manager.cpp:384–403  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

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) {

Callers 3

StartMethod · 0.80
CheckServiceAliveMethod · 0.80
mainFunction · 0.80

Calls

no outgoing calls

Tested by

no test coverage detected