ログインしている人ごとにデスクトップのフルパス名を取得したいです。
例えばAさんがログインしているとすれば
「C:\Documents and Settings\A\デスクトップ」
となりますし、Bさんがログインしているとすれば
「C:\Documents and Settings\B\デスクトップ」
を取得したいのです。
プログラムはVBAでコーディングしていますのでよろしくお願いします。
ちなみにWindowsXP+Access2003+VBAです。
Dim oShell As Object
Dim strDesktopDir As String
Set oShell = CreateObject("WScript.Shell")
strDesktopDir = oShell.SpecialFolders("DeskTop")
Debug.Print strDesktopDir
とか。
もげさん、早速のご回答ありがとうございました。
試してみましたところ正しく取得できました。
大変助かりました。
そこでもうひとつ甘えさせていただきたいのですが
同じ処理をWin32APIを使用してはできないでしょうか?
ご存知でしたらよろしくお願いします。
> 同じ処理をWin32APIを使用してはできないでしょうか?
SHGetSpecialFolderLocation
SHGetPathFromIDList
あたりのAPIを調べてみてください。
http://www.bcap.co.jp/hanafusa/VBHLP/specialapi.htm
をどうぞ。
もげさん、Blueさん、ご回答ありがとうございました。
これで午後からの仕事が進められます。
大変助かりました。また何かありましたらよろしくお願いします。
ツイート | ![]() |