2016-12-29 5 views
0

GPUからビデオメモリを取得したい。 WMI - Win32_VideoControllerクラス、プロパティAdapterRAMを使用します。これは、バイト単位で値を返すので、私はそれがMBに変換:WMIデータの問題

int gpuRAM_MB = (gpuAdapterRAM.uintVal)/(1024)/(1024); 

私はGBに変換値を試みた場合、それは3ギガバイト(例えばAIDA64のような他のソフトウェアでそれが4GBを返す)として返す:

int gpuRAM_GB = (gpuAdapterRAM.uintVal)/(1024)/(1024)/(1024); 

マイアプリ: enter image description here

AIDA64:

enter image description here

問題をGBに変換する方法が問題ですか?前もって感謝します。

答えて

1

浮動小数点除算とceil()関数を使用します。

int gpuRAM_MB = ceil((gpuAdapterRAM.uintVal)/(1024.0)/(1024.0));

+0

それはGBでなければならないのでgpuRAM_GB = CEIL((gpuAdapterRAM.uintVal)/(1024.0)/(1024.0)/(1024.0));おかげ。 – Cobra91151

+0

私があなたの問題を解決した場合、私の答えを解決策としてマークしてください。 – pSoLT

+0

答えは既にマークされています。 – Cobra91151