Search
Module:
Directory

   Desktop Functions:

   Smart Device Functions:


Show Recent Changes
Subscribe (RSS)
Misc. Pages
Comments
FAQ
Helpful Tools
Playground
Suggested Reading
Website TODO List
Download Visual Studio Add-In

HChangeNotifyEventID (shell32)
 
.
Summary
Describes the event that has occurred. Typically, only one event is specified at a time. If more than one event is specified, the values contained in the dwItem1 and dwItem2 parameters must be the same, respectively, for all specified events. This parameter can be one or more of the following values.

C# Signature:

    #region enum HChangeNotifyEventID
    /// <summary>
    /// Describes the event that has occurred.
    /// Typically, only one event is specified at a time.
    /// If more than one event is specified, the values contained
    /// in the <i>dwItem1</i> and <i>dwItem2</i>
    /// parameters must be the same, respectively, for all specified events.
    /// This parameter can be one or more of the following values.
    /// </summary>
    /// <remarks>
    /// <para><b>Windows NT/2000/XP:</b> <i>dwItem2</i> contains the index
    /// in the system image list that has changed.
    /// <i>dwItem1</i> is not used and should be <see langword="null"/>.</para>
    /// <para><b>Windows 95/98:</b> <i>dwItem1</i> contains the index
    /// in the system image list that has changed.
    /// <i>dwItem2</i> is not used and should be <see langword="null"/>.</para>
    /// </remarks>
    [Flags]
    enum HChangeNotifyEventID
    {
        /// <summary>
        /// All events have occurred.
        /// </summary>
        SHCNE_ALLEVENTS = 0x7FFFFFFF,

        /// <summary>
        /// A file type association has changed. <see cref="HChangeNotifyFlags.SHCNF_IDLIST"/>
        /// must be specified in the <i>uFlags</i> parameter.
        /// <i>dwItem1</i> and <i>dwItem2</i> are not used and must be <see langword="null"/>.
        /// </summary>
        SHCNE_ASSOCCHANGED = 0x08000000,

        /// <summary>
        /// The attributes of an item or folder have changed.
        /// <see cref="HChangeNotifyFlags.SHCNF_IDLIST"/> or
        /// <see cref="HChangeNotifyFlags.SHCNF_PATH"/> must be specified in <i>uFlags</i>.
        /// <i>dwItem1</i> contains the item or folder that has changed.
        /// <i>dwItem2</i> is not used and should be <see langword="null"/>.
        /// </summary>
        SHCNE_ATTRIBUTES = 0x00000800,

        /// <summary>
        /// A nonfolder item has been created.
        /// <see cref="HChangeNotifyFlags.SHCNF_IDLIST"/> or
        /// <see cref="HChangeNotifyFlags.SHCNF_PATH"/> must be specified in <i>uFlags</i>.
        /// <i>dwItem1</i> contains the item that was created.
        /// <i>dwItem2</i> is not used and should be <see langword="null"/>.
        /// </summary>
        SHCNE_CREATE = 0x00000002,

        /// <summary>
        /// A nonfolder item has been deleted.
        /// <see cref="HChangeNotifyFlags.SHCNF_IDLIST"/> or
        /// <see cref="HChangeNotifyFlags.SHCNF_PATH"/> must be specified in <i>uFlags</i>.
        /// <i>dwItem1</i> contains the item that was deleted.
        /// <i>dwItem2</i> is not used and should be <see langword="null"/>.
        /// </summary>
        SHCNE_DELETE = 0x00000004,

        /// <summary>
        /// A drive has been added.
        /// <see cref="HChangeNotifyFlags.SHCNF_IDLIST"/> or
        /// <see cref="HChangeNotifyFlags.SHCNF_PATH"/> must be specified in <i>uFlags</i>.
        /// <i>dwItem1</i> contains the root of the drive that was added.
        /// <i>dwItem2</i> is not used and should be <see langword="null"/>.
        /// </summary>
        SHCNE_DRIVEADD = 0x00000100,

        /// <summary>
        /// A drive has been added and the Shell should create a new window for the drive.
        /// <see cref="HChangeNotifyFlags.SHCNF_IDLIST"/> or
        /// <see cref="HChangeNotifyFlags.SHCNF_PATH"/> must be specified in <i>uFlags</i>.
        /// <i>dwItem1</i> contains the root of the drive that was added.
        /// <i>dwItem2</i> is not used and should be <see langword="null"/>.
        /// </summary>
        SHCNE_DRIVEADDGUI = 0x00010000,

        /// <summary>
        /// A drive has been removed. <see cref="HChangeNotifyFlags.SHCNF_IDLIST"/> or
        /// <see cref="HChangeNotifyFlags.SHCNF_PATH"/> must be specified in <i>uFlags</i>.
        /// <i>dwItem1</i> contains the root of the drive that was removed.
        /// <i>dwItem2</i> is not used and should be <see langword="null"/>.
        /// </summary>
        SHCNE_DRIVEREMOVED = 0x00000080,

        /// <summary>
        /// Not currently used.
        /// </summary>
        SHCNE_EXTENDED_EVENT = 0x04000000,

        /// <summary>
        /// The amount of free space on a drive has changed.
        /// <see cref="HChangeNotifyFlags.SHCNF_IDLIST"/> or
        /// <see cref="HChangeNotifyFlags.SHCNF_PATH"/> must be specified in <i>uFlags</i>.
        /// <i>dwItem1</i> contains the root of the drive on which the free space changed.
        /// <i>dwItem2</i> is not used and should be <see langword="null"/>.
        /// </summary>
        SHCNE_FREESPACE = 0x00040000,

        /// <summary>
        /// Storage media has been inserted into a drive.
        /// <see cref="HChangeNotifyFlags.SHCNF_IDLIST"/> or
        /// <see cref="HChangeNotifyFlags.SHCNF_PATH"/> must be specified in <i>uFlags</i>.
        /// <i>dwItem1</i> contains the root of the drive that contains the new media.
        /// <i>dwItem2</i> is not used and should be <see langword="null"/>.
        /// </summary>
        SHCNE_MEDIAINSERTED = 0x00000020,

        /// <summary>
        /// Storage media has been removed from a drive.
        /// <see cref="HChangeNotifyFlags.SHCNF_IDLIST"/> or
        /// <see cref="HChangeNotifyFlags.SHCNF_PATH"/> must be specified in <i>uFlags</i>.
        /// <i>dwItem1</i> contains the root of the drive from which the media was removed.
        /// <i>dwItem2</i> is not used and should be <see langword="null"/>.
        /// </summary>
        SHCNE_MEDIAREMOVED = 0x00000040,

        /// <summary>
        /// A folder has been created. <see cref="HChangeNotifyFlags.SHCNF_IDLIST"/>
        /// or <see cref="HChangeNotifyFlags.SHCNF_PATH"/> must be specified in <i>uFlags</i>.
        /// <i>dwItem1</i> contains the folder that was created.
        /// <i>dwItem2</i> is not used and should be <see langword="null"/>.
        /// </summary>
        SHCNE_MKDIR = 0x00000008,

        /// <summary>
        /// A folder on the local computer is being shared via the network.
        /// <see cref="HChangeNotifyFlags.SHCNF_IDLIST"/> or
        /// <see cref="HChangeNotifyFlags.SHCNF_PATH"/> must be specified in <i>uFlags</i>.
        /// <i>dwItem1</i> contains the folder that is being shared.
        /// <i>dwItem2</i> is not used and should be <see langword="null"/>.
        /// </summary>
        SHCNE_NETSHARE = 0x00000200,

        /// <summary>
        /// A folder on the local computer is no longer being shared via the network.
        /// <see cref="HChangeNotifyFlags.SHCNF_IDLIST"/> or
        /// <see cref="HChangeNotifyFlags.SHCNF_PATH"/> must be specified in <i>uFlags</i>.
        /// <i>dwItem1</i> contains the folder that is no longer being shared.
        /// <i>dwItem2</i> is not used and should be <see langword="null"/>.
        /// </summary>
        SHCNE_NETUNSHARE = 0x00000400,

        /// <summary>
        /// The name of a folder has changed.
        /// <see cref="HChangeNotifyFlags.SHCNF_IDLIST"/> or
        /// <see cref="HChangeNotifyFlags.SHCNF_PATH"/> must be specified in <i>uFlags</i>.
        /// <i>dwItem1</i> contains the previous pointer to an item identifier list (PIDL) or name of the folder.
        /// <i>dwItem2</i> contains the new PIDL or name of the folder.
        /// </summary>
        SHCNE_RENAMEFOLDER = 0x00020000,

        /// <summary>
        /// The name of a nonfolder item has changed.
        /// <see cref="HChangeNotifyFlags.SHCNF_IDLIST"/> or
        /// <see cref="HChangeNotifyFlags.SHCNF_PATH"/> must be specified in <i>uFlags</i>.
        /// <i>dwItem1</i> contains the previous PIDL or name of the item.
        /// <i>dwItem2</i> contains the new PIDL or name of the item.
        /// </summary>
        SHCNE_RENAMEITEM = 0x00000001,

        /// <summary>
        /// A folder has been removed.
        /// <see cref="HChangeNotifyFlags.SHCNF_IDLIST"/> or
        /// <see cref="HChangeNotifyFlags.SHCNF_PATH"/> must be specified in <i>uFlags</i>.
        /// <i>dwItem1</i> contains the folder that was removed.
        /// <i>dwItem2</i> is not used and should be <see langword="null"/>.
        /// </summary>
        SHCNE_RMDIR = 0x00000010,

        /// <summary>
        /// The computer has disconnected from a server.
        /// <see cref="HChangeNotifyFlags.SHCNF_IDLIST"/> or
        /// <see cref="HChangeNotifyFlags.SHCNF_PATH"/> must be specified in <i>uFlags</i>.
        /// <i>dwItem1</i> contains the server from which the computer was disconnected.
        /// <i>dwItem2</i> is not used and should be <see langword="null"/>.
        /// </summary>
        SHCNE_SERVERDISCONNECT = 0x00004000,

        /// <summary>
        /// The contents of an existing folder have changed,
        /// but the folder still exists and has not been renamed.
        /// <see cref="HChangeNotifyFlags.SHCNF_IDLIST"/> or
        /// <see cref="HChangeNotifyFlags.SHCNF_PATH"/> must be specified in <i>uFlags</i>.
        /// <i>dwItem1</i> contains the folder that has changed.
        /// <i>dwItem2</i> is not used and should be <see langword="null"/>.
        /// If a folder has been created, deleted, or renamed, use SHCNE_MKDIR, SHCNE_RMDIR, or
        /// SHCNE_RENAMEFOLDER, respectively, instead.
        /// </summary>
        SHCNE_UPDATEDIR = 0x00001000,

        /// <summary>
        /// An image in the system image list has changed.
        /// <see cref="HChangeNotifyFlags.SHCNF_DWORD"/> must be specified in <i>uFlags</i>.
        /// </summary>
        SHCNE_UPDATEIMAGE = 0x00008000,

    }
    #endregion // enum HChangeNotifyEventID

