web-dev-qa-db-fra.com

URL ouverte Visual Basic avec navigateur par défaut

Modifier

Pour VB 6

Fin éditer

Cela semble être une solution facile et je n’aime pas particulièrement le langage Visual Basic, mais comment puis-je ouvrir une URL dans le navigateur Web par défaut, en utilisant du code?

Modifier
Pourquoi cette erreur persiste-t-elle?

Un appel à la fonction PInvoke 'CrackleMail! WindowsApplication1.FormFinal :: ShellExecute' a déséquilibré la pile . Cela est probablement dû au fait que la signature PInvoke gérée ne correspond pas à la signature cible non gérée . Vérifiez que la convention d'appel et les paramètres de la signature PInvoke Correspondent à la signature non gérée cible.

13
NoodleOfDeath

VB.NET:

System.Diagnostics.Process.Start("http://example.com")

VB 6 (pas sûr):

Declare Function ShellExecuteA Lib "Shell32.dll" ( _
    ByVal hWnd As IntPtr, _
    ByVal lpOperation As String, _
    ByVal lpFile As String, _
    ByVal lpParameters As String, _
    ByVal lpDirectory As String, _
    ByVal nShowCmd As Integer) As IntPtr

ShellExecuteA(Me.Handle, "open", "http://example.com", "", "", 4)
11
abatishchev

Le code de la réponse acceptée provoquait une erreur de compilation pour moi J'ai obtenu le code ci-dessous auprès de MSDN Utilisez ShellExecute pour lancer le navigateur Web par défaut

Private Declare Function ShellExecute _
                            Lib "Shell32.dll" _
                            Alias "ShellExecuteA"( _
                            ByVal hwnd As Long, _
                            ByVal lpOperation As String, _
                            ByVal lpFile As String, _
                            ByVal lpParameters As String, _
                            ByVal lpDirectory As String, _
                            ByVal nShowCmd As Long) _
                            As Long

Private Sub Command1_Click()
   Dim r As Long
   r = ShellExecute(0, "open", "http://www.Microsoft.com", 0, 0, 1)
End Sub
12
kjack

C'est simple! Utilisez simplement la méthode Wscript createobject

CreateObject("Wscript.Shell").Run "www.example.com"
2
user5576820
Option Explicit

'Link the kernel method that allows a process to be open/spawn

Private Declare Function ShellExecute _
                            Lib "Shell32.dll" _
                            Alias "ShellExecuteA" ( _
                            ByVal hwnd As Long, _
                            ByVal lpOperation As String, _
                            ByVal lpFile As String, _
                            ByVal lpParameters As String, _
                            ByVal lpDirectory As String, _
                            ByVal nShowCmd As Long) _
                            As Long

Private Sub mnuAbrirNavegador_Click(Index As Integer)
    OpenUrl("http://www.Microsoft.com")
End Sub

Private Sub OpenUrl(ByVal url As String)
    r = ShellExecute(0, "open", url, 0, 0, 1)
End Sub