| 838 | } |
| 839 | |
| 840 | QFileInfo getCmdPath() |
| 841 | { |
| 842 | const auto p = env::get("COMSPEC"); |
| 843 | if (!p.isEmpty()) { |
| 844 | return QFileInfo(p); |
| 845 | } |
| 846 | |
| 847 | QString systemDirectory; |
| 848 | |
| 849 | const std::size_t buffer_size = 1000; |
| 850 | wchar_t buffer[buffer_size + 1] = {}; |
| 851 | |
| 852 | const auto length = ::GetSystemDirectoryW(buffer, buffer_size); |
| 853 | if (length != 0) { |
| 854 | systemDirectory = QString::fromWCharArray(buffer, length); |
| 855 | |
| 856 | if (!systemDirectory.endsWith("\\")) { |
| 857 | systemDirectory += "\\"; |
| 858 | } |
| 859 | } else { |
| 860 | systemDirectory = "C:\\Windows\\System32\\"; |
| 861 | } |
| 862 | |
| 863 | return QFileInfo(systemDirectory + "cmd.exe"); |
| 864 | } |
| 865 | |
| 866 | FileExecutionTypes getFileExecutionType(const QFileInfo& target) |
| 867 | { |
no test coverage detected