This commit is contained in:
Nishi 2025-11-25 11:15:35 +09:00
commit 63fb35c899
Signed by: nishi
GPG key ID: 27EF69B208EB9343
3 changed files with 23 additions and 6 deletions

View file

@ -2,14 +2,16 @@
#include <MDE/Core/String.h>
#ifdef _WIN32
void MDEUsersList(void (*call)(const char* name, void* user), void* user) {
/* wow */
call("Administrator", user);
}
#include <windows.h>
#else
#include <pwd.h>
#endif
void MDEUsersList(void (*call)(const char* name, void* user), void* user) {
#ifdef _WIN32
/* wow */
call("Administrator", user);
#else
struct passwd* pwd;
setpwent();
@ -42,5 +44,18 @@ void MDEUsersList(void (*call)(const char* name, void* user), void* user) {
call(pwd->pw_name, user);
}
endpwent();
}
#endif
}
char* MDEUsersGetUsername(void) {
#ifdef _WIN32
char username[4096];
DWORD n = 4096;
GetUserName(username, &n);
return MDEStringDuplicate(username);
#else
struct passwd* pwd = getpwuid(getuid());
return MDEStringDuplicate(pwd->pw_name);
#endif
}

View file

@ -3,12 +3,12 @@
#include <MDE/MachDep.h>
#include <Mw/Milsko.h>
#ifdef __cplusplus
extern "C" {
#endif
#include <Mw/Milsko.h>
MwWidget MDEAboutDialog(MwWidget handle, const char* appname, const char* version, MwLLPixmap pixmap);
#ifdef __cplusplus

View file

@ -9,6 +9,8 @@ extern "C" {
void MDEUsersList(void (*call)(const char* name, void* user), void* user);
char* MDEUsersGetUsername(void);
#ifdef __cplusplus
}
#endif