Home | History | Annotate | Download | only in dragdrop

Lines Matching refs:pidl

955 static LPITEMIDLIST PIDLNext(LPITEMIDLIST pidl) {
957 reinterpret_cast<BYTE*>(pidl) + pidl->mkid.cb);
960 static size_t PIDLSize(LPITEMIDLIST pidl) {
962 while (pidl->mkid.cb > 0) {
963 s += pidl->mkid.cb;
964 pidl = PIDLNext(pidl);
976 LPITEMIDLIST pidl = NULL;
984 NULL, NULL, path_str, NULL, &pidl, NULL);
986 return SUCCEEDED(hr) ? pidl : NULL;
990 LPITEMIDLIST pidl = GetPidlFromPath(path);
991 if (!pidl)
995 // pointer to a CIDA*. A CIDA is a variable length struct that contains a PIDL
997 // then a series of PIDLs laid out contiguously in memory. A PIDL is
1003 // Here we require two PIDLs - the first PIDL is the parent folder and is
1005 // is the PIDL of |path|.
1009 const size_t kFirstPIDLSize = 2; // Empty PIDL - 2 NULL bytes.
1010 const size_t kSecondPIDLSize = PIDLSize(pidl);
1016 cida->cidl = 1; // We have one PIDL (not including the 0th root PIDL).
1023 memcpy(idl, pidl, kSecondPIDLSize);