منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
لمعرفة عنوان المجلد MyDocuments - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : الأقسام التعليمية - المنتدى القديم (http://vb4arb.com/vb/forumdisplay.php?fid=90)
+--- قسم : مكتبة أكواد المنتدى (http://vb4arb.com/vb/forumdisplay.php?fid=111)
+---- قسم : مكتبة أكواد الفيجوال بيسك 6 (http://vb4arb.com/vb/forumdisplay.php?fid=116)
+---- الموضوع : لمعرفة عنوان المجلد MyDocuments (/showthread.php?tid=6029)



لمعرفة عنوان المجلد MyDocuments - RaggiTech - 17-10-12

كاتب الموضوع : Boutemine Oualid

السلام عليكم و رحمة الله و بركاته



كود :
Option Explicit
'
Private Const CSIDL_PERSONAL As Long = &H5
'
Private Type SHITEMID
cb As Long
abID As Byte
End Type
'
Private Type ITEMIDLIST
mkid As SHITEMID
End Type
'
Private Declare Function SHGetSpecialFolderLocation Lib "shell32.dll" _
(ByVal hwndOwner As Long, ByVal nFolder As Long, _
pidl As ITEMIDLIST) As Long
Private Declare Function SHGetPathFromIDList Lib "shell32.dll" Alias "SHGetPathFromIDListA" _
(ByVal pidl As Long, ByVal pszPath As String) As Long
'
'
Private Sub Form_Load()
MsgBox GetMyDocumentsFolder
Unload Me
End Sub
'
'
Private Function GetMyDocumentsFolder() As String
Dim lRet As Long, IDL As ITEMIDLIST, sPath As String
lRet = SHGetSpecialFolderLocation(100&, CSIDL_PERSONAL, IDL)
If lRet = 0 Then
sPath = String$(512, Chr$(0))
lRet = SHGetPathFromIDList(ByVal IDL.mkid.cb, ByVal sPath)
GetMyDocumentsFolder = Left$(sPath, InStr(sPath, Chr$(0)) - 1)
Else
GetMyDocumentsFolder = vbNullString
End If
End Function