IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB 6 et antérieur Discussion :

[VB6] Programme sans interface graphique


Sujet :

VB 6 et antérieur

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    décembre 2004
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : décembre 2004
    Messages : 49
    Points : 60
    Points
    60
    Par défaut [VB6] Programme sans interface graphique
    Bonjour à tous,

    Je voudrais s'il est possible de créer un .EXE avec VB6 qui ne lance pas d'interface graphique. Comme un programme lancé à partir d'une fenêtre DOS.

    Autre question corollaire : comment faire pour écrire des choses sur la sortie standard (stdout) ?

    Merci pour votre aide.

  2. #2
    Membre éprouvé
    Avatar de méphistopheles
    Profil pro
    Inscrit en
    janvier 2005
    Messages
    1 551
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : janvier 2005
    Messages : 1 551
    Points : 1 220
    Points
    1 220
    Par défaut
    q'entend -tu pasr pas d'interface graphique? i tu veux lancer une fenetre dos, tu peux, et pour cacher tes feuille, regarde du coté de hide, mais je vois pas trop à quoi ça sert d'utiliser vb dans ce cas.
    Méphistophélès
    Si la solution ne résout pas votre problème, changez le problème...
    Cours et tutoriels C++ - FAQ C++ - Forum C++.

  3. #3
    Rédacteur
    Avatar de jacma
    Profil pro
    Inscrit en
    juillet 2002
    Messages
    612
    Détails du profil
    Informations personnelles :
    Âge : 79
    Localisation : France

    Informations forums :
    Inscription : juillet 2002
    Messages : 612
    Points : 1 239
    Points
    1 239
    Par défaut
    Document ActiveX

  4. #4
    Membre éclairé Avatar de Le Pharaon
    Profil pro
    Inscrit en
    mai 2004
    Messages
    880
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : mai 2004
    Messages : 880
    Points : 742
    Points
    742
    Par défaut
    Je crois qu'il veut dire une application de type console
    Regarde ici
    Scuse me while I kiss the sky ! Jimi Hendrix

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    décembre 2004
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : décembre 2004
    Messages : 49
    Points : 60
    Points
    60
    Par défaut
    Oui, c'est bien cela : je veux créer une application de type console qui s'exécute dans une fenêtre DOS.

    Merci pour le lien, cela répond bien à ma question ; mais il me manque encore la méthode pour écrire du texte dans la fenêtre DOS.

    Une idée ?

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    décembre 2004
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : décembre 2004
    Messages : 49
    Points : 60
    Points
    60
    Par défaut
    Bon voilà ce que j'ai trouvé. C'est un peu lourd mais cela fonctionne.
    Si quelqu'un a quelque chose de plus "smart" qu'il n'hésite surtout pas ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
     
    Private Declare Function GetStdHandle Lib "kernel32" (ByVal nStdHandle As Long) _
        As Long
    Private Declare Function WriteFile Lib "kernel32" (ByVal hFile As Long, _
        lpBuffer As Any, ByVal nNumberOfBytesToWrite As Long, _
        lpNumberOfBytesWritten As Long, lpOverlapped As Any) As Long
     
    Private Const STD_OUTPUT_HANDLE = -11&
     
     
    Sub WriteToStdOutput(ByVal Text As String)
        Dim hStdOut As Long
        Dim ret As Long
        Dim bytesWritten As Long
     
        ' Obtention de l'objet pour le canal de sortie standard
        hStdOut = GetStdHandle(STD_OUTPUT_HANDLE)
     
        ' Ecriture sur le canal de sortie standard
        ret = WriteFile(hStdOut, ByVal Text, Len(Text), bytesWritten, ByVal 0&)
     
        ' Gestion des erreur
        If ret = 0 Then
            Err.Raise 1001, , "Unable to write to standard output"
        ElseIf bytesWritten < Len(Text) Then
            Err.Raise 1002, , "Incomplete write operation"
        End If
    End Sub
     
    Sub Main()
      WriteToStdOutput ("coucou")
    End Sub
    Puis il faut générer le .EXE et ensuite modifier l'exe avec la ligne de commande suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "c:\program files\Microsoft visual studio\vb98\link.exe" /edit /subsystem:console votre-fichier.exe

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. afficher tableau sans interface graphique
    Par christophe_halgand dans le forum MATLAB
    Réponses: 5
    Dernier message: 11/03/2008, 12h12
  2. Programme sans interface graphique et évenements.
    Par necralbert dans le forum Langage
    Réponses: 1
    Dernier message: 31/08/2007, 00h16
  3. faire un programme sans interface
    Par timsah dans le forum C++Builder
    Réponses: 8
    Dernier message: 01/02/2006, 10h16
  4. ActiveX dans un projet sans interface graphique
    Par Nalfouille dans le forum MFC
    Réponses: 6
    Dernier message: 04/01/2006, 17h30
  5. [Kylix] Programme sans interface graphique
    Par pewpew2001 dans le forum EDI
    Réponses: 1
    Dernier message: 06/10/2005, 19h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo