[C++] 193 Windows11でユーザ名を取得

[Windows11, g++ 9.2.0, FLTK 1.3.8, NO IDE]

MacOSのC++ではgetenv関数でホームディレクトリを取得していましたが、Windows11ではうまく動作しなかったので他の方法を考えました。

WindowsAPIはVisual C++をVisual Studioで使うという環境でのみ使用できるものと勝手に思いこんでいましたが、MinGWのC++でもいけるんですね。

そうであれば非IDE環境でWindowsAPIを使ったGUIプログラミングを近いうちに手掛けてみたいです。

Visual Studioがあまり好きでないだけで、WindowsAPIには大いに興味があります。

#include <windows.h>
string appdir;

// アプリ用ディレクトリ名の作成
char username[256];
DWORD dwSize = sizeof(username)/sizeof(username[0]);
GetUserName(username, &dwSize);
string prefix = "C:\\Users\\";
string suffix = "\\ColorSampleJP";
appdir = prefix + string(username) + suffix;