Автор статьи: Беседин Игорь
Как добавить файл в папку "Документы" или очистить ее?
Для этого используется недокументированная функция SHAddToRecentDocs. Объявляется она так:
Private Declare Sub SHAddToRecentDocs Lib "shell32.dll" (ByVal uFlags As Long, ByVal pv As String)
Для операций с папкой "Документы", uFlags должен быть равен 2, а pv - это имя файла, или vbNullString. В первом случае файла добавится, а во втором папка "Документы" будет очищена, т.е. код:
SHAddToRecentDocs 2, FileName
добавит документ, а
SHAddToRecentDocs 2, vbNullString
очистит папку.
Обратите внимание, что объявляется подпрограмма, а не функция, т.е. никаких значений возвращаться не будет, а если продекларировать SHAddToRecentDocs как функцию, то значения будут возвращаться =1, не зависимо от того, произошло ли добавление в папку или нет. Также обратите внимание на то, что не всякий файл можно добавить папку "Документы".
Пример к данной статье можно скачать по ссылке: http://www.igoryksoft.narod.ru/vb/sources/addrec.zip
При любом воспроизведении этой статьи (и других статей с этого сайта) ставьте ссылку на сайт www.igoryksoft.narod.ru