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 :

Comment transformer un programme VB en Plugin ?


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    125
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 125
    Par défaut Comment transformer un programme VB en Plugin ?
    Bonjour,

    J'ai écris un petit programme en Visual Basic 2008. Il affiche juste une petite fenêtre et fait quelques opérations.

    Je voudrais intégrer ce programme dans un autre programme qui propose d'intégrer des Plugins écris en VB .NET.

    Le problème, c'est que autant je n'ai pas eu de problèmes particuliers pour écrire un programme stand-alone, autant le transformer en Plugin, je ne sais pas faire.

    Le programme dans lequel je souhaite intégrer le plugin propose un SDK avec des outils pour cela, mais je ne comprends pas ce que je dois faire.

    La description des étapes à réaliser (en anglais, désolé), d'après la doc du programme principal (et ce que j'ai fait)

    1. Create a new project of type Class Library. OK, fait.

    2. Add references to the following libraries:
    — Add a reference to the assembly i2.TOTOTOTO.Plugins OK, fait.
    — Add a reference to the interop assembly Interop.TAATAAData OK, fait.

    3. Create a command, derived from i2TOTOPluginStandardCommand.
    i2TOTOPluginStandardCommand is an abstract base class that implements the Ii2TOTOPluginCommand interface. A plug-in may
    contain many command objects; each command object must have its own class derived from i2TOTOPluginStandardCommand.
    Heu ... Là, je suis perdu. Comment dois-je créer la commande ?

    4. Implement the Ii2TOTOPlugin interface.
    This interface defines the top-level plug-in object. Exactly one class implementing this interface is required. Remember to add your command to the collection of commands in the main plug-in interface.
    Pareil, je ne comprends pas ce que je dois faire.

    5. Build the plug-in assembly. Vu que je coince aux étapes 3 et 4, je ne peux pas créer l'Assembly. Ce point ne devrait pas être trop compliqué.

    Donc, actuellement, j'ai un programme VB qui fonctionne en mode standalone (une simple fenêtre qui s'ouvre).

    Si j'ai bien compris, je dois transformer l'application pour la passer de "Type d'Application" = "Application Windows Forms" à "Bibliothèque de Classe".

    Mais comment faire les étapes 3 et 4 ?

    Merci d'avance de votre aide (notez que je ne suis pas vraiment familier avec les histoires de Classes, d'Héritages, d'Interop, ...).

  2. #2
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 198
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 198
    Par défaut
    il faut hériter de la classe puis implémenter une interface
    ca rajoutera une structure de code automatiquement qu'il faudra ensuite que tu complètes

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    public class macommande
        inherits  i2TOTOPluginStandardCommand
     
        implements Ii2TOTOPlugin
     
    end class

    par contre je ne sais pas si la meme classe doit avoir l'inherits et l'implements, ou s'il faut 2 classes séparées, mais ca tu verras bien avec les membres qui apparaissent je pense
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    125
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 125
    Par défaut
    Merci de cette réponse qui me permet d'avancer d'un cran.

    Ce qui s'est affiché, c'est ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Public Overrides Sub Execute(ByVal chart As Object)
     
        End Sub
    Avec le message d'erreur suivant :
    Erreur 1
    La classe 'Plugin_TOTO.MaCommande' doit déclarer un 'Sub New', car sa classe de base 'i2.TOTO.Plugins.i2TOTOPluginStandardCommand' n'a pas de 'Sub New' accessible qu'il est possible d'appeler sans argument.
    J'ai donc créé un Sub New, mais je ne sais pas vraiment quoi mettre dedans.

    Quand je tape ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Public Sub New()
     
        End Sub
    j'ai le message d'erreur suivant :

    Erreur 1
    La première instruction de ce 'Sub New' doit être un appel à 'MyBase.New' ou 'MyClass.New', car la classe de base 'i2.TOTO.Plugins.i2TOTOPluginStandardCommand' de 'Plugin_TOTO.MaCommande' n'a pas de 'Sub New' accessible qu'il est possible d'appeler sans argument.
    Donc, je crée ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Public Sub New()
            MyBase.New()
        End Sub
    Je ne comprends pas où je dois indiquer que je veux appeler la forme que j'ai créée. Comment puis-je avoir l'information ?

    De façon plus générale, est-ce qu'il y a un site qui explique de façon simple (et en français si possible) ce qu'il faut faire en général ?
    Car j'ai peur de devoir vous embêter toutes les 5 minutes.

    Merci d'avance.

  4. #4
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 198
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 198
    Par défaut
    il ne peut pas y avoir de cas général
    chaque logiciel offrant la possibilité de faire des plugins décide de comment doivent être écrit les plugins

    donc il faut voir avec ceux qui ont fait l'appli dont tu veux faire un plugin
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

Discussions similaires

  1. Comment transformer ce programme matlab
    Par boumediene dans le forum MATLAB
    Réponses: 1
    Dernier message: 23/04/2013, 11h02
  2. Comment lancer Eclipse en incluant ses plugins
    Par eclie dans le forum Eclipse Platform
    Réponses: 8
    Dernier message: 19/02/2009, 08h45
  3. Réponses: 11
    Dernier message: 22/10/2007, 13h54
  4. Réponses: 8
    Dernier message: 05/06/2002, 11h55
  5. Comment débuter en programmation ?
    Par Marc Lussac dans le forum Débuter
    Réponses: 0
    Dernier message: 08/04/2002, 11h29

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