Class Pidl
Manages an ITEMIDLIST structure that is used to identify files and other shell objects instead of a file-system path.
public class Pidl : IDisposable
Remarks
Wraps an ITEMIDLIST*, also known as PIDL or LPITEMIDLIST.
When calling native shell API, virtual objects can be identified only by ITEMIDLIST*. Some API also support "parsing name", which may look like "::{CLSID-1}\::{CLSID-2}". File-system objects can be identified by path as well as by ITEMIDLIST*. URLs can be identified by URL as well as by ITEMIDLIST*.
The ITEMIDLIST structure is in unmanaged memory. You can dispose Pidl variables, or GC will do it later. Always dispose if creating many.
This class has only ITEMIDLIST functions that are used in this library. Look for other functions on the Internet. Many of them are named with IL prefix, like ILClone, ILGetSize, ILFindLastID.
Namespace: Au.Types
Assembly: Au.dll
Inheritance
Constructors
| Name | Description |
|---|---|
| Pidl(nint) | Assigns an |
| Pidl(nint, nint) | Combines two |
Properties
| Name | Description |
|---|---|
| HandleRef | Gets the |
| IsNull | Returns |
| UnsafePtr | Gets the |
Methods
| Name | Description |
|---|---|
| Detach() | Gets the |
| Dispose() | Frees the |
| Dispose(bool) | |
| FromString(string, bool) | Converts string to |
| ToHexString() | Returns string |
| ToHexString(nint) | Returns string |
| ToShellString(SIGDN, bool) | Converts the |
| ToShellString(nint, SIGDN, bool) | Converts an |
| ToString() | Converts the |
| ToString(nint) | This overload uses an |
| ValueEquals(nint) | Returns |