DOBON.NET DOBON.NETプログラミング掲示板過去ログ

メモリ量の割当て方法

環境/言語:[C#]
分類:[.NET]

 現在、C#で小型携帯端末機(ハンディターミナル)の開発を行っています。

 今、プログラム中でメモリの割当てを行おうとしているのですがうまくいきません。具体的には、「SetSystemMemoryDivision」の使い方がわかりません。
メモリの量を判断する「GetSystemMemoryDivision」については、

[DllImport("CoreDll.dll")]
  public static extern int GetSystemMemoryDivision
  (
   ref uint lpdwStorePages,
   ref uint lpdwRamPages,
   ref uint lpdwPageSize
  );

で取得できたのですが、セットのほうが行えません。

どなたか使用方法をご存知の方、ご教授よろしくお願いします。
こんにちは、じゃんぬねっと です。

■No9660に返信(たろうさんの記事)
> 具体的には、「SetSystemMemoryDivision」の使い方がわかりません。
> メモリの量を判断する「GetSystemMemoryDivision」については、
>
> [DllImport("CoreDll.dll")]
>   public static extern int GetSystemMemoryDivision
>   (
>    ref uint lpdwStorePages,
>    ref uint lpdwRamPages,
>    ref uint lpdwPageSize
>   );
>
> で取得できたのですが、セットのほうが行えません。

では、SetSystemMemoryDivision の方のソースこそを出して頂かないと。(^^)

> では、SetSystemMemoryDivision の方のソースこそを出して頂かないと。(^^)

初めまして、じゃんぬねっとさん。

質問のしかたが不足していてすみません。

今調べているのは、「SetSystemMemoryDivision」の定義そのものです。
『CoreDll.dll』中の「SetSystemMemoryDivision」が、何を引
数に持ち、何を返すのかがわかりません。

ちなみにvbのソースでは、
Public Declare Function SetSystemMemoryDivision Lib "Coredll" _
(ByVal dwStorePages As Long) As Long
で取得できていましたが、同様の引数ではエラーが発生します。

「GetSystemMemoryDivision」の

> [DllImport("CoreDll.dll")]
>   public static extern int GetSystemMemoryDivision
>   (
>    ref uint lpdwStorePages,
>    ref uint lpdwRamPages,
>    ref uint lpdwPageSize
>   );

にあたるものを「SetSystemMemoryDivision」で教えていただければ
幸いです。よろしくお願いします。
こんにちは、じゃんぬねっと です。

■No9662に返信(たろうさんの記事)
> 今調べているのは、「SetSystemMemoryDivision」の定義そのものです。
> 『CoreDll.dll』中の「SetSystemMemoryDivision」が、何を引
> 数に持ち、何を返すのかがわかりません。

まずは調べましょう。
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wcemain4/html/cmrefSetSystemMemoryDivision.asp

DWORD だから、uint かな。
> まずは調べましょう。
> http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wcemain4/html/cmrefSetSystemMemoryDivision.asp
>
> DWORD だから、uint かな。

お返事ありがとうございます。

勉強不足ですみません。
現在プログラムを触ることができない状態のため、
できたらすぐに試してみます。

ありがとうございました。
■No9666に返信(たろうさんの記事)
>>まずは調べましょう。
>>http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wcemain4/html/cmrefSetSystemMemoryDivision.asp
>>
>>DWORD だから、uint かな。
>

uint で試したところ、うまく設定することができました。

じゃんぬねっと さんどうもありがとうございました。
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板