23 return pidl && pidl->mkid.cb >= 3 ? (pidl->mkid.abID[0] & 0x7F) : 0;
38 return (
p &&
p->mkid.cb > 2) ? (
p->mkid.abID[0] & 0x70) == 0x30 :
FALSE;
51 return p ?
p->att : (
UINT(1) << 31);
56 CComPtr<IShellFolder> pSF;
72 CComPtr<IShellFolder> pSF;
78#define TEST_CLSID(pidl, type, offset, clsid) \
80 ok_long(GetPIDLType(pidl), (type)); \
81 ok_int(*(CLSID*)((&pidl->mkid.abID[(offset) - sizeof(WORD)])) == clsid, TRUE); \
100 CComPtr<IShellFolder> psf1, psf2;
107 DWORD attrs1 = SFGAO_FOLDER, attrs2 = SFGAO_FOLDER;
108 hr = (psf1 ? psf1->GetAttributesOf(1, &pidl1Last, &attrs1) :
E_UNEXPECTED);
110 hr = (psf2 ? psf2->GetAttributesOf(1, &pidl2Last, &attrs2) :
E_UNEXPECTED);
115 ok_long((attrs1 & SFGAO_FOLDER), 0);
116 ok_long((attrs2 & SFGAO_FOLDER), SFGAO_FOLDER);
256 skip(
"Failed to parse in Control Panel\n");
266 CComPtr<IShellFolder> pInternet;
270 PCWSTR pszUrl =
L"http://example.com/page?query&foo=bar";
311 skip(
"Unable to initialize test\n");
338 skip(
"Unable to initialize test\n");
HRESULT WINAPI SHGetDesktopFolder(IShellFolder **psf)
static HRESULT GetDisplayNameOf(IShellFolder *pSF, LPCITEMIDLIST pidl, UINT Flags, PWSTR Buf, UINT Cap)
static int FileStruct_Att(LPCITEMIDLIST pidl)
static BYTE GetPIDLType(LPCITEMIDLIST pidl)
#define TEST_CLSID(pidl, type, offset, clsid)
#define ok_long(expression, result)
#define ok_char(expression, result)
#define ok_int(expression, result)
#define ok_ptr(expression, result)
UINT WINAPI GetSystemDirectoryW(OUT LPWSTR lpBuffer, IN UINT uSize)
UINT WINAPI GetWindowsDirectoryW(OUT LPWSTR lpBuffer, IN UINT uSize)
int WINAPI lstrcmpiW(LPCWSTR str1, LPCWSTR str2)
WCHAR *WINAPI PathFindFileNameW(const WCHAR *path)
DWORD WINAPI GetVersion(void)
HRESULT WINAPI SHCoCreateInstance(LPCWSTR aclsid, const CLSID *clsid, LPUNKNOWN pUnkOuter, REFIID refiid, LPVOID *ppv)
HRESULT WINAPI StrRetToBufW(LPSTRRET src, const ITEMIDLIST *pidl, LPWSTR dest, UINT len)
GLenum GLuint GLenum GLsizei const GLchar * buf
HRESULT GetDisplayNameOf([in] PCUITEMID_CHILD pidl, [in] SHGDNF uFlags, [out] STRRET *lpName)
static IParseDisplayName ParseDisplayName
LPITEMIDLIST WINAPI SHCloneSpecialIDList(HWND hwndOwner, int nFolder, BOOL fCreate)
void WINAPI ILFree(LPITEMIDLIST pidl)
LPITEMIDLIST WINAPI ILFindLastID(LPCITEMIDLIST pidl)
BOOL WINAPI ILIsParent(LPCITEMIDLIST pidlParent, LPCITEMIDLIST pidlChild, BOOL bImmediate)
BOOL WINAPI ILRemoveLastID(LPITEMIDLIST pidl)
HRESULT WINAPI SHBindToParent(LPCITEMIDLIST pidl, REFIID riid, LPVOID *ppv, LPCITEMIDLIST *ppidlLast)
LPITEMIDLIST WINAPI ILGetNext(LPCITEMIDLIST pidl)
PUIDLIST_RELATIVE WINAPI ILFindChild(PIDLIST_ABSOLUTE pidl1, PCIDLIST_ABSOLUTE pidl2)
LPITEMIDLIST WINAPI ILCreateFromPathW(LPCWSTR path)
BOOL WINAPI ILIsEqual(LPCITEMIDLIST pidl1, LPCITEMIDLIST pidl2)
static BOOL ILIsEmpty(_In_opt_ PCUIDLIST_RELATIVE pidl)
PIDLIST_ABSOLUTE WINAPI SHSimpleIDListFromPath(PCWSTR)
ITEMIDLIST UNALIGNED * LPITEMIDLIST
const ITEMID_CHILD UNALIGNED * PCUITEMID_CHILD
const ITEMIDLIST UNALIGNED * LPCITEMIDLIST
static FS95 * Validate(LPCITEMIDLIST p)
static BOOL IsFS(LPCITEMIDLIST p)
#define FIELD_OFFSET(t, f)
_Must_inspect_result_ _In_ ULONG Flags
#define IID_PPV_ARG(Itype, ppType)