- Use in service mode
- Required application feature
- Running an APK file setup
- Application in the background: Specific case from Android 10
In french: LanceAppliAssociée
Opens a document in its associated application. The application is opened first, then the specified document.
- The application used to open the document is the one associated with the extension of the document in Windows (INI file or registry). This associated application may differ according to the configurations used.
- This document is opened on the server. This function can be used on the development computer because this compute is considered as being the server.
- This document must be found on the server or at any Internet address. This document is opened on the computer of the Web user.
- The application used to open the document is the application corresponding to the MIME type associated with the file extension. If several applications correspond to the same type of file, a dialog box will be displayed to select the application to start.
- ShellExecute is a blocking function: the application will continue to run when closing the document and its associated application. The document must be on the computer.
- To display any page in a browser, you can also use BrowserRunApp.
// Open a site in the current browser
<Result> = ShellExecute(<File name> [, <Verb>])
- True if the document was opened,
- False otherwise.
This parameter is not available. This function returns no result.
if the application is run with a Java virtual machine (JRE) earlier than version 1.6.
<File name>: Character string
Name and full (or relative) path of document to open. A UNC path can be used.
If space characters are found in the name or path of the document to open, the quotes found around this parameter must be tripled.
This parameter can also correspond to a Windows shortcut.
This parameter can correspond to a full path, to a relative path or to a URI.
- "http://www.windev.com": starts the Web browser on the specified page.
- "geo:1.44951,43.604363": starts Google Maps or equivalent.
- "mailto:firstname.lastname@example.org" starts the application for sending emails.
- "sms:0612345678": starts the application for sending SMSs.
The files found in the application directory (or in one of its sub-directories) are not accessible by most of the external applications. It is recommended to use ShellExecute with files located on the external memory of the device (e.g.: sdcard) because they are accessible from all the applications.
Only the files found in the "appdata" directory can be handled. No Internet URL can be specified.
<Verb>: Optional character string
Verb that must be used to start the document. The verbs are defined for each application, to indicate the actions that can be performed. The most common verbs are open or print. If this parameter is not specified, the verb used will be the default verb for the type of document.
Use in service mode
When ShellExecute is used in service mode, it runs the associated application but the interface of this application is not visible.
Required application feature
When this function is used, an application feature is declared in the application generation wizard.
Required feature: Family and corporate networks
This feature allows the applications to use incoming and outgoing accesses to the family and corporate networks.
Running an APK file setup
From Android 8, to run the setup of an APK file with ShellExecute, it is necessary to modify the permissions required by the application.
Required permission: REQUEST_INSTALL_PACKAGES.
This permission is used to install packages.
Application in the background: Specific case from Android 10
From Android 10, it is no longer possible to open a window when the application is in the background.
ShellExecute can open a window. If this function is used while the application is in the background, a fatal error will occur.
- It is possible to determine if the application is in the background using InBackgroundMode.
- If an application needs to interact with the user while it is in the background, the solution is to display a notification (via the Notification type). The application will be brought back to the foreground when the notification is clicked, if the ActivateApplication property is set to True. You can also open a window from the procedure passed to the ActionClick property.
Business / UI classification: Neutral code
This page is also available for…