VB Signature:

    <Flags()> _
    Public Enum HChangeNotifyEventID
    ' <summary>
    ' All events have occurred.
    ' </summary>
    SHCNE_ALLEVENTS = &H7FFFFFFF

    ' <summary>
    ' A file type association has changed. <see cref="HChangeNotifyFlags.SHCNF_IDLIST"/>
    ' must be specified in the <i>uFlags</i> parameter.
    ' <i>dwItem1</i> and <i>dwItem2</i> are not used and must be <see langword="null"/>.
    ' </summary>
    SHCNE_ASSOCCHANGED = &H8000000

    ' <summary>
    ' The attributes of an item or folder have changed.
    ' <see cref="HChangeNotifyFlags.SHCNF_IDLIST"/> or
    ' <see cref="HChangeNotifyFlags.SHCNF_PATH"/> must be specified in <i>uFlags</i>.
    ' <i>dwItem1</i> contains the item or folder that has changed.
    ' <i>dwItem2</i> is not used and should be <see langword="null"/>.
    ' </summary>
    SHCNE_ATTRIBUTES = &H800

    ' <summary>
    ' A nonfolder item has been created.
    ' <see cref="HChangeNotifyFlags.SHCNF_IDLIST"/> or
    ' <see cref="HChangeNotifyFlags.SHCNF_PATH"/> must be specified in <i>uFlags</i>.
    ' <i>dwItem1</i> contains the item that was created.
    ' <i>dwItem2</i> is not used and should be <see langword="null"/>.
    ' </summary>
    SHCNE_CREATE = &H2

    ' <summary>
    ' A nonfolder item has been deleted.
    ' <see cref="HChangeNotifyFlags.SHCNF_IDLIST"/> or
    ' <see cref="HChangeNotifyFlags.SHCNF_PATH"/> must be specified in <i>uFlags</i>.
    ' <i>dwItem1</i> contains the item that was deleted.
    ' <i>dwItem2</i> is not used and should be <see langword="null"/>.
    ' </summary>
    SHCNE_DELETE = &H4

    ' <summary>
    ' A drive has been added.
    ' <see cref="HChangeNotifyFlags.SHCNF_IDLIST"/> or
    ' <see cref="HChangeNotifyFlags.SHCNF_PATH"/> must be specified in <i>uFlags</i>.
    ' <i>dwItem1</i> contains the root of the drive that was added.
    ' <i>dwItem2</i> is not used and should be <see langword="null"/>.
    ' </summary>
    SHCNE_DRIVEADD = &H100

    ' <summary>
    ' A drive has been added and the Shell should create a new window for the drive.
    ' <see cref="HChangeNotifyFlags.SHCNF_IDLIST"/> or
    ' <see cref="HChangeNotifyFlags.SHCNF_PATH"/> must be specified in <i>uFlags</i>.
    ' <i>dwItem1</i> contains the root of the drive that was added.
    ' <i>dwItem2</i> is not used and should be <see langword="null"/>.
    ' </summary>
    SHCNE_DRIVEADDGUI = &H10000

    ' <summary>
    ' A drive has been removed. <see cref="HChangeNotifyFlags.SHCNF_IDLIST"/> or
    ' <see cref="HChangeNotifyFlags.SHCNF_PATH"/> must be specified in <i>uFlags</i>.
    ' <i>dwItem1</i> contains the root of the drive that was removed.
    ' <i>dwItem2</i> is not used and should be <see langword="null"/>.
    ' </summary>
    SHCNE_DRIVEREMOVED = &H80

    ' <summary>
    ' Not currently used.
    ' </summary>
    SHCNE_EXTENDED_EVENT = &H4000000

    ' <summary>
    ' The amount of free space on a drive has changed.
    ' <see cref="HChangeNotifyFlags.SHCNF_IDLIST"/> or
    ' <see cref="HChangeNotifyFlags.SHCNF_PATH"/> must be specified in <i>uFlags</i>.
    ' <i>dwItem1</i> contains the root of the drive on which the free space changed.
    ' <i>dwItem2</i> is not used and should be <see langword="null"/>.
    ' </summary>
    SHCNE_FREESPACE = &H40000

    ' <summary>
    ' Storage media has been inserted into a drive.
    ' <see cref="HChangeNotifyFlags.SHCNF_IDLIST"/> or
    ' <see cref="HChangeNotifyFlags.SHCNF_PATH"/> must be specified in <i>uFlags</i>.
    ' <i>dwItem1</i> contains the root of the drive that contains the new media.
    ' <i>dwItem2</i> is not used and should be <see langword="null"/>.
    ' </summary>
    SHCNE_MEDIAINSERTED = &H20

    ' <summary>
    ' Storage media has been removed from a drive.
    ' <see cref="HChangeNotifyFlags.SHCNF_IDLIST"/> or
    ' <see cref="HChangeNotifyFlags.SHCNF_PATH"/> must be specified in <i>uFlags</i>.
    ' <i>dwItem1</i> contains the root of the drive from which the media was removed.
    ' <i>dwItem2</i> is not used and should be <see langword="null"/>.
    ' </summary>
    SHCNE_MEDIAREMOVED = &H40

    ' <summary>
    ' A folder has been created. <see cref="HChangeNotifyFlags.SHCNF_IDLIST"/>
    ' or <see cref="HChangeNotifyFlags.SHCNF_PATH"/> must be specified in <i>uFlags</i>.
    ' <i>dwItem1</i> contains the folder that was created.
    ' <i>dwItem2</i> is not used and should be <see langword="null"/>.
    ' </summary>
    SHCNE_MKDIR = &H8

    ' <summary>
    ' A folder on the local computer is being shared via the network.
    ' <see cref="HChangeNotifyFlags.SHCNF_IDLIST"/> or
    ' <see cref="HChangeNotifyFlags.SHCNF_PATH"/> must be specified in <i>uFlags</i>.
    ' <i>dwItem1</i> contains the folder that is being shared.
    ' <i>dwItem2</i> is not used and should be <see langword="null"/>.
    ' </summary>
    SHCNE_NETSHARE = &H200

    ' <summary>
    ' A folder on the local computer is no longer being shared via the network.
    ' <see cref="HChangeNotifyFlags.SHCNF_IDLIST"/> or
    ' <see cref="HChangeNotifyFlags.SHCNF_PATH"/> must be specified in <i>uFlags</i>.
    ' <i>dwItem1</i> contains the folder that is no longer being shared.
    ' <i>dwItem2</i> is not used and should be <see langword="null"/>.
    ' </summary>
    SHCNE_NETUNSHARE = &H400

    ' <summary>
    ' The name of a folder has changed.
    ' <see cref="HChangeNotifyFlags.SHCNF_IDLIST"/> or
    ' <see cref="HChangeNotifyFlags.SHCNF_PATH"/> must be specified in <i>uFlags</i>.
    ' <i>dwItem1</i> contains the previous pointer to an item identifier list (PIDL) or name of the folder.
    ' <i>dwItem2</i> contains the new PIDL or name of the folder.
    ' </summary>
    SHCNE_RENAMEFOLDER = &H20000

    ' <summary>
    ' The name of a nonfolder item has changed.
    ' <see cref="HChangeNotifyFlags.SHCNF_IDLIST"/> or
    ' <see cref="HChangeNotifyFlags.SHCNF_PATH"/> must be specified in <i>uFlags</i>.
    ' <i>dwItem1</i> contains the previous PIDL or name of the item.
    ' <i>dwItem2</i> contains the new PIDL or name of the item.
    ' </summary>
    SHCNE_RENAMEITEM = &H1

    ' <summary>
    ' A folder has been removed.
    ' <see cref="HChangeNotifyFlags.SHCNF_IDLIST"/> or
    ' <see cref="HChangeNotifyFlags.SHCNF_PATH"/> must be specified in <i>uFlags</i>.
    ' <i>dwItem1</i> contains the folder that was removed.
    ' <i>dwItem2</i> is not used and should be <see langword="null"/>.
    ' </summary>
    SHCNE_RMDIR = &H10

    ' <summary>
    ' The computer has disconnected from a server.
    ' <see cref="HChangeNotifyFlags.SHCNF_IDLIST"/> or
    ' <see cref="HChangeNotifyFlags.SHCNF_PATH"/> must be specified in <i>uFlags</i>.
    ' <i>dwItem1</i> contains the server from which the computer was disconnected.
    ' <i>dwItem2</i> is not used and should be <see langword="null"/>.
    ' </summary>
    SHCNE_SERVERDISCONNECT = &H4000

    ' <summary>
    ' The contents of an existing folder have changed
    ' but the folder still exists and has not been renamed.
    ' <see cref="HChangeNotifyFlags.SHCNF_IDLIST"/> or
    ' <see cref="HChangeNotifyFlags.SHCNF_PATH"/> must be specified in <i>uFlags</i>.
    ' <i>dwItem1</i> contains the folder that has changed.
    ' <i>dwItem2</i> is not used and should be <see langword="null"/>.
    ' If a folder has been created deleted or renamed use SHCNE_MKDIR SHCNE_RMDIR or
    ' SHCNE_RENAMEFOLDER respectively instead.
    ' </summary>
    SHCNE_UPDATEDIR = &H1000

    ' <summary>
    ' An image in the system image list has changed.
    ' <see cref="HChangeNotifyFlags.SHCNF_DWORD"/> must be specified in <i>uFlags</i>.
    ' </summary>
    SHCNE_UPDATEIMAGE = &H8000
    End Enum

User-Defined Types:

None.

Alternative Managed API:

Do you know one? Please contribute it!

Notes: See SHChangeNotify, HChangeNotifyFlags

Tips & Tricks:

Please add some!

Sample Code:

Please add some!

Documentation

Please edit this page!

Do you have...

  • helpful tips or sample code to share for using this API in managed code?
  • corrections to the existing content?
  • variations of the signature you want to share?
  • additional languages you want to include?

Select "Edit This Page" on the right hand toolbar and edit it! Or add new pages containing supporting types needed for this API (structures, delegates, and more).

 
Access PInvoke.net directly from VS:
Terms of Use
Edit This Page
Find References
Show Printable Version
Revisions