GetPrivateProfileString() 呼び出しは、Windows XP では正常に機能しますが、Vista で実行すると Access Denied エラーで失敗します。
呼び出しは、私が作成した Windows サービスによって生成されたスレッド内で行われています。Windows サービス自体は、ローカル マシン上のユーザー アカウントの資格情報を使用して実行されます (コードが HKCU へのアクセスを必要とするため、必要と考えられます)。
これは、UAC または仮想化と関係があると思われます。
この呼び出しを Vista で機能させる方法や、解決策を突き止めるために実行できる実験について、何か提案をお待ちしております。
ありがとう