0

CallNtPowerInformation()入力を介して現在のプロセッサ速度/スロットリングを取得しようとしていProcessorInformationます:

SYSTEM_INFO systemInfo;
GetSystemInfo( &systemInfo );

numProcessors = (unsigned char)systemInfo.dwNumberOfProcessors;
powerInformations = new PROCESSOR_POWER_INFORMATION[numProcessors];
long status = CallNtPowerInformation( ProcessorInformation, NULL, 0, powerInformations, numProcessors*sizeof(PROCESSOR_POWER_INFORMATION) );

残念ながら、statusは常に と等しくなりSTATUS_ACCESS_DENIEDます。これがなぜなのかについてのドキュメントが見つかりません。現在のプロセッサ情報を取得できない理由を誰か教えてもらえますか?

これは Windows 8、Surface Pro (デスクトップ API を使用) で実行されており、権限を昇格させて VS2012 を起動しようとしましたが、効果がありませんでした。

4

1 に答える 1

0

このコードをコンソールアプリケーションで実行すると機能しますが、Metroアプリケーション内で実行すると失敗します。Windowsストアアプリ内でこのようなコードを実行する方法について、新しい質問をします。

于 2013-02-18T19:20:13.917 に答える