Using this method enables you to open either a file or a URL in your preferred application:
Static Sub Open ( URL As String [ , Wait As Boolean ] )
This method supports URLs for the protocols: file, ftp, http and https. The specification of 'file://' is optional. It is not recommended to use the method as root!
When a file is hosted, the file opens in the preferred application for files of this type:
[1] Public Sub btnDesktopOpenFile_Click() [2] [3] Desktop.Open("file://" & User.Home &/ "apache_start.sh") ' Editor gedit [4] [5] ' Desktop.Open("file://" & User.Home &/ "Buchprojekt/Kapitel14/k14.23_MausRad.odt") ' → OpenLibre [6] ' Desktop.Open(User.Home &/ "WebSite/CC/c.php") ' → BlueFish (PHP-Counter) o.k. [7] [8] End ' btnDesktopOpenFile_Click()
On the other hand, if a URL is provided for the protocols ftp, http or https, the URL is opened in the user's preferred Web browser.
Example 1
[1] Public Sub btnDesktopOpenURL1_Click() [2] [3] Desktop.Open("https://alfahosting.de/kunden/index.php/Benutzer:Login") ' o.k. [4] [5] ' Desktop.Open("http://gambas-buch.de") ' o.k. [6] ' Desktop.Open("http://www.gambas-buch.de") ' o.k. [7] ' Desktop.Open("http://127.0.0.1/~hans/dw/doku.php") ' lokale URI o.k. [8] [9] End
Example 2
[1] Public Sub btnDesktopOpenURL2_Click() [2] Desktop.Open("ftp://ftp.fh-hannover.de/pub/dos/tcpip") [3] End ' btnDesktopOpenURL2_Click()
The protocol must be explicitly specified, otherwise an error message will appear in the console of the IDE - as with the following two (faulty) calls:
(A) Desktop.Open("gambas-buch.de")\\ (B) Desktop.Open("www.gambas-buch.de")
The error message in the console of the IDE for calling (A) - in case (B) it looks similar - is understandable. Since no allowed protocol (ftp, http or https) has been specified, the type 'file' is obviously assumed automatically:
gvfs-open: file:///home/hans/gambas-buch.de: Error opening the location: Error when retrieving the information for file "/home/hans/gambas-buch.de": File or directory not found
In practice, you do not see this error message. Since the error is intercepted internally, nothing else happens - in the true sense of the word.
The following call in a console obviously shows the error for case (B):
hans@linux:~$ gbx3 /home/hans/DesktopOpen gvfs-open: file:///home/hans/www.gambas-buch.de: Error opening the location: Error when retrieving the information for file "/home/hans/gambas-buch.de": File or directory not found hans@linux:~$