com.sun.jna.platform.win32

## Class Shell32Util

- java.lang.Object
- - com.sun.jna.platform.win32.Shell32Util

    public abstract class Shell32Util
    extends java.lang.Object

Shell32 Utility API.

Author:
  dblock[at]dblock.org, markus[at]headcrashing[dot]eu

### Constructor Summary

Constructors
Constructor and Description
`Shell32Util()`

### Method Summary

All Methods Static Methods Concrete Methods
`static java.lang.String[]` `CommandLineToArgv(java.lang.String cmdLine)` Parses a command line string and returns an array of Strings of the command line arguments.
`static java.lang.String` `getFolderPath(int nFolder)` Get a special folder path.
`static java.lang.String` `getFolderPath(WinDef.HWND hwnd, int nFolder, WinDef.DWORD dwFlags)` Get a special folder path.
`static java.lang.String` `getKnownFolderPath(Guid.GUID guid)` Retrieves the full path of a known folder identified by the folder's KNOWNFOLDERID.
`static java.lang.String` `getSpecialFolderPath(int csidl, boolean create)` Retrieves the path of a special folder, identified by its CSIDL.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### Shell32Util

    public Shell32Util()

### Method Detail

#### getFolderPath

    public static java.lang.String getFolderPath(WinDef.HWND hwnd,
                                                 int nFolder,
                                                 WinDef.DWORD dwFlags)

Get a special folder path.

Parameters:
  `hwnd` - Parent window.
  `nFolder` - Folder CSLID.
  `dwFlags` - Flags.
Returns:
  Special folder.

#### getFolderPath

    public static java.lang.String getFolderPath(int nFolder)

Get a special folder path.

Parameters:
  `nFolder` - Folder CSLID.
Returns:
  Special folder path.

#### getKnownFolderPath

    public static java.lang.String getKnownFolderPath(Guid.GUID guid)
                                               throws Win32Exception

Retrieves the full path of a known folder identified by the folder's KNOWNFOLDERID. This function replaces `getFolderPath(com.sun.jna.platform.win32.WinDef.HWND, int, com.sun.jna.platform.win32.WinDef.DWORD)`. That older function is now simply a wrapper for getKnownFolderPath

Parameters:
  `guid` - the KNOWNFOLDERS GUID as defined in `KnownFolders`
Returns:
  the path of the known folder. The returned path does not include a trailing backslash. For example, "C:\Users" is returned rather than "C:\Users\".
Throws:
  `Win32Exception` - if the guid references a KNOWNFOLDERID which does not have a path (such as a folder marked as KF_CATEGORY_VIRTUAL) or that the KNOWNFOLDERID is not present on the system. Not all KNOWNFOLDERID values are present on all systems.

#### getSpecialFolderPath

    public static final java.lang.String getSpecialFolderPath(int csidl,
                                                              boolean create)

Retrieves the path of a special folder, identified by its CSIDL.

Parameters:
  `csidl` - A CSIDL that identifies the folder of interest. If a virtual folder is specified, this function will fail.
  `create` - Indicates whether the folder should be created if it does not already exist. If this value is nonzero, the folder is created. If this value is zero, the folder is not created.
Returns:
  The drive and path of the specified folder

#### CommandLineToArgv

    public static final java.lang.String[] CommandLineToArgv(java.lang.String cmdLine)

Parses a command line string and returns an array of Strings of the command line arguments.

Parameters:
  `cmdLine` - A string that contains the full command line. If this parameter is an empty string the function returns the path to the current executable file.
Returns:
  An array of strings, similar to `argv`.

Copyright © 2007-2018 Timothy Wall. All Rights Reserved.