The SHARE_INFO_2 structure contains information about the shared resource, including name of the resource, type and permissions, and number of connections.
typedef struct _SHARE_INFO_2 {
    LPTSTR    shi2_netname;
    DWORD     shi2_type;
    LPTSTR    shi2_remark;
    DWORD     shi2_permissions;
    DWORD     shi2_max_uses;
    DWORD     shi2_current_uses;
    LPTSTR    shi2_path;
    LPTSTR    shi2_passwd;
} SHARE_INFO_2, *PSHARE_INFO_2, *LPSHARE_INFO_2;
 
| 
 Value  | 
 Meaning  | 
| 
 STYPE_DISKTREE  | 
 Disk drive  | 
| 
 STYPE_PRINTQ  | 
 Print queue  | 
| 
 STYPE_DEVICE  | 
 Communication device  | 
| 
 STYPE_IPC  | 
 Interprocess Communication (IPC)  | 
| 
 Value  | 
 Meaning  | 
| 
 ACCESS_READ  | 
 Permission to read data from a resource and, by default, to execute the resource.  | 
| 
 ACCESS_WRITE  | 
 Permission to write data to the resource.  | 
| 
 ACCESS_CREATE  | 
 Permission to create an instance of the resource (such as a file); data can be written to the resource as the resource is created.  | 
| 
 ACCESS_EXEC  | 
 Permission to execute the resource.  | 
| 
 ACCESS_DELETE  | 
 Permission to delete the resource.  | 
| 
 ACCESS_ATRIB  | 
 Permission to modify the resource's attributes (such as the date and time when a file was last modified).  | 
| 
 ACCESS_PERM  | 
 Permission to modify the permissions (read, write, create, execute, and delete) assigned to a resource for a user or application.  | 
| 
 ACCESS_ALL  | 
 Permission to read, write, create, execute, and delete resources, and to modify their attributes and permissions.  |