20 return pidl && pidl->mkid.cb >= 3 ? (pidl->mkid.abID[0] & 0x7F) : 0;
35 return (
p &&
p->mkid.cb > 2) ? (
p->mkid.abID[0] & 0x70) == 0x30 :
FALSE;
48 return p ?
p->att : (
UINT(1) << 31);
51#define TEST_CLSID(pidl, type, offset, clsid) \
53 ok_long(GetPIDLType(pidl), (type)); \
54 ok_int(*(CLSID*)((&pidl->mkid.abID[(offset) - sizeof(WORD)])) == clsid, TRUE); \
73 CComPtr<IShellFolder> psf1, psf2;
80 DWORD attrs1 = SFGAO_FOLDER, attrs2 = SFGAO_FOLDER;
81 hr = (psf1 ? psf1->GetAttributesOf(1, &pidl1Last, &attrs1) :
E_UNEXPECTED);
83 hr = (psf2 ? psf2->GetAttributesOf(1, &pidl2Last, &attrs2) :
E_UNEXPECTED);
88 ok_long((attrs1 & SFGAO_FOLDER), 0);
89 ok_long((attrs2 & SFGAO_FOLDER), SFGAO_FOLDER);
237 skip(
"Unable to initialize test\n");
264 skip(
"Unable to initialize test\n");
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)
LPWSTR WINAPI PathFindFileNameW(LPCWSTR lpszPath)
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 ITEMIDLIST UNALIGNED * LPCITEMIDLIST
static FS95 * Validate(LPCITEMIDLIST p)
static BOOL IsFS(LPCITEMIDLIST p)
#define FIELD_OFFSET(t, f)
#define IID_PPV_ARG(Itype, ppType)