attr = ~0;
hr = IShellFolder_ParseDisplayName(psfDesktop, NULL, NULL, entire_network_path, &eaten, &pidl, &attr);
+ IShellFolder_Release(psfDesktop);
if (hr == HRESULT_FROM_WIN32(ERROR_BAD_NET_NAME) ||
hr == HRESULT_FROM_WIN32(ERROR_NO_NET_OR_BAD_PATH) ||
hr == HRESULT_FROM_WIN32(ERROR_INVALID_PARAMETER))
"Unexpected attributes : %08x\n", attr);
ILFree(pidl);
+ IShellFolder_Release(psfDesktop);
}
static void test_printers_folder(void)
CoUninitialize();
}
+static void test_desktop_folder(void)
+{
+ IShellFolder *psf;
+ HRESULT hr;
+
+ hr = SHGetDesktopFolder(&psf);
+ ok(hr == S_OK, "Got %x\n", hr);
+
+ hr = IShellFolder_QueryInterface(psf, &IID_IShellFolder, NULL);
+ ok(hr == E_POINTER, "Got %x\n", hr);
+
+ IShellFolder_Release(psf);
+}
+
START_TEST(shfldr_special)
{
test_parse_for_entire_network();
test_parse_for_control_panel();
test_printers_folder();
+ test_desktop_folder();
}