OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
解決
済み

ウインドウズのシステムにおけるプログラミングについて

  • すぐに回答を!
  • 質問No.214907
  • 閲覧数46
  • ありがとう数6
  • 気になる数0
  • 回答数4
  • コメント数0

お礼率 88% (23/26)

ウインドウズのシステム情報はどこで聞いていますか?
例えば メモリークリナーというフリーソフトの場合OSのリソースをクリーニングする機能がありますが そのクリーニングするファイル情報(リソースを設定しているファイル)はどこで調べたのか是非おしえていただきたいと思います。(他の常駐ソフトでもよろしいです)この機能は、ウインドウズ内のプログラムがどのように動きどのファイルを参照しているか 理解していなければ出来ないことだと思っているのですが、私の周りに詳しい方がみえないので 皆様の知識を提供していただきたいです。お願いいたします。
通報する
  • 回答数4
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.4
レベル13

ベストアンサー率 46% (643/1383)

なるほど、何処でそのような情報を手に入れたらいいのか、ですね。
既に皆さんからも回答がありますが、私の場合は「経験に基づくカン」ですかね。

メモリ関係の情報自力で見つけ出すには、まずはWindowsAPIの呼び出し方を身に付けるべきでしょう。
市販のAPIの解説本やWindowsの構造に関する本を何冊か読んでいれば、大まかな考え方は身に付くはずです。メモリ等に関する情報のうち、幾つかは取得できるようになるでしょう。

それらの基礎知識が身に付いた段階で、WindowsAPIの一覧から、目星を付けて検索します。
で、その関数についての項目をリファレンス本やMSDNなどで調べ、うまく見つかれば、後は似たようなAPIの使い方とかも参考にしながらプログラミングする、って感じでしょうか。

市販本の中には項目ごとに分類してAPIを解説しているものもありますし、そういったものを使えばも少し早く出来ますかね。

この手の書籍は高価いです(1冊5000円で上下巻とか兵器でします)。が、投資しなくちゃ身に付かないです。

あ、ネット上の情報を漁るって手もありますね。
ある程度用語の知識が身に付いていれば、適当なキーワードで探すと、目指す情報にたどり着けるかもしれません。
APIの名称とかで当たりをつけて検索すると、結構ヒットしますね。英語のページも多いですが、ソースコードが読めれば言葉の壁は越えられます。
サンプルの数は多いに越したことは無いので、Webでの検索をうまく使いこなせば、かなり労力を節約できます。(ただし、丸写しは多くの場合NGです。)


尚、リソースのクリーニング等については、APIの知識だけでは出来ません。
CPUとメモリの関係から入って、Windowsがどのようにメモリを使っているのか、といったところにまで知識を深めてから、メモリをきれいにする為のアイディアをひねる出すわけですね。
もちろんここでもWebなどで得られる先達の知識は役に立つでしょう。


ってことで、結論。
書籍+MSDNライブラリ+Web。 です。
それに加えて、これらの膨大な情報の中から望みのものを検索する力。
更にプログラミングの技術。
これだけあれば、何とかメモリ最適化ソフトくらいは作れるんじゃないかと…
お礼コメント
hirokun-3

お礼率 88% (23/26)

有難うございました。めげずに根気よくがんばります。
投稿日時 - 2002-02-24 21:32:11
-PR-
-PR-

その他の回答 (全3件)

  • 回答No.1
レベル13

ベストアンサー率 46% (643/1383)

概要としては、 静的な情報(画面の配色など、ディスクに保存される類の情報) → レジストリを調べる。 動的な情報(現在使用中のメモリ量とか、リアルタイムの変動するもの) → WindowsのAPIを使用する。 例外として、環境変数を調べればいいもの(PathやTempの値など)、Iniファイルを調べるもの(アプリごとの設定)などがある。 ってな感じですね。 まずは、「知りたい情報によ ...続きを読む
概要としては、
静的な情報(画面の配色など、ディスクに保存される類の情報) → レジストリを調べる。

動的な情報(現在使用中のメモリ量とか、リアルタイムの変動するもの) → WindowsのAPIを使用する。

例外として、環境変数を調べればいいもの(PathやTempの値など)、Iniファイルを調べるもの(アプリごとの設定)などがある。

ってな感じですね。
まずは、「知りたい情報によって調べ方、調べる場所が異なる」ってことをご理解ください。
全ての情報に単一の方法でアクセスできるわけではないのです。

ということですので、もう少し具体的な質問でないと(たとえ知っていたとしても)回答はしづらいのです。

○やりたいこと
○知りたい情報の詳細
○使用言語、OSのバージョン

などを書いて新たに質問されると、それについて詳しい人が答えてくれると思いますよ。
お礼コメント
hirokun-3

お礼率 88% (23/26)

有難うございます。私の表現の仕方がヘンでしたね ごめんなさい。ただ 私として知りたいことは みなさんいろんなソフトを作っていますがいろんなosのシステム情報をどのようにして仕入れて理解されているのかが知りたいのですが。このような表現のしかたでは、だめでしょうか?(例えば マイクロソフト社に直接聞くとか。)
投稿日時 - 2002-02-10 22:49:30


  • 回答No.2
レベル12

ベストアンサー率 65% (276/422)

http://www.microsoft.com/japan/developer/default.asp で検索してみましょう「GlobalMemoryStatus」 http://www.mitene.or.jp/~sugisita/family/papa/vb/ で「VB サンプル, クラス」「システム情報」「メモリ情報の取得」 に、サンプルがあります。(取得のみ) 開放は。。。わか ...続きを読む
http://www.microsoft.com/japan/developer/default.asp
で検索してみましょう「GlobalMemoryStatus」

http://www.mitene.or.jp/~sugisita/family/papa/vb/
で「VB サンプル, クラス」「システム情報」「メモリ情報の取得」
に、サンプルがあります。(取得のみ)

開放は。。。わかりません。

もしかして開放はAPI関数のZeroMemoryかな?

その開放の開始アドレスがわからないと開放できないですよね。。。
やったことが無いので、、、わかりません、、、

開始アドレスなどの情報は、恐らくCOBOLのディープな世界にたどり着きそうな気が・・・

推測で物を言ってます。間違っていたらごめんなさい。
お礼コメント
hirokun-3

お礼率 88% (23/26)

有難うございました。皆さんの足元にでも及ぶぐらいに勉強いたします。
投稿日時 - 2002-02-24 21:35:56
  • 回答No.3
レベル12

ベストアンサー率 40% (230/562)

MSDNライブラリのキーワードリストでGet~とかQuery~などのAPIを漁ると、それらしい関数がいっぱい出てきますよ。 ...続きを読む
MSDNライブラリのキーワードリストでGet~とかQuery~などのAPIを漁ると、それらしい関数がいっぱい出てきますよ。
お礼コメント
hirokun-3

お礼率 88% (23/26)

有難うございました。
投稿日時 - 2002-02-24 21:34:01
このQ&Aのテーマ
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