Cet ex VB5 de contrôle Active X permet de créer un lien hypertext dans votre application VB vers une URL, document ou adresse email.
Programmation > Visual Basic
Recherche :   
Actualité Système Salon Concours Outils Programmation Devparadise Programmation HTML .Net JavaScript VBScript ASP PHP Visual Basic Perl Java Active X SQL XML WAP Delphi Graphisme Flash Web Design Promotion Référencement Publicité Valeur de votre site Outils Systèmes Windows Unix Linux Benchmark Hardware Réseaux locaux Droit Sécurité
Démo d'hyperlien et shellexecute en vb5
  Auteur : Philippe PETIT

Cet ex VB5 de contrôle Active X permet de créer un lien hypertext dans votre application VB vers une URL, document ou adresse email.

Publicité 
L'API ShellExecute permet d'ouvrir un document dans le programme qui lui est associé. En effet, cette API se base sur l'extension du document pour trouver le programme, par ex TEST.XLS va être ouvert par EXCEL.
On peut aussi utiliser cette API pour ouvrir le navigateur par défaut sur une adresse URL précise comme par exemple avec la fonction suivante :

Function StartDoc(DocName As String) As Long

Dim Scr_hDC As Long
Scr_hDC = GetDesktopWindow()
StartDoc = ShellExecute(Scr_hDC, "Open", DocName, "", "C:\", SW_SHOWNORMAL)

End Function

Et dans une procédure :

Dim Ret as long
Ret = StartDoc("c:\test\test.xls") ' ouvre test.xls avec Excel

ou bien encore :

Ret = StartDoc("http://www.devparadise.com/") ' ouvre le site developer's paradise avec IE, Netscape ...
Ret = StartDoc("mailto:annonceur@devparadise.com") ' création d'un nouveau message pour annonceur@devparadise.com

If Ret <= 32 Then

    'il y a une erreur --> traitement
    Select Case Ret
      Case SE_ERR_FNF
          msg = "Fichier introuvable"
      Case SE_ERR_PNF
          msg = "Path introuvable"
      Case SE_ERR_ACCESSDENIED
          msg = "Acces refusé"
      Case SE_ERR_OOM
          msg = "Mémoire insuffisante"
      Case SE_ERR_DLLNOTFOUND
          msg = "DLL introuvable"
      Case SE_ERR_SHARE
          msg = "Violation de partage"
      Case SE_ERR_ASSOCINCOMPLETE
          msg = "Association de fichier incomplete ou invalide"
      Case SE_ERR_DDETIMEOUT
          msg = "Liaison DDE : Temps dépassé"
      Case SE_ERR_DDEFAIL
          msg = "Transaction DDE impossible"
      Case SE_ERR_DDEBUSY
          msg = "Liaison DDE occupée"
      Case SE_ERR_NOASSOC
          msg = "Pas d'association pour cette extention de fichier"
      Case ERROR_BAD_FORMAT
          msg = "Fichier EXE invalide"
      Case Else
          msg = "Erreur inconnue"

    End Select
    MsgBox msg

End If

Si vous remplacez la commande "Open" par "Print" le document sera directement imprimé.
L'exemple complet (les sources sont inclus) est disponible à http://www.devparadise.com/cgi-bin/ devsrc2.pl?Conf=r&ID=72 . Cet exemple montre l'utilisation de ShellExecute pour créer un contrôle OCX permettant de créer un lien Hypertexte vers une url, document ...
Nous venons de mettre en ligne une DLL active X permettant de faire en VB en autres des envois de mails par SMTP, du reverse IP disponible à http://www.devparadise.com/cgi-bin/ devsrc2.pl?Conf=r&ID=71 ...
NB : Les exemples fournis sont en ASP mais trés facilement transposable.

A lire aussi sur Devparadise.com :
  • ASP et la création d'images à la volée
  • Visioneuse d'image en Visual Basic
  • Lecture de la ligne de commande en Visual Basic.
  • Génération de fichiers PDF à la volée.
  • Service NT en Visual Basic
  • A télécharger aussi sur Devparadise.com :
  • filtre ISAPI FastCGI pour IIS
  • Contrôleur d'attributs (Source VB)
  • Visioneuse d'image en Visual Basic
  • TX Text Control
  • ServiceMill Control

  • © 1997-2008 tous droits réservés Devparadise.com
    Les logos, et marques déposées sont la propriété de leurs détenteurs respectifs.
    Devparadise.com s'est engagé à respecter la confidentialité des données personnelles régies par la loi 78-17 du 6 janvier 1978.
    Déclaration C.N.I.L. n° 621623
    ActiveX,API,VB