160 {
161 LPSHELLFOLDER pDesktopFolder, pWineTestFolder;
167 { 0x9b352ebf, 0x2765, 0x45c1, { 0xb4, 0xc6, 0x85, 0xcc, 0x7f, 0x7a, 0xbc, 0x64 } };
168 WCHAR wszWineTestFolder[] = {
169 ':',':','{','9','B','3','5','2','E','B','F','-','2','7','6','5','-','4','5','C','1','-',
170 'B','4','C','6','-','8','5','C','C','7','F','7','A','B','C','6','4','}',0 };
171
172
173
175
179
180
182 &pidlWineTestFolder,
NULL);
184 {
187 }
189 IShellFolder_Release(pDesktopFolder);
191 }
192
193
194
195
196
197 hr = IShellFolder_BindToObject(pDesktopFolder, pidlWineTestFolder,
NULL, &IID_IShellFolder,
198 (
LPVOID*)&pWineTestFolder);
199 IShellFolder_Release(pDesktopFolder);
200 ILFree(pidlWineTestFolder);
201 ok (
SUCCEEDED(
hr),
"IShellFolder::BindToObject(WineTestFolder) failed! hr = %08x\n",
hr);
203
204 hr = IShellFolder_QueryInterface(pWineTestFolder, &IID_IPersistFolder3, (
LPVOID*)&pWineTestPersistFolder);
205 ok (
SUCCEEDED(
hr),
"IShellFolder::QueryInterface(IPersistFolder3) failed! hr = %08x\n",
hr);
206 IShellFolder_Release(pWineTestFolder);
208
209
210 hr = IPersistFolder3_GetClassID(pWineTestPersistFolder, &
clsid);
213
215 hr = IPersistFolder3_GetCurFolder(pWineTestPersistFolder, &pidlCurFolder);
216 ok (
SUCCEEDED(
hr),
"IPersistFolder3::GetCurFolder failed! hr = %08x\n",
hr);
217 ok (pidlCurFolder->mkid.cb == 20 && ((
LPSHITEMID)((
BYTE*)pidlCurFolder+20))->cb == 0 &&
219 "GetCurFolder returned unexpected pidl!\n");
220
222 IPersistFolder3_Release(pWineTestPersistFolder);
223
226}
HRESULT WINAPI SHGetDesktopFolder(IShellFolder **psf)
#define ERROR_INVALID_PARAMETER
static void cleanup(void)
#define IShellFolder_ParseDisplayName
void WINAPI ILFree(LPITEMIDLIST pidl)
#define IsEqualCLSID(rclsid1, rclsid2)
static const struct registry_key HKEY_CLASSES_ROOT_keys[]
static void unregister_keys(HKEY hRootKey, const struct registry_key *keys, unsigned int numKeys)
ITEMIDLIST UNALIGNED * LPITEMIDLIST
#define HRESULT_FROM_WIN32(x)
#define HKEY_CLASSES_ROOT