人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

パソコン固有の情報(OSのライセンス番号など)をソフトで取得する方法を探しています。何らかのWindowsの関数を呼び出して、ソフト内の変数として記憶できればベストですが、OOというファイルの中を文字列検索して、と言った方法でもけっこうです。情報の内容もOSのライセンス番号に限らず、例えばマザーボードに振られたシリアルなどがもしもソフトで分かるのなら何でも構いません。装置特定できる方法が1つでは少し心もとないので出来るだけたくさんの情報を使いたいです。使用言語はVisual Cです。よろしくお願いします。

●質問者: micchyyamada
●カテゴリ:コンピュータ 趣味・スポーツ
✍キーワード:OS Windows シリアル ソフト パソコン
○ 状態 :終了
└ 回答数 : 4/4件

▽最新の回答へ

1 ● BrainCHAOS
●23ポイント

SIWというツールを僕は利用しています。これは各種設定値(ハードウェア&ソフトウェア OSなど)を見やすく表示し、HTMLに書き出してくれます。とても便利なツールで重宝しています。是非おためしください。

http://cowscorpion.com/system/SIW.html


2 ● ToMmY
●23ポイント

MACアドレスは固有じゃなかったでしたっけ?

ipconfigの出力結果を取得して(方法はあるとおもいます)そのなかから該当部分を取得するとか、出来ると思います。

http://homepage2.nifty.com/sak/w_sak3/doc/syspc/vc_net05.htm

これもちょっとにた感じですがどうですかね、これで取得したデータをまとめてMD5化すれば大丈夫かと思いますが。


3 ● kurukuru-neko
●22ポイント

DELL、HP、IBM等のメーカ製のパソコン

だとSMBIOS,DMIが有力


CPU ID取得方法

http://www.runan.net/program/tips/sdk_19_CPUinfo1.shtml

SMBIOSよりハードウェアのシリアル番号を取得

https://www.microsoft.com/japan/technet/scriptcenter/scripts/har...

http://itpro.nikkeibp.co.jp/members/ITPro/ITBASIC/20030626/1/


DMI 情報より取得

http://aopen.jp/tech/techinside/windmi.html

http://h50221.www5.hp.com/CPO_TC/pc/doc/34602.pdf#search='DMI%20...


ハードディスクのシリアル番号

http://homepage1.nifty.com/MADIA/vb/vb_bbs/200306_03060077.html

MACアドレス

http://dobon.net/vb/bbs/log3-1/319.html

http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=25934&am...

http://homepage1.nifty.com/MADIA/vb/vb_bbs/200310_03100159.html

CPUのシリアル番号もある。


4 ● ohmix1
●22ポイント

0.コンピュータ名だけなら簡単

GetComputerName()/GetComputerNameEx()

http://www.ne.jp/asahi/yamashita/programming/tips/api_misc_faq.h...


1.レジストリからプロダクトID

インストール時のProductIDはレジストリから取得できます。


http://park21.wakwak.com/~ayacy/inasoft/rnsf7help_20050110/HLP00...


ただし、9x系とNT系OSでは場所が異なります。

HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\ProductId (Windows 9x系)

HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\ProductId (Windows NT系)

企業導入の場合同じだったりして...



2.WIMからBIOS情報/システム情報(これオススメ)

WMI(Windows Management Instrumentation)を利用すれば、殆どのシステム情報にアクセスできます。(WSHのサンプル参照)

http://wmifun.atinfinity.net/sample/


たとえばBIOSのシリアルナンバーやマザーボードの型番なども取得できます。

※シリアルナンバーの設定されていないPCがあります。

http://www.microsoft.com/japan/technet/scriptcenter/scripts/hard...


C言語からの呼び出し例

http://www.dinop.com/vc/wmi_win32_bios.html


また、95/98/NT4には標準で組み込まれてませんので注意。

http://www.microsoft.com/downloads/details.aspx?FamilyID=afe41f4...


3.NETBIOS経由、MACアドレス

MACアドレスは(通常は)唯一の番号となり、NETBIOS APIで取得できます。

http://www.dinop.com/vc/getmac_netbios.html

ただし、LANカードのない場合や複数ある場合、差し替えタイプのものなども考慮する必要があるかも?


4.仮想マシンの判別

VMWareやVertualPC上のOS判別も必要?

http://www.codeproject.com/system/VmDetect.asp


上記から使えそうなものを選んでハッシュ値にするのでよいと思います。

http://www.codeproject.com/cpp/HashingCryptoAPI.asp


以上

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