fix code format for read config file data.

This commit is contained in:
alves
2026-01-08 14:53:53 +08:00
parent d6533a2513
commit 40f566974c
2 changed files with 63 additions and 23 deletions

View File

@@ -78,13 +78,19 @@ namespace common
std::string versionFilePath = ""; std::string versionFilePath = "";
#ifdef _WIN32 #ifdef _WIN32
wchar_t appDataPath[MAX_PATH] = {0}; PWSTR pszPath = nullptr;
auto hr = SHGetFolderPathW(NULL, CSIDL_APPDATA, NULL, SHGFP_TYPE_CURRENT, appDataPath); char* path = new char[MAX_PATH]();
char* path = new char[MAX_PATH]; size_t pathLength = 0;
size_t pathLength; HRESULT hr = SHGetKnownFolderPath(FOLDERID_RoamingAppData, 0, nullptr, &pszPath);
wcstombs_s(&pathLength, path, MAX_PATH, appDataPath, MAX_PATH); if (SUCCEEDED(hr)) {
wcstombs_s(&pathLength, path, MAX_PATH, pszPath, MAX_PATH);
CoTaskMemFree(pszPath);
}
std::string filePath = path; std::string filePath = path;
versionFilePath = filePath + "\\" + std::string("Snapmaker_Orca\\web\\flutter_web\\version.json"); versionFilePath = filePath + "\\" + std::string("Snapmaker_Orca\\web\\flutter_web\\version.json");
delete[] path;
#elif __APPLE__ #elif __APPLE__
const char* home_env = getenv("HOME"); const char* home_env = getenv("HOME");
versionFilePath = home_env; versionFilePath = home_env;
@@ -115,13 +121,20 @@ namespace common
std::string localArea = ""; std::string localArea = "";
std::string cfgfile = ""; std::string cfgfile = "";
#ifdef _WIN32 #ifdef _WIN32
wchar_t appDataPath[MAX_PATH] = {0};
auto hr = SHGetFolderPathW(NULL, CSIDL_APPDATA, NULL, SHGFP_TYPE_CURRENT, appDataPath); PWSTR pszPath = nullptr;
char* path = new char[MAX_PATH]; char* path = new char[MAX_PATH]();
size_t pathLength; size_t pathLength = 0;
wcstombs_s(&pathLength, path, MAX_PATH, appDataPath, MAX_PATH); HRESULT hr = SHGetKnownFolderPath(FOLDERID_RoamingAppData, 0, nullptr, &pszPath);
if (SUCCEEDED(hr)) {
wcstombs_s(&pathLength, path, MAX_PATH, pszPath, MAX_PATH);
CoTaskMemFree(pszPath);
}
std::string filePath = path; std::string filePath = path;
cfgfile = filePath + "\\" + std::string("Snapmaker_Orca\\Snapmaker_Orca.conf"); cfgfile = filePath + "\\" + std::string("Snapmaker_Orca\\Snapmaker_Orca.conf");
delete[] path;
#elif __APPLE__ #elif __APPLE__
const char* home_env = getenv("HOME"); const char* home_env = getenv("HOME");
cfgfile = home_env; cfgfile = home_env;
@@ -150,13 +163,20 @@ namespace common
std::string cfgfile = ""; std::string cfgfile = "";
#ifdef _WIN32 #ifdef _WIN32
wchar_t appDataPath[MAX_PATH] = {0};
auto hr = SHGetFolderPathW(NULL, CSIDL_APPDATA, NULL, SHGFP_TYPE_CURRENT, appDataPath); PWSTR pszPath = nullptr;
char* path = new char[MAX_PATH]; char* path = new char[MAX_PATH]();
size_t pathLength; size_t pathLength = 0;
wcstombs_s(&pathLength, path, MAX_PATH, appDataPath, MAX_PATH); HRESULT hr = SHGetKnownFolderPath(FOLDERID_RoamingAppData, 0, nullptr, &pszPath);
if (SUCCEEDED(hr)) {
wcstombs_s(&pathLength, path, MAX_PATH, pszPath, MAX_PATH);
CoTaskMemFree(pszPath);
}
std::string filePath = path; std::string filePath = path;
cfgfile = filePath + "\\" + std::string("Snapmaker_Orca\\Snapmaker_Orca.conf"); cfgfile = filePath + "\\" + std::string("Snapmaker_Orca\\Snapmaker_Orca.conf");
delete[] path;
#elif __APPLE__ #elif __APPLE__
const char* home_env = getenv("HOME"); const char* home_env = getenv("HOME");
cfgfile = home_env; cfgfile = home_env;

