#pragma once #include #include #include LPCWSTR AnsiToWide(const char* ansiString) { int wideSize = MultiByteToWideChar(CP_ACP, 0, ansiString, -1, NULL, 0); LPWSTR wideString = new WCHAR[wideSize]; MultiByteToWideChar(CP_ACP, 0, ansiString, -1, wideString, wideSize); return wideString; } DWORD ExtractNumberFromPath(PWSTR path) { DWORD number = 0; WCHAR* p = path; while (*p) { if (isdigit(*p)) { number = number * 10 + (*p - '0'); } p++; } return number; } std::string gen_random(const int len) { static const char alphanum[] = "abcdefghijklmnopqrstuvwxyz"; std::string tmp_s; tmp_s.reserve(len); for (int i = 0; i < len; ++i) { tmp_s += alphanum[rand() % (sizeof(alphanum) - 1)]; } return tmp_s; }