if (pos != std::wstring::npos)\r
return argstr.substr(pos + std::size("--installerpath=") - 1);\r
}\r
- return "../../../Build/WinMerge-2.16.8-x64-PerUser-Setup.exe";\r
+ std::regex re{ "WinMerge-.*-x64-PerUser-Setup.exe" };\r
+ std::filesystem::path path;\r
+ std::filesystem::file_time_type time;\r
+ for (auto& ent : std::filesystem::directory_iterator("../../../Build"))\r
+ {\r
+ if (std::regex_match(ent.path().filename().string(), re))\r
+ {\r
+ if (time < ent.last_write_time())\r
+ {\r
+ time = ent.last_write_time();\r
+ path = ent.path();\r
+ }\r
+ }\r
+ }\r
+ return path;\r
}\r
\r
HWND execWinMerge(const std::string& args)\r