public int BindToStorage(IntPtr pidl, IntPtr pbc, ref Guid riid, out IntPtr ppv) { checkDisposed(); return(_iShellFolder.BindToStorage(pidl, pbc, ref riid, out ppv)); }
/// <summary>Requests a pointer to an object's storage interface.</summary> /// <typeparam name="T">Type of the interface to get, usuall IStream, IStorage, or IPropertySetStorage.</typeparam> /// <param name="relativePidl">The PIDL that identifies the subfolder relative to its parent folder.</param> /// <param name="bindCtx"> /// The optional address of an IBindCtx interface on a bind context object to be used during this operation. If this parameter is /// not used, set it to <see langword="null"/>. Because support for pbc is optional for folder object implementations, some folders /// may not support the use of bind contexts. /// </param> /// <returns>Receives the interface pointer requested in <typeparamref name="T"/>.</returns> public T BindToStorage <T>(PIDL relativePidl, IBindCtx bindCtx = null) where T : class => iShellFolder.BindToStorage <T>(relativePidl, bindCtx);
public static T BindToStorage <T>(this IShellFolder psf, IntPtr pidl, IBindCtx pbc) where T : class { return((T)psf.BindToStorage(pidl, pbc, typeof(T).GUID)); }