ハードなソフトの話

アクセスカウンタ

zoom RSS PerlでWindowsの特殊フォルダパスを取得する

<<   作成日時 : 2011/11/12 13:08   >>

ブログ気持玉 0 / トラックバック 0 / コメント 0

PerlでWindowsの「ドキュメント」や「お気に入り」といった特殊フォルダのパスを取得するのはWin32:OLEを使用する。

たとえば、特殊フォルダのパスを一通り取得したいときは、つぎのようにする。

use strict;
use warnings;
use Win32::OLE;
my $wsh = new Win32::OLE 'WScript.Shell';
my @folders = qw( Favorites Fonts MyDocuments NetHood PrintHood Programs Recent SendTo StartMenu Startup Templates);
print $_,":","\n","\t",$wsh->SpecialFolders($_),"\n" for (@folders);

「new Win32:OLE」はVBScriptのCreateObjectに相当する。「SpecialFolders」は、VBScriptでおなじみの関数と同じ。「お気に入り」を取得したいときは「$wsh->SpecialFolder(‘Favorites’)」などと指定する。

他に、Win32::GetFolderPathを使用する方法があるが、CSIDLの値を調べるのが面倒。ほとんどの場合は、今回の方法で十分だろう。

 

テーマ

関連テーマ 一覧


月別リンク

ブログ気持玉

クリックして気持ちを伝えよう!
ログインしてクリックすれば、自分のブログへのリンクが付きます。
→ログインへ

トラックバック(0件)

タイトル (本文) ブログ名/日時

トラックバック用URL help


自分のブログにトラックバック記事作成(会員用) help

タイトル
本 文

コメント(0件)

内 容 ニックネーム/日時

コメントする help

ニックネーム
本 文
PerlでWindowsの特殊フォルダパスを取得する ハードなソフトの話/BIGLOBEウェブリブログ
文字サイズ:       閉じる