Introduction
Microsoft Learn (旧 MSDN) における、各 API の説明でどの Windows のビルドバージョンで使えるのかの記載がない件。
当たり前の話なのだが、UWP はこのあたりの条件が重要で、 WindowsTargetPlatformVersion
や WindowsTargetPlatformMinVersion
で制御する必要がある。
実際、どの API が使えるかはビルドしてみてわかる、というパターン。
この事象で発狂したのは onnxruntime を 10.0.18362.0 向けにビルドしようとして、 SetThreadGroupAffinity
の定義がない、とコンパイラに怒られたからである。
What happened?
掲題のターゲットバージョンで下記の 2 つのヘッダーファイルを比較してみる。
- C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\um\processtopologyapi.h
- C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\processtopologyapi.h
1 | - #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SYSTEM) |
このような感じで、UWP 対応が追加されている。
お願いだから、API の説明に使えるバージョンの詳細情報を追加して欲しい。