まず、スレッドをファイバーに変換する必要があります。
これは Store アプリではできないことです。ニワトリが先か卵が先かという問題です。これは SDK のドキュメントに書かれていることですが、実際には Microsoft CRT が行うことではありません。FlsAlloc() を使用しますが、ConvertThreadToFiber/Ex() をどこでも呼び出すことはありません。CreateFiber() を呼び出さないでください。
はい、 SDK に従ってファイバーを作成しない場合、FLS は TLS と同じです。
ファイバーは、ファイバー ローカル ストレージ (FLS) を使用して、ファイバーごとに変数の一意のコピーを作成できます。ファイバーの切り替えが発生しない場合、FLS はスレッド ローカル ストレージとまったく同じように機能します。FLS 関数 (FlsAlloc、FlsFree、FlsGetValue、および FlsSetValue) は、現在のスレッドに関連付けられている FLS を操作します。スレッドがファイバーを実行しており、ファイバーが切り替えられると、FLS も切り替えられます。
CRT で使用されていることもわかります。VS2012+ vc/crt/src/Platform.cpp ソース コード ファイル、__TlsAlloc() 関数を見てください。_CRT_APP が #defined の場合、FlsAlloc にフォールバックします。これは、Store アプリで使用される VCLibs ビルド用です。
明示的に文書化されていませんが、これが問題ないという非常に強力な証拠です。