mirror of
https://github.com/klezVirus/DriverJack
synced 2026-06-06 16:04:32 +00:00
39 lines
889 B
C++
39 lines
889 B
C++
#include "stringutils.h"
|
|
|
|
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;
|
|
}
|
|
|
|
bool isValidFileName(const std::string& fileName) {
|
|
return !fileName.empty() && fileName.find("/") == std::string::npos && fileName.find("\\") == std::string::npos;
|
|
}
|