Purpose |
The ShellExecute function opens or prints a specified file. The file can be an executable file or a document file.
The file specified by the lpFile parameter can be a document file or an executable file. If the file is a document file, the ShellExecute function opens or prints it, depending on the value of the lpOperation parameter. If the file is an executable file, the ShellExecute function opens it, even if lpOperation specifies printing. |
Library | Transcribed by | Date of page | Updated on |
Kernel32.dll | J.Paris | 01.08.02 |
Restrictions on use |
Not available for Windows CE. With NT, it requires version 3.1 or later. HOWEVER THERE MIGHT BE SOME RESTRICTIONS WITH NT4; this issue is under testing right now. |
Declare 32-bit |
Declare Function ShellExecute Lib "Shell32.dll" Alias "ShellExecuteA" ( ByVal hwnd As Integer, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As SmallInt ) As Integer |
Required Type definition |
none |
Parameters | ||||||||||||||||||||||||||||||||||||||||
hWind |
handle to parent window
| |||||||||||||||||||||||||||||||||||||||
lpOperation |
pointer to a null-terminated string that specifies operation to perform
The lpOperation parameter can be NULL. In that case, the function opens the file specified by lpFile.
| |||||||||||||||||||||||||||||||||||||||
lpFile |
pointer a null-terminated string that specifies the file to open or print or the folder to open or explore. The function can open an executable file or a document file. The function can print a document file.
| |||||||||||||||||||||||||||||||||||||||
lpParameters |
pointer to string that specifies executable-file parameters.
If lpFile specifies an executable file, lpParameters is a pointer to a null-terminated string that specifies parameters to be passed to the application.
If lpFile specifies a document file, lpParameters should be NULL.
| |||||||||||||||||||||||||||||||||||||||
lpDirectory |
pointer to a null-terminated string that specifies default directory
| |||||||||||||||||||||||||||||||||||||||
nShowCmd |
If lpFile specifies an executable file, nShowCmd specifies how the application is to be shown when it is opened.
(Use numeric codes, or strings but you will have to include "define"s
for them in your program)
|
Return value | |||||||||||||||||||||||||||||||||||||||||||||
If the function succeeds, the return value is the instance handle of the application that was run, or the handle of a dynamic data exchange (DDE) server application.
Always >32. If the function fails, the return value is an error value that is less than or equal to 32. The following table lists these error values:
|
Example |
Declare Function ShellExecute Lib "Shell32.dll" Alias "ShellExecuteA" ( ByVal hwnd As Integer, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Integer ) As Integer Dim my_num As integer
'To open Windows explorer to the c:\xircom directory my_num = ShellExecute( 0, "explore", "c:\xircom","", "", 4)
'To display the c:\reginfo.txt in notepad my_num = ShellExecute( 0, "open", "c:\reginfo.txt","", "", 4)
'To open the c:\cubel.tab in a new instance of MapInfo my_num = ShellExecute( 0, "open", "c:\program files\mapinfo\professional 6.5\mapinfow.exe","c:\cubel.tab", "", 4)
'To open the c:\test.xls in a maximized window my_num = ShellExecute( 0, "open", "excel","c:\test.xls", "", 3)
'To print a word document my_num = ShellExecute( 0, "print", "c:\reginfo.doc","", "", 4)
|
Comments |
|
See also |