View File

@@ -15,6 +15,9 @@
#ifdef _WIN32 #ifdef _WIN32
#include <Windows.h> #include <Windows.h>
#include <shlobj.h> #include <shlobj.h>
#include <stdlib.h>
#include <iphlpapi.h>
#pragma comment(lib, "iphlpapi.lib")
#endif #endif
#ifdef __APPLE__ #ifdef __APPLE__
@@ -174,14 +177,20 @@ void initSentryEx()
handlerDir = wstringTostring(desDir); handlerDir = wstringTostring(desDir);
wchar_t appDataPath[MAX_PATH] = {0}; PWSTR pszPath = nullptr;
auto hr = SHGetFolderPathW(NULL, CSIDL_LOCAL_APPDATA, NULL, SHGFP_TYPE_CURRENT, appDataPath); char* path = new char[MAX_PATH]();
char* path = new char[MAX_PATH]; size_t pathLength = 0;
size_t pathLength; HRESULT hr = SHGetKnownFolderPath(FOLDERID_LocalAppData, 0, nullptr, &pszPath);
wcstombs_s(&pathLength, path, MAX_PATH, appDataPath, MAX_PATH);
if (SUCCEEDED(hr)) {
wcstombs_s(&pathLength, path, MAX_PATH, pszPath, MAX_PATH);
CoTaskMemFree(pszPath);
}
std::string filePath = path; std::string filePath = path;
std::string appName = "\\" + std::string("Snapmaker_Orca\\"); std::string appName = "\\" + std::string("Snapmaker_Orca\\");
dataBaseDir = filePath + appName; dataBaseDir = filePath + appName;
delete[] path;
#endif #endif
if (!handlerDir.empty()) if (!handlerDir.empty())
@@ -276,17 +285,28 @@ void sentryReportLogEx(SENTRY_LOG_LEVEL logLevel,
sentry_value_t attr = sentry_value_new_attribute(sentry_value_new_string(pcName.c_str()), NULL); sentry_value_t attr = sentry_value_new_attribute(sentry_value_new_string(pcName.c_str()), NULL);
sentry_value_set_by_key(tags, "pc_name", attr); sentry_value_set_by_key(tags, "pc_name", attr);
} }
std::string machineID = common::getMachineId(); static std::string machineID = "";
if (machineID.empty())
machineID = common::getMachineId();
if (!machineID.empty()) { if (!machineID.empty()) {
sentry_value_t attr = sentry_value_new_attribute(sentry_value_new_string(machineID.c_str()), NULL); sentry_value_t attr = sentry_value_new_attribute(sentry_value_new_string(machineID.c_str()), NULL);
sentry_value_set_by_key(tags, "machine_id", attr); sentry_value_set_by_key(tags, "machine_id", attr);
} }
std::string currentLanguage = common::getLanguage();
static std::string currentLanguage = "";
if (currentLanguage.empty())
currentLanguage = common::getLanguage();
if (!currentLanguage.empty()) { if (!currentLanguage.empty()) {
sentry_value_t attr = sentry_value_new_attribute(sentry_value_new_string(currentLanguage.c_str()), NULL); sentry_value_t attr = sentry_value_new_attribute(sentry_value_new_string(currentLanguage.c_str()), NULL);
sentry_value_set_by_key(tags, "current_language", attr); sentry_value_set_by_key(tags, "current_language", attr);
} }
std::string localArea = common::getLocalArea();
static std::string localArea = "";
if (localArea.empty())
localArea = common::getLocalArea();
if (!localArea.empty()) if (!localArea.empty())
{ {
sentry_value_t attr = sentry_value_new_attribute(sentry_value_new_string(localArea.c_str()), NULL); sentry_value_t attr = sentry_value_new_attribute(sentry_value_new_string(localArea.c_str()), NULL);