* Add some missing definitions.

svn path=/trunk/; revision=62840
This commit is contained in:
Amine Khaldi 2014-04-20 13:34:54 +00:00
parent cc3fcbf96f
commit 1ba0dbbee8
2 changed files with 260 additions and 0 deletions

View file

@ -652,6 +652,127 @@ typedef LPSHNAMEMAPPINGA LPSHNAMEMAPPING;
#define DoEnvironmentSubst DoEnvironmentSubstA
#endif
#if (NTDDI_VERSION >= NTDDI_VISTA)
typedef struct _SHSTOCKICONINFO {
DWORD cbSize;
HICON hIcon;
int iSysImageIndex;
int iIcon;
WCHAR szPath[MAX_PATH];
} SHSTOCKICONINFO;
#define SHGSI_ICONLOCATION 0
typedef enum SHSTOCKICONID
{
SIID_INVALID=-1,
SIID_DOCNOASSOC,
SIID_DOCASSOC,
SIID_APPLICATION,
SIID_FOLDER,
SIID_FOLDEROPEN,
SIID_DRIVE525,
SIID_DRIVE35,
SIID_DRIVERREMOVE,
SIID_DRIVERFIXED,
SIID_DRIVERNET,
SIID_DRIVERNETDISABLE,
SIID_DRIVERCD,
SIID_DRIVERRAM,
SIID_WORLD,
/* Missing: 14 */
SIID_SERVER = 15,
SIID_PRINTER,
SIID_MYNETWORK,
/* Missing: 18 - 21 */
SIID_FIND = 22,
SIID_HELP,
/* Missing: 24 - 27 */
SIID_SHARE = 28,
SIID_LINK,
SIID_SLOWFILE,
SIID_RECYCLER,
SIID_RECYCLERFULL,
/* Missing: 33 - 39 */
SIID_MEDIACDAUDIO = 40,
/* Missing: 41 - 46 */
SIID_LOCK = 47,
/* Missing: 48 */
SIID_AUTOLIST = 49,
SIID_PRINTERNET,
SIID_SERVERSHARE,
SIID_PRINTERFAX,
SIID_PRINTERFAXNET,
SIID_PRINTERFILE,
SIID_STACK,
SIID_MEDIASVCD,
SIID_STUFFEDFOLDER,
SIID_DRIVEUNKNOWN,
SIID_DRIVEDVD,
SIID_MEDIADVD,
SIID_MEDIADVDRAM,
SIID_MEDIADVDRW,
SIID_MEDIADVDR,
SIID_MEDIADVDROM,
SIID_MEDIACDAUDIOPLUS,
SIID_MEDIACDRW,
SIID_MEDIACDR,
SIID_MEDIACDBURN,
SIID_MEDIABLANKCD,
SIID_MEDIACDROM,
SIID_AUDIOFILES,
SIID_IMAGEFILES,
SIID_VIDEOFILES,
SIID_MIXEDFILES,
SIID_FOLDERBACK,
SIID_FOLDERFRONT,
SIID_SHIELD,
SIID_WARNING,
SIID_INFO,
SIID_ERROR,
SIID_KEY,
SIID_SOFTWARE,
SIID_RENAME,
SIID_DELETE,
SIID_MEDIAAUDIODVD,
SIID_MEDIAMOVIEDVD,
SIID_MEDIAENHANCEDCD,
SIID_MEDIAENHANCEDDVD,
SIID_MEDIAHDDVD,
SIID_MEDIABLUERAY,
SIID_MEDIAVCD,
SIID_MEDIADVDPLUSR,
SIID_MEDIADVDPLUSRW,
SIID_DESKTOPPC,
SIID_MOBILEPC,
SIID_USERS,
SIID_MEDIASMARTMEDIA,
SIID_MEDIACOMPACTFLASH,
SIID_DEVICECELLPHONE,
SIID_DEVICECAMERA,
SIID_DEVICEVIDEOCAMERA,
SIID_DEVICEAUDIOPLAYER,
SIID_NETWORKCONNECT,
SIID_INTERNET,
SIID_ZIPFILE,
SIID_SETTINGS,
/* Missing: 107 - 131 */
SIID_DRIVEHDDVD = 132,
SIID_DRIVEBD,
SIID_MEDIAHDDVDROM,
SIID_MEDIAHDDVDR,
SIID_MEDIAHDDVDRAM,
SIID_MEDIABDROM,
SIID_MEDIABDR,
SIID_MEDIABDRE,
SIID_CLUSTEREDDRIVE,
/* Missing: 141 - 174 */
SIID_MAX_ICONS = 175
} SHSTOCKICONID;
#endif /* (NTDDI_VERSION >= NTDDI_VISTA) */
#if !defined(_WIN64)
#include <poppack.h>
#endif

View file

@ -3813,6 +3813,137 @@ interface ICustomDestinationList : IUnknown
HRESULT AbortList();
}
[
uuid(ddefe873-6997-4e68-be26-39b633adbe12),
object,
pointer_default(unique)
]
interface IQueryCancelAutoPlay : IUnknown
{
HRESULT AllowAutoPlay([in, string] LPCWSTR path,
[in] DWORD content_type,
[in, string] LPCWSTR label,
[in] DWORD serial_number);
}
[
uuid(d594d0d8-8da7-457b-b3b4-ce5dbaac0b88),
pointer_default(unique)
]
interface ITransferAdviseSink : IUnknown
{
[v1_enum] enum _TRANSFER_ADVISE_STATE
{
TS_NONE = 0,
TS_PERFORMING = 1,
TS_PREPARING = 2,
TS_INDETERMINATE = 4
};
typedef DWORD TRANSFER_ADVISE_STATE;
HRESULT UpdateProgress([in] ULONGLONG size_current,
[in] ULONGLONG size_total,
[in] INT files_current,
[in] INT files_total,
[in] INT folders_current,
[in] INT folders_total);
HRESULT UpdateTransferState([in] TRANSFER_ADVISE_STATE state);
HRESULT ConfirmOverwrite([in] IShellItem *source,
[in] IShellItem *dest_parent,
[in, string] LPCWSTR name);
HRESULT ConfirmEncryptLoss([in] IShellItem *source);
HRESULT FileFailure([in] IShellItem *item,
[in, unique, string] LPCWSTR itemname,
[in] HRESULT hr,
[out, unique, size_is(crename)] LPWSTR rename,
[in] ULONG crename);
HRESULT SubStreamFailure([in] IShellItem *item,
[in, string] LPCWSTR stream,
[in] HRESULT hr);
HRESULT PropertyFailure([in] IShellItem *item,
[in, unique] const PROPERTYKEY *key,
[in] HRESULT hr);
}
[v1_enum] enum _TRANSFER_SOURCE_FLAGS
{
TSF_NORMAL = 0,
TSF_FAIL_EXIST = 0,
TSF_RENAME_EXIST = 0x1,
TSF_OVERWRITE_EXIST = 0x2,
TSF_ALLOW_DECRYPTION = 0x4,
TSF_NO_SECURITY = 0x8,
TSF_COPY_CREATION_TIME = 0x10,
TSF_COPY_WRITE_TIME = 0x20,
TSF_USE_FULL_ACCESS = 0x40,
TSF_DELETE_RECYCLE_IF_POSSIBLE = 0x80,
TSF_COPY_HARD_LINK = 0x100,
TSF_COPY_LOCALIZED_NAME = 0x200,
TSF_MOVE_AS_COPY_DELETE = 0x400,
TSF_SUSPEND_SHELLEVENTS = 0x800
};
typedef DWORD TRANSFER_SOURCE_FLAGS;
[
uuid(00adb003-bde9-45c6-8e29-d09f9353e108),
object,
pointer_default(unique)
]
interface ITransferSource : IUnknown
{
HRESULT Advise([in] ITransferAdviseSink *sink, [out] DWORD *cookie);
HRESULT Unadvise([in] DWORD cookie);
HRESULT SetProperties([in] IPropertyChangeArray *array);
HRESULT OpenItem([in] IShellItem *item,
[in] TRANSFER_SOURCE_FLAGS flags,
[in] REFIID riid,
[out, iid_is(riid)] void **ppv);
HRESULT MoveItem([in] IShellItem *item,
[in] IShellItem *parent_dest,
[in, string] LPCWSTR name_dest,
[in] TRANSFER_SOURCE_FLAGS flags,
[out] IShellItem **newitem);
HRESULT RecycleItem([in] IShellItem *source,
[in] IShellItem *parent_dest,
[in] TRANSFER_SOURCE_FLAGS flags,
[out] IShellItem **new_dest);
HRESULT RemoveItem([in] IShellItem *source, [in] TRANSFER_SOURCE_FLAGS flags);
HRESULT RenameItem([in] IShellItem *source,
[in, string] LPCWSTR newname,
[in] TRANSFER_SOURCE_FLAGS flags,
[out] IShellItem **new_dest);
HRESULT LinkItem([in] IShellItem *source,
[in] IShellItem *parent_dest,
[in, unique, string] LPCWSTR new_name,
[in] TRANSFER_SOURCE_FLAGS flags,
[out] IShellItem **new_dest);
HRESULT ApplyPropertiesToItem([in] IShellItem *source, [out] IShellItem **newitem);
HRESULT GetDefaultDestinationName([in] IShellItem *source,
[in] IShellItem *parent_dest,
[out, string] LPWSTR *dest_name);
HRESULT EnterFolder([in] IShellItem *child_folder);
HRESULT LeaveFolder([in] IShellItem *child_folder);
}
[
uuid(48addd32-3ca5-4124-abe3-b5a72531b207),
object,
pointer_default(unique)
]
interface ITransferDestination : IUnknown
{
HRESULT Advise([in] ITransferAdviseSink *sink, [out] DWORD *cookie);
HRESULT Unadvise([in] DWORD cookie);
HRESULT CreateItem([in, string] LPCWSTR name,
[in] DWORD attr,
[in] ULONGLONG size,
[in] TRANSFER_SOURCE_FLAGS flags,
[in] REFIID riid,
[out, iid_is(riid)] void **ppv,
[in] REFIID resources,
[out, iid_is(riid)] void **presources);
}
/*****************************************************************************
* ShellObjects typelibrary
*/
@ -3894,6 +4025,14 @@ library ShellObjects
interface ICustomDestinationList;
}
[
uuid(331f1768-05a9-4ddd-b86e-dae34ddc998a)
]
coclass QueryCancelAutoPlay
{
interface IQueryCancelAutoPlay;
}
[
uuid(9ac9fbe1-e0a2-4ad6-b4ee-e212013ea917)
]