Curl Global Community
「マイドキュメント」や「デスクトップ」の取得 - Printable Version

+- Curl Global Community (https://communities.curl.com)
+-- Forum: Discussions (https://communities.curl.com/forumdisplay.php?fid=1)
+--- Forum: General Curl questions (https://communities.curl.com/forumdisplay.php?fid=2)
+--- Thread: 「マイドキュメント」や「デスクトップ」の取得 (/showthread.php?tid=1076)



「マイドキュメント」や「デスクトップ」の取得 - umemura - 04-23-2014

「マイドキュメント」のフォルダを取得するには、どうする方法が良いのでしょうか。
通常は、Windows7 であれば、 C:\Users\ユーザ名\Documents になると思うので、
{get-from-host-environment "USERPROFILE"} で取得したユーザフォルダをベースにすればいいかな、と思ったのですが、
下記の方法で、マイドキュメントのフォルダを変更することもできるようなので、
ユーザフォルダから決め打ちするわけにもいきません。

■マイドキュメントフォルダの変更
http://www.atmarkit.co.jp/fwin2k/win2ktips/932mydocmove/mydocmove.html

VBA であれば、WSH を使って取得できるようなのですが・・・。


RE: 「マイドキュメント」や「デスクトップ」の取得 - umemura - 04-23-2014

Shell もActiveXObject として利用できるんですね。
下記のようなコードで、SpecialFolders から取得できました。

Code:
{import * from CURL.GRAPHICS.ACTIVEX}
{def tmp-xobj = {ActiveXObject ProgId = "WScript.Shell"}}
{def sf =  tmp-xobj.SpecialFolders asa ActiveXObject}
{Table columns = 2,
    "デスクトップ", {sf.Item "Desktop"},
    "マイドキュメント", {sf.Item "Mydocuments"}
}