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

Windowsの[コントロールパネル]-[プログラムの変更と削除]で現在PC内にインストールされているプログラム一覧が表示されます。この情報を1件づつ手で書くのではなく、テキストデータとして別に取り出す方法はないでしょうか?
可能であらば、新たにPC構成管理専用ソフトなどをインストールすることなくデータを保存したいです。それがダメならフリーのPC構成管理専用ソフトの情報を教えていただけないでしょうか。

●質問者: loy
●カテゴリ:コンピュータ
✍キーワード:pc Windows インストール コントロール ソフト
○ 状態 :終了
└ 回答数 : 5/6件

▽最新の回答へ

1 ● KairuaAruika
●27ポイント

http://www.vector.co.jp/magazine/softnews/020918/n0209184.html


2 ● aside
●27ポイント

これかなぁ

http://pasofaq.jp/development/originalsoft/appall.htm


3 ● arainswk
●26ポイント

こんなものも

http://www.forest.impress.co.jp/article/2005/07/06/safarp.html

インストール済みソフトのリストをCSV/HTML/RTF形式で保存する機能もあり


4 ● kaiton
●10ポイント

私も#1の方が紹介されたPCVIEWを使っていますが...


http://www.microsoft.com/japan/technet/scriptcenter/resources/wm...

を参考にして

strHost = "."
Const HKLM = &H80000002

Set fs = WScript.CreateObject("Scripting.FileSystemObject")
fs.CreateTextFile "appl.txt"
Set applf = fs.CreateTextFile("appl.txt")

Const strBaseKey = _
 "Software\Microsoft\Windows\CurrentVersion\Uninstall\"

Set objReg = GetObject("winmgmts://" & strHost & _
 "/root/default:StdRegProv")

objReg.EnumKey HKLM, strBaseKey, arrSubKeys

For Each strSubKey In arrSubKeys
 intRet = objReg.GetStringValue(HKLM, strBaseKey & strSubKey, _
 "DisplayName", strValue)
 If intRet <> 0 Then
 intRet = objReg.GetStringValue(HKLM, strBaseKey & strSubKey, _
 "QuietDisplayName", strValue)
 End If
 If (strValue <> "") and (intRet = 0) Then
 applf.Write strValue & vbcrlf
 End If
Next
applf.Close
Set applf = Nothing
Set fs = Nothing 

ファイル名appl.txtは適宜変更してください。


5 ● ardarim
●10ポイント

以下のスクリプトをxxxxx.vbsという名前(xxxxxは適当な名前を付けてください)で保存してコマンドラインから「cscript xxxxx.vbs」を実行すればプログラムの一覧を表示できます。

Const HKEY_LOCAL_MACHINE = &H80000002

Set objReg = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\default:StdRegProv")

unKeyPath = "Software\Microsoft\Windows\CurrentVersion\Uninstall"

objReg.EnumKey HKEY_LOCAL_MACHINE, unKeyPath, arrSubKeys

For Each Subkey in arrSubKeys
 objReg.GetStringValue HKEY_LOCAL_MACHINE, unKeyPath & "\" & subkey, "DisplayName", strValue
 If Not IsNull(strValue) Then 
 Wscript.Echo strValue
 End If
Next

wscript.Quit

少し改造すれば、プログラム名以外の情報なども取得できます。またファイルに保存したければそのように改造することもできます。


テキストファイルに書くだけであれば「cscript xxxxx.vbs > list.txt」とするだけでもいいですが。


URLはダミー

http://q.hatena.ne.jp/1185430954

関連質問


●質問をもっと探す●



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