いつもお世話になっております。
タイトルの通りなのですが、SHGetSpecialFolderLocationやSHGetPathFromIDListを使って、
マイドキュメント等の特別フォルダの取得は出来るのですが、
CSIDL_****で始まる定数にprogram filesが無いのでどうしたものかと困っております。
windowsやsystemフォルダのように別の関数で取得するのでしょうか?
使ってるDelphi付属のwindows.pasを見てもそれらしい関数が定義されてないような。。。
いつもお手数掛けますがご教授下されば幸いです。
ナニはなくとも、GREP。
CSIDL_PROGRAMS
よりも
CSIDL_COMMON_PROGRAMS
かな…
早速のレスありがとうございます。
ご指摘の件、書き忘れてました。。。申し訳ありません。
この2つは既に試したのですが、CSIDL_PROGRAMSとCSIDL_COMMON_PROGRAMSは
スタートボタンをクリックすることで展開する
C:\Documents and Settings\***\スタート メニュー\
配下のようで、確かCOMMONのほうがAll Userだったような。。
私が取得したいのは、c:\program files\フォルダの方なのです。
質問の仕方が悪くて申し訳ありません。
CSIDL_PROGRAM_FILES = $0026; { C:\Program Files }
CSIDL_PROGRAM_FILES_COMMON = $002b; { C:\Program Files\Common }
CSIDL_PROGRAM_FILESを書くとエラーが出たので、調べてみたところSHFolderに定義されておりました。。
助かりました。ありがとうございます。
解決付け忘れました。
ツイート | ![]() |