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.NET Discussion :

Compiler une appplication vb.net avec une app vb


Sujet :

VB.NET

  1. #1
    Membre régulier
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2015
    Messages
    128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2015
    Messages : 128
    Points : 109
    Points
    109
    Par défaut Compiler une appplication vb.net avec une app vb
    bnjrs, bon alors ce que j'ai besoin de faire c'est :


    j'ai une premiere app en tant que lancher (on va appeler P1)

    P1 va lire ce fichier : "C:/toto.txt"

    elle va le lire et se stoper quand elle atteint une ligne ou y'a écrit "#Start"

    y'a rien de difficile jusqu'à là,


    l'aplication P1 a une variable ou y'a écrit dedont :

    (je vais pas metre tout le code mais cette partie la est ce qui va nous intérrésser)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    if input = "bobo" then
    '..
    elseif input = "zozo" then
    '..
    elseif input = "xoxo" then
    '..
    end if
    'reste du code ..)
    alors ce que P1 va faire c'est que pour chaque ligne il lit avant le "#Start" sa va être un chemin de fichier qu'il va lire et ajouter son code dans la variable que j'ai montré précédement avant le "end if", puis sava compiler le code dans la variable en une application windows forms vb.net et va la lancer


    rien n'est difficile mais je n'est aucunne idée sur comment je vais compiler le code dans la variable, et rien sur internet, help svp

  2. #2
    Expert confirmé
    Avatar de wallace1
    Homme Profil pro
    Administrateur systèmes
    Inscrit en
    Octobre 2008
    Messages
    1 966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 966
    Points : 4 005
    Points
    4 005
    Billets dans le blog
    7
    Par défaut
    bonjour,

    Ton explication n est pas très clair et j espere que tu ne penses pas vouloir compiler un exe avec seulement un nom de variable en faisant abstraction du Sub Main (communement appelé l'EntryPoint) ?
    breff... je te donne un element de reponse pour compiler du code à la volée :

    CodedomCompiler

    PS dans un de mes projets (DotNetPatcher) sur mon bitbucket il y a de quoi t inspirer

    --> ou alors jettes un oeil du côté du compilateur inherent a la version du framework : vbc.exe

    a+

  3. #3
    Membre régulier
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2015
    Messages
    128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2015
    Messages : 128
    Points : 109
    Points
    109
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    '(je vais pas mettre tout le code mais cette partie la est ce qui va nous intéresser)
    if input = "bobo" then
    '..
    elseif input = "zozo" then
    '..
    elseif input = "xoxo" then
    '..
    end if
    '(reste du code ..)
    j'ai bien dit : (je vais pas mettre tout le code mais cette partie la est ce qui va nous intéresser)

    sinon c'est parfait ce que tu m'a donné, merci

  4. #4
    Membre émérite Avatar de mactwist69
    Homme Profil pro
    Développement VB.NET
    Inscrit en
    Janvier 2007
    Messages
    1 707
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Développement VB.NET
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 707
    Points : 2 528
    Points
    2 528
    Par défaut
    Tu veux, compiler un projet, en fonction d'un texte dans un fichier... et le lancer.

    C'est... compliqué.

    Pourquoi vouloir faire cela ? Quelle est la raison ?

    ton programme peux très bien prendre des arguments (du texte) quand il se lance... Et l'utiliser dans le code, avec des if...
    Ou tu peux lancer ton programme, et c'est lui qui ira lire le fichier texte...

    Pourquoi avoir besoin de recompiler ? Ca changera tout ? C'est beaucoup de code qui change ?
    L'avenir appartient à ceux... dont les ouvriers se lèvent tôt. (Coluche)

  5. #5
    Membre régulier
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2015
    Messages
    128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2015
    Messages : 128
    Points : 109
    Points
    109
    Par défaut
    enfaite ce que je suis entrain de faire c'est un ptit language interprété sous vb, (je sais que vb est pas du tout un bon language pour sa mais moi je l'est fait juste pour moi pas besoin de grosse performance

    bref donc quand je veut rajouter quelque chose qui n'est pas intégré dans le language de base je doit l'include ..

    dans le language y'a une function ExecuteC ou y'a toutes les commandes intégré donc supossant je veut intégré opengl dedont je peut pas le faire sauf si je modifie l'éxecuteur de code, donc ce que je vais faire c'est : quand j'ouvre mon programe dans mon language sa va lancer un lancher qui va checker si y'a des includes et si y'a il les rajoute dans le code de la function ExecuteC (et je rajoute les imports nécéssaires en vb, c'est un peu comme une dll pour un language normal ..

    et ce que m'a donner wallace m'a l'air pas mal, mais je doit vérifier si je peut utiliser ce qu'il m'a donner pour des : windows forms

    au niveau des parametres de l'application et niveau graphique je laisse tout de base

    et niveau du code oui y'a dans les 3k si je me trempe pas

  6. #6
    Membre régulier
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2015
    Messages
    128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2015
    Messages : 128
    Points : 109
    Points
    109
    Par défaut
    up, svp vraiment j'ai besoin de sa

  7. #7
    Expert confirmé
    Avatar de wallace1
    Homme Profil pro
    Administrateur systèmes
    Inscrit en
    Octobre 2008
    Messages
    1 966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 966
    Points : 4 005
    Points
    4 005
    Billets dans le blog
    7
    Par défaut
    Citation Envoyé par themine702 Voir le message
    up, svp vraiment j'ai besoin de sa
    C'est quoi la question o_O ??

  8. #8
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 904
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 904
    Points : 10 168
    Points
    10 168
    Billets dans le blog
    36
    Par défaut
    Tu vas trouver que c'est une réponse de broche à foin et je l'assume.

    Si tu veux absolument du VB interprété, pourquoi ne pas partir de VBA (peu importe l'application, je dirais) et de te faire un/des modules de classe ?

    À vrai dire, j'ai comme l'impression que tu vas devoir programmer tellement de garde-fous et de contrôles d'horreurs que cela donnera une méga usine à gaz et pas juste un petit interpréteur.
    À ma connaissance, le seul personnage qui a été diagnostiqué comme étant allergique au mot effort. c'est Gaston Lagaffe.

    Ô Saint Excel, Grand Dieu de l'Inutile.

    Excel n'a jamais été, n'est pas et ne sera jamais un SGBD, c'est pour cela que Excel s'appelle Excel et ne s'appelle pas Access junior.

  9. #9
    Membre régulier
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2015
    Messages
    128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2015
    Messages : 128
    Points : 109
    Points
    109
    Par défaut
    @clementmarcote, j'ai pensé à quelque chose ! les programes vb sont pas compiler en natif il sont compiler en JIT donc je peut modifier leur code après compilation sa pourra marcher donc ce qui me faut là c'est comment modifier un .exe compillé en JIT avec une app VB

  10. #10
    Expert confirmé
    Avatar de wallace1
    Homme Profil pro
    Administrateur systèmes
    Inscrit en
    Octobre 2008
    Messages
    1 966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 966
    Points : 4 005
    Points
    4 005
    Billets dans le blog
    7
    Par défaut
    Citation Envoyé par themine702 Voir le message
    @clementmarcote, j'ai pensé à quelque chose ! les programes vb sont pas compiler en natif il sont compiler en JIT donc je peut modifier leur code après compilation sa pourra marcher donc ce qui me faut là c'est comment modifier un .exe compillé en JIT avec une app VB
    Me semblait t'avoir déjà orienté sur le sujet .......

    PS dans un de mes projets (DotNetPatcher) sur mon bitbucket il y a de quoi t inspirer
    Au cas où tu ne saurais pas allé sur mon Blog ou Bitbucket.

    En bref... si tu veux modifier un exe compilé en dotnet il existe la librairie Dnlib ou MonoCecil.

    ATI (à titre info) : j'ai utilisé la librairie Dnlib pour mon projet DotNetRenamer et MonoCecil pour DotNetPatcher

    La balle est dans ton camps maintenant !

    A+

  11. #11
    Membre régulier
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2015
    Messages
    128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2015
    Messages : 128
    Points : 109
    Points
    109
    Par défaut
    @wallace1 c'est ce que je veut mais on peut pas compiler une windows form app avec sa, la windows form a beaucoup de parametres, et les classes de disign la partie xml .. et j'ai pas trouver pour sa

  12. #12
    Expert confirmé
    Avatar de wallace1
    Homme Profil pro
    Administrateur systèmes
    Inscrit en
    Octobre 2008
    Messages
    1 966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 966
    Points : 4 005
    Points
    4 005
    Billets dans le blog
    7
    Par défaut
    Citation Envoyé par themine702 Voir le message
    @wallace1 c'est ce que je veut mais on peut pas compiler une windows form app avec sa, la windows form a beaucoup de parametres, et les classes de disign la partie xml .. et j'ai pas trouver pour sa
    Que racontes-tu ?? (Classes de design ? partie xml ?)
    Si le compilateur sait le faire alors CodeDom saura également le faire, je ne comprends pas ton inquiétude si ce n'est effectivement comme évoqué par ami mactwist69 la lourdeur de ce genre de translation suivant la complexité de ton projet dont tu es le seul à connaitre le périmètre !

    Codedom compiler permet de compiler ce que tu veux, il suffit simplement :

    --> de générer toi-même ton/tes fichier(s) de code source (VbNet, C#, F#, J#,...etc..) au format texte avec extension adequate.
    --> de penser à importer les espaces de noms adequates dans le fichier de code source
    --> d'ajouter les ressources désirées dans le fichier de code source
    --> de compiler (en tenant compte : de la version du framework cible sur le client qui exécute ton programme pour générer à la volée et que le point d'entrée de ton binaire généré sera une Shared Sub Main dans laquelle sera instanciée une form)

    Dnlib permet également de générer des assembly à a volée, d'ajouter des routines/des ressources/...etc, d'en modifier le contenu.

    Il existe également ceci : linq2codedom pour t'aider à générer le code source,.... une piste à explorer.....

    Tu devrais commencer à lire un peu le fonctionnement de tout ça (les ressources) ensuite on pourrait en débattre.

    PS : La méconnaissance du but exact recherché dans ton projet ne me permet pas de te proposer LA SOLUTION adaptée, mais il est vrai qu'il faut tout de même considérer l'intervention d'ami mactwist69 concernant l'appel de ton programme en ligne de commande.

  13. #13
    Membre régulier
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2015
    Messages
    128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2015
    Messages : 128
    Points : 109
    Points
    109
    Par défaut
    k merci

Discussions similaires

  1. Réponses: 3
    Dernier message: 31/03/2011, 20h03
  2. rajouter des doublons avec une macro dans une colonne
    Par Banel dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 07/08/2008, 23h58
  3. Ecrire avec une taille de police toute petite
    Par yobuntu dans le forum Mise en forme
    Réponses: 2
    Dernier message: 13/02/2007, 14h04
  4. [C#] [.NET CF] des fichiers de données avec l'application
    Par safisoft13 dans le forum Windows Forms
    Réponses: 3
    Dernier message: 06/06/2005, 09h30
  5. [VB.NET] Problem de récupération de variable avec une DLL
    Par ludovic85 dans le forum Windows Forms
    Réponses: 11
    Dernier message: 19/01/2005, 11h37

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