Visual Basic: Статьи


Автор статьи: Беседин Игорь

Как программно очистить "корзину"?

    Чтобы очистить корзину, объявите API-функцию:

Private Declare Function SHEmptyRecycleBinW Lib "shell32.dll" (ByVal hwnd As Long, ByVal Path As String, ByVal Flags As Long) As Long

    где hwnd - дескриптор окна (используйте 0 или дескриптор своего окна);

    Path - диск на котором будет очищаться корзина;

    Flags -флаги.

    А чтобы ее вызвать вставьте такой код:

    Если Вам нужно обычная очистка "корзины", т.е. с окном подтверждения очистки, то вставьте

SHEmptyRecycleBinW 0, "", 0

    Если не нужно показывать окно подтверждения, то вставьте

SHEmptyRecycleBinW 0, "", 1

    Если Вам не нужно чтобы пользователь видел процесс удаления файлов из "корзины", вставьте

SHEmptyRecycleBinW 0, "", 2

    Чтобы не было звука "Очистка корзины", вставьте такой код:

SHEmptyRecycleBinW 0, "", 4

    "А что делать, - спросите Вы, - чтобы не было звука и окна подтверждения, а пользователь видел процесс очистки корзины и т.п.?"

    Здесь все очень просто: нужно сложить флаги, отвечающие за какую-то функцию. Например, если использовать флаг 3 (1+2), будет слышен только звук очистки корзины, окон подтверждения очистки и процесса очистки не будет.

При любом воспроизведении этой статьи (и других статей с этого сайта) ставьте ссылку на сайт www.igoryksoft.narod.ru