DXライブラリのバージョンを文字列で取得する
(更新: )
DXライブラリのバージョンは「3.22a」とかそんな感じの命名規則なんだけど、このバージョンを文字列で取得することが何故かできない。
代わりに、16 進数をそのまま (?) 10 進数に直した値が_GetSystemInfo
で取得できるので、これを使って文字列のバージョンを生成する。
public static string DxLib
{
get
{
DX._GetSystemInfo(out var dxlibVerDec, out _, out _);
return dxlibVerDec.ToString("x").Insert(1, ".");
}
}
これは C# だけど、C 言語でも書き直せると思う。_GetSystemInfo
の第 1 引数でDXライブラリのバージョンが取得できるので、それを 16 進数と見なして文字列に変換する。1 文字目と 2 文字目の間にドット (.) を挿入して、小数点をつけてあげる。「12842」→「”322a”」→「”3.22a”」という結果になった。
多分問題ない……はずです。