ウインドウズのシステム情報はどこで聞いていますか?
例えば メモリークリナーというフリーソフトの場合OSのリソースをクリーニングする機能がありますが そのクリーニングするファイル情報(リソースを設定しているファイル)はどこで調べたのか是非おしえていただきたいと思います。(他の常駐ソフトでもよろしいです)この機能は、ウインドウズ内のプログラムがどのように動きどのファイルを参照しているか 理解していなければ出来ないことだと思っているのですが、私の周りに詳しい方がみえないので 皆様の知識を提供していただきたいです。お願いいたします。
No.1
- 回答日時:
概要としては、
静的な情報(画面の配色など、ディスクに保存される類の情報) → レジストリを調べる。
動的な情報(現在使用中のメモリ量とか、リアルタイムの変動するもの) → WindowsのAPIを使用する。
例外として、環境変数を調べればいいもの(PathやTempの値など)、Iniファイルを調べるもの(アプリごとの設定)などがある。
ってな感じですね。
まずは、「知りたい情報によって調べ方、調べる場所が異なる」ってことをご理解ください。
全ての情報に単一の方法でアクセスできるわけではないのです。
ということですので、もう少し具体的な質問でないと(たとえ知っていたとしても)回答はしづらいのです。
○やりたいこと
○知りたい情報の詳細
○使用言語、OSのバージョン
などを書いて新たに質問されると、それについて詳しい人が答えてくれると思いますよ。
有難うございます。私の表現の仕方がヘンでしたね ごめんなさい。ただ 私として知りたいことは みなさんいろんなソフトを作っていますがいろんなosのシステム情報をどのようにして仕入れて理解されているのかが知りたいのですが。このような表現のしかたでは、だめでしょうか?(例えば マイクロソフト社に直接聞くとか。)
No.2
- 回答日時:
で検索してみましょう「GlobalMemoryStatus」
http://www.mitene.or.jp/~sugisita/family/papa/vb/
で「VB サンプル, クラス」「システム情報」「メモリ情報の取得」
に、サンプルがあります。(取得のみ)
開放は。。。わかりません。
もしかして開放はAPI関数のZeroMemoryかな?
その開放の開始アドレスがわからないと開放できないですよね。。。
やったことが無いので、、、わかりません、、、
開始アドレスなどの情報は、恐らくCOBOLのディープな世界にたどり着きそうな気が・・・
推測で物を言ってます。間違っていたらごめんなさい。
No.4ベストアンサー
- 回答日時:
なるほど、何処でそのような情報を手に入れたらいいのか、ですね。
既に皆さんからも回答がありますが、私の場合は「経験に基づくカン」ですかね。
メモリ関係の情報自力で見つけ出すには、まずはWindowsAPIの呼び出し方を身に付けるべきでしょう。
市販のAPIの解説本やWindowsの構造に関する本を何冊か読んでいれば、大まかな考え方は身に付くはずです。メモリ等に関する情報のうち、幾つかは取得できるようになるでしょう。
それらの基礎知識が身に付いた段階で、WindowsAPIの一覧から、目星を付けて検索します。
で、その関数についての項目をリファレンス本やMSDNなどで調べ、うまく見つかれば、後は似たようなAPIの使い方とかも参考にしながらプログラミングする、って感じでしょうか。
市販本の中には項目ごとに分類してAPIを解説しているものもありますし、そういったものを使えばも少し早く出来ますかね。
この手の書籍は高価いです(1冊5000円で上下巻とか兵器でします)。が、投資しなくちゃ身に付かないです。
あ、ネット上の情報を漁るって手もありますね。
ある程度用語の知識が身に付いていれば、適当なキーワードで探すと、目指す情報にたどり着けるかもしれません。
APIの名称とかで当たりをつけて検索すると、結構ヒットしますね。英語のページも多いですが、ソースコードが読めれば言葉の壁は越えられます。
サンプルの数は多いに越したことは無いので、Webでの検索をうまく使いこなせば、かなり労力を節約できます。(ただし、丸写しは多くの場合NGです。)
尚、リソースのクリーニング等については、APIの知識だけでは出来ません。
CPUとメモリの関係から入って、Windowsがどのようにメモリを使っているのか、といったところにまで知識を深めてから、メモリをきれいにする為のアイディアをひねる出すわけですね。
もちろんここでもWebなどで得られる先達の知識は役に立つでしょう。
ってことで、結論。
書籍+MSDNライブラリ+Web。 です。
それに加えて、これらの膨大な情報の中から望みのものを検索する力。
更にプログラミングの技術。
これだけあれば、何とかメモリ最適化ソフトくらいは作れるんじゃないかと…
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAの配列サイズとメモリに関して
-
C言語で、メモリを解放しないで...
-
「ヒープサイズの設定」て何?
-
VB.netでUSBメモリの固有I...
-
バッチファイルでの実行EXEのメ...
-
mmap()
-
メモリマップ
-
【C言語】再帰が時間がかかる...
-
エクセルVBA 大容量CSVファイル...
-
malloc関数の使い終わった後の...
-
ファイルマッピング関数で失敗
-
メモリにアクセスしている・・・・
-
VB2005 Datagridview の仮想モ...
-
64bit C#アプリ メモリをたくさ...
-
動的確保できるメモリ容量
-
メモリが不足しています(VBA)
-
Connection、ResultSet、、Stat...
-
PIC 文字 を 数値に 変換
-
メモリ負荷試験のツール
-
Macターミナルで実行中のプログ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAの配列サイズとメモリに関して
-
C言語で、メモリを解放しないで...
-
C言語における再帰呼び出しの...
-
メモリ不足
-
「ヒープサイズの設定」て何?
-
動的メモリとexit(C言語)
-
エクセルのメモリ使用状況/Appl...
-
大容量のメモリ確保をスワップ...
-
【C言語】再帰が時間がかかる...
-
バッチファイルでの実行EXEのメ...
-
メモリのセグメント違反の解決...
-
「memcpy」と「strcpy」について
-
ExcelのVBAでメモリ解放できない
-
これて逆じゃないですか?
-
メモリを解放しないとどうなる?
-
ファイルマッピング関数で失敗
-
エクセルVBA 大容量CSVファイル...
-
メモリアロケーション異常の発...
-
エクセル キャッシュメモリー...
-
Apacheでバーチャルホストの最...
おすすめ情報