VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
installationFinder.h
Go to the documentation of this file.
1 /*******************************************************************************
2  * Copyright (c) 2025 MAK Technologies, Inc.
3  * All rights reserved.
4  ******************************************************************************/
5 
6 #ifdef _WIN32
7 
8 #pragma once
9 
10 #include <windows.h>
11 #include <string>
12 #include <vector>
13 #include <algorithm>
14 #include <iostream>
15 #include <sstream>
17 
19 class DT_DLL_vrfLauncherQt DtInstallationFinder
20 {
21 public:
22  struct DtSoftwareInfo
23  {
24  std::string version;
25  std::string installPath;
26 
28  bool isVersionHigher(const std::string& other) const
29  {
30  return compareVersions(version, other) > 0;
31  }
32  };
33 
34 public:
35 
37  static DtSoftwareInfo findHighestMakVersionByName(const std::string& softwareNamePattern);
38 
39 private:
40  static int compareVersions(const std::string& version1, const std::string& version2);
41 
42  static std::vector<int> parseVersion(const std::string& version);
43 
44  static std::string readRegistryString(HKEY hKey, const std::string& subKey, const std::string& valueName);
45 
46  static std::vector<std::string> enumerateSubKeys(HKEY hKey, const std::string& subKey);
47 
49  static std::string extractVersionFromName(const std::string& appName);
50 };
51 
52 #endif
#define DT_DLL_vrfLauncherQt
This file is used to determine how to build Disable inconsistent dll linkage warning Visual Studio 6...
Definition: vrfLauncherQtDefines.h:34

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)