SHELLEXECUTEINFO
Specifies an
enumerated type that defines flags used with the IShellFolder::EnumObjects
method.
The SHELLEXECUTEINFO
structure contains information used by the ShellExecuteEx
typedef struct _SHELLEXECUTEINFO { // sei
DWORD cbSize;
ULONG fMask;
HWND hwnd;
LPCSTR lpVerb;
LPCSTR lpFile;
LPCSTR lpParameters;
LPCSTR lpDirectory;
int nShow;
HINSTANCE
hInstApp;
//
Optional members
LPVOID
lpIDList;
LPCSTR
lpClass;
HKEY hkeyClass;
DWORD dwHotKey;
HANDLE
hIcon;
HANDLE
hProcess;
} SHELLEXECUTEINFO, FAR *LPSHELLEXECUTEINFO;
Members
cbSize
Specifies the
size, in bytes, of the structure.
fMask
This is an
array of flags that indicate the content and validity of the other structure
members. You can specify a combination of the following values:
Value |
Meaning |
SEE_MASK_CLASSKEY |
Use the
class key given by the hkeyClass member. |
SEE_MASK_CLASSNAME |
Use the
class name given by the lpClass member. |
SEE_MASK_CONNECTNETDRV |
The lpFile
member is a Universal Naming Convention (UNC) path of a file on a network.
Validate the share and connect to a drive letter. |
SEE_MASK_DOENVSUBST |
Expand any
environment variables specified in the string given by the lpDirectory
or lpFile member. |
SEE_MASK_FLAG_DDEWAIT |
Wait for
the DDE conversation to terminate before returning, if the ShellExecuteEx |
SEE_MASK_FLAG_NO_UI |
Do not
display an error message box if an error occurs. |
SEE_MASK_HOTKEY |
Use the hot
key given by the dwHotKey member. |
SEE_MASK_ICON |
Use the
icon given by the hIcon member. |
SEE_MASK_IDLIST |
Use the
item identifier list given by the lpIDList member. |
SEE_MASK_INVOKEIDLIST |
Use the
item identifier list given by the lpIDList member to invoke an
application. If this member is NULL, the function creates an item identifier
list and invokes the application. SEE_MASK_INVOKEIDLIST overrides
SEE_MASK_IDLIST. |
SEE_MASK_NOCLOSEPROCESS |
Leave the
process running after the ShellExecuteEx |
hwnd
Handle to the
parent window for any message boxes that the system may produce while executing
this function (for example, for error reporting).
lpVerb
Pointer to a
string specifying the name of a verb. The verb specifies an action for the
application to perform. This member defaults to Open if no verb is specified.
lpFile
Pointer to a
list of null-terminated strings that specify the names of the files to open or
print. The function can open an executable file or a document file. The
function can print a document file. If the path is not included with a name,
the current directory is assumed.
lpParameters
Pointer to a
null-terminated string containing the application parameters. The parameters
must be separated by spaces. To include double quotation marks, you must
enclose the marks in double quotation marks, as in the following example:
sei.lpParameters = "An example:
\"\"\"quoted text\"\"\"";
In this case, the application receives three parameters: An, example:,
and quoted text .
If lpFile specifies a document file, lpParameters should
be NULL.
lpDirectory
Pointer to a
null-terminated string that specifies the name of the working directory. If
this member is not specified, the current directory is used as the working
directory.
nShow
Show flags.
Can be one of the SW_ values described for the ShowWindow
hInstApp
Handle to the
instance of the application that was started or an error value if the
application could not be started. (This handle could also be the handle of a
dynamic data exchange [DDE] server application.) This member is set on return.
Error values can be one of the following:
Value |
Meaning |
SE_ERR_FNF |
File not
found |
SE_ERR_PNF |
Path not
found |
SE_ERR_ACCESSDENIED |
Access
denied |
SE_ERR_OOM |
Out of
memory |
SE_ERR_DLLNOTFOUND |
Dynamic-link
library not found |
SE_ERR_SHARE |
Cannot
share open file |
SE_ERR_ASSOCINCOMPLETE |
File
association information not complete |
SE_ERR_DDETIMEOUT |
DDE
operation timed out |
SE_ERR_DDEFAIL |
DDE
operation failed |
SE_ERR_DDEBUSY |
DDE
operation busy |
SE_ERR_NOASSOC |
File
association not available |
lpIDList
Pointer to an
ITEMIDLIST
lpClass
Pointer to a
null-terminated string specifying the name of a file class or a globally unique
identifier (GUID). Ignored if fMask is not set to SEE_MASK_CLASSNAME.
hkeyClass
Handle to the
registry key for the file class. Ignored if fMask is not set to SEE_MASK_CLASSKEY.
dwHotKey
Hot key to
associate with the application. The low-order word is the virtual-key code, and
the high-order word is a modifier flag (HOTKEYF_). For a list of modifier
flags, see the description of the WM_SETHOTKEY
hIcon
Handle to the
icon for the file class. Ignored if fMask is not set to SEE_MASK_ICON.
hProcess
Handle to the
newly started application. This member is set on return and is always NULL if fMask
is not set to SEE_MASK_NOCLOSEPROCESS.
See Also