/// <summary> /// Returns a known folder given a globally unique identifier. /// </summary> /// <param name="knownFolderId">A GUID for the requested known folder.</param> /// <returns>A known folder representing the specified name.</returns> /// <exception cref="System.ArgumentException">Thrown if the given Known Folder ID is invalid.</exception> public static IKnownFolder FromKnownFolderId(Guid knownFolderId) { IKnownFolderNative knownFolderNative; KnownFolderManagerClass knownFolderManager = new KnownFolderManagerClass(); HResult hr = knownFolderManager.GetFolder(knownFolderId, out knownFolderNative); if (hr != HResult.Ok) { throw new ShellException(hr); } IKnownFolder kf = GetKnownFolder(knownFolderNative); if (kf == null) { throw new ArgumentException(LocalizedMessages.KnownFolderInvalidGuid, "knownFolderId"); } return kf; }
/// <summary> /// Returns a known folder given a globally unique identifier. /// </summary> /// <param name="knownFolderId">A GUID for the requested known folder.</param> /// <returns>A known folder representing the specified name.</returns> /// <exception cref="System.ArgumentException">Thrown if the given Known Folder ID is invalid.</exception> public static IKnownFolder FromKnownFolderId(Guid knownFolderId) { IKnownFolderNative knownFolderNative; KnownFolderManagerClass knownFolderManager = new KnownFolderManagerClass(); HResult hr = knownFolderManager.GetFolder(knownFolderId, out knownFolderNative); if (hr != HResult.Ok) { throw new ShellException(hr); } IKnownFolder kf = GetKnownFolder(knownFolderNative); if (kf == null) { throw new ArgumentException(LocalizedMessages.KnownFolderInvalidGuid, "knownFolderId"); } return(kf); }