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 Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
Enum gf
CSIDL_BITBUCKET = &HA
End Enum
Function GetFolder(gfType As gf) As String
Dim r As Long
Dim path As String
Dim IDL As ITEMIDLIST
r = SHGetSpecialFolderLocation(100, gfType, IDL)
If r = NOERROR Then
path = Space$(512)
r = SHGetPathFromIDList(ByVal IDL.mkid.cb, ByVal path)
GetFolder = Left$(path, InStr(path, Chr$(0)) - 1)
Exit Function
End If
GetFolder = ""
End Function
Sub Main()
ShellExecute Me.hwnd, vbNullString, getfolder(CSIDL_BITBUCKET), vbNullString, "getfolder(CSIDL_BITBUCKET)", SW_SHOWNORMAL
End sub
alibek писал(а):tyomitch, корзину очищаю сразу же, поэтому насчет имен файлов утверждать не буду
А первая поправка правильная, надо было сказать "в системах NT на дисках с файловой системой NTFS". Каюсь, посыпаю голову пеплом.
Надо?alibek писал(а):И откуда ты 3.51 откопал?
Я такую последний раз лет 10 назад видел
Tarik, ты гонишь - там четыре 360Кб дискеты, т.е. ровнёхонько одна 1440Кб.
Tarik, не в типах дело - я их нашёл и объявил
Просто константа CSIDL_BITBUCKET с точки зрения Винды не соответствует никакому пути, потому что хранится на всех дисках сразу.
Соответственно, SHGetPathFromIDList для неё всегда обломится. Этот код не мог работать у тебя. Шли рабочий
Ух-ха-ха-ха!!!tyomitch писал(а):Tarik, ты гонишь - там четыре 360Кб дискеты, т.е. ровнёхонько одна 1440Кб.
Скачать тут: http://home.arcor.de/jokebilder/down.html , под заголовком "Windows 1.01 auf Floppy"
A.A.Z. писал(а):Ух-ха-ха-ха!!!tyomitch писал(а):Tarik, ты гонишь - там четыре 360Кб дискеты, т.е. ровнёхонько одна 1440Кб.
Скачать тут: http://home.arcor.de/jokebilder/down.html , под заголовком "Windows 1.01 auf Floppy"
Сейчас этот форум просматривают: AhrefsBot и гости: 34