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

C# Discussion :

Ajout d'une reference d'un OCX mais message "Aucun constructeur n'est défini"


Sujet :

C#

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Avril 2013
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Avril 2013
    Messages : 31
    Points : 26
    Points
    26
    Par défaut Ajout d'une reference d'un OCX mais message "Aucun constructeur n'est défini"
    Bonjour à tous


    Je viens vers vous, vous pourriez m'expliquer quelque chose concernant l'ajout de référence d'un OCX. Je débute, il se peut que les termes utilisés ne soient pas les bons et je m'en excuse par avance.


    En effet, dans un projet j'ai pu ajouter un OCX que j'ai préalablement enregistrer dans mon OS.

    J'ai pu donc l'ajouter et explorer les objets qu'ils contient.


    Toutefois, lors de l'instanciation j'ai cette erreur :





    Pourriez vous m'indiquer quelle bétise je fais ?


    J'ai mis ll'OCX en question en pièce jointe.

    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
    33
    34
    35
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Text;
    using System.Windows.Forms;
    using System.IO;
    using EpsonFP2;
     
    namespace Fiscal3
        {
        public partial class Form1 : Form
            {
             EpsonFPControl fis = new EpsonFPControl();
     
            public Form1 ()
                {
                InitializeComponent();
                }
     
            private void button1_Click ( object sender, EventArgs e )
                {
     
                fis.PortOpen();
     
                fis.opProgDataOra(28, 02, 2014, 12, 00);
     
                fis.PortClose();
     
     
                }
     
            }
        }


    Merci
    Images attachées Images attachées  
    Fichiers attachés Fichiers attachés

  2. #2
    Membre chevronné
    Avatar de PixelJuice
    Homme Profil pro
    Ingénieur .NET & Game Designer
    Inscrit en
    Janvier 2014
    Messages
    640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Ingénieur .NET & Game Designer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2014
    Messages : 640
    Points : 2 149
    Points
    2 149
    Par défaut
    Bonjour,

    je n'ai pas pu regarder ce qu'il y a dans l'OCX mais sache qu'une classe n'a pas forcément un constructeur.

    Essaye de voir les fonctions de ton composant COM afin de voir si tu peux l'utiliser d'une autre façon.

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Avril 2013
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Avril 2013
    Messages : 31
    Points : 26
    Points
    26
    Par défaut
    J'avoue à demi-mot qu'avoir mis le fichier en piece joint était un souhait que quelqu'un m'explique comment faire

  4. #4
    Membre expérimenté
    Homme Profil pro
    Développeur .Net / Delphi
    Inscrit en
    Juillet 2002
    Messages
    738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Développeur .Net / Delphi
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2002
    Messages : 738
    Points : 1 745
    Points
    1 745
    Par défaut
    Bonjour,

    De bonne composition, j'ai testé et je n'ai pas de problème :
    Nom : Capture.PNG
Affichages : 417
Taille : 9,8 Ko
    Maintenant je ne suis pas un expert en ActiveX ... Loin de là !!
    Lorsque tu fais F12 sur EpsonFpControl pour atteindre la définition, tu arrives à quoi ? Pour ma part :

    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
    #region Assembly Interop.EpsonFP2.dll, v1.7.0.0// C:\temp\test\WindowsFormsApplication1\WindowsFormsApplication1\obj\Debug\Interop.EpsonFP2.dll
    #endregion
     
     
    using System.Runtime.InteropServices;
     
     
    namespace EpsonFP2
    {
        [CoClass(typeof(EpsonFPControlClass))]
        [Guid("275B97A9-411D-4A38-9644-E3F548EB59C0")]
        public interface EpsonFPControl : _EpsonFPControl, __EpsonFPControl_Event
        {
        }
    }
    Peut être en supprimant la référence et en la recréant ... Je ne sais pas ...

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Avril 2013
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Avril 2013
    Messages : 31
    Points : 26
    Points
    26
    Par défaut
    Bonjour,


    Merci Ebastien d'avoir pris le temps de tester.

    En faisant F12, je n'ai pas pareil que toi :


    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
     
    using System;
    using System.Runtime.InteropServices;
     
    namespace EpsonFP2
    {
        [Guid("0A454FD5-91A3-4AEF-9FEC-07EDE1DA4421")]
        [ClassInterface(0)]
        [TypeLibType(36)]
        [ComSourceInterfaces("EpsonFP2.__EpsonFPControl")]
        public class EpsonFPControlClass : _EpsonFPControl, EpsonFPControl, __EpsonFPControl_Event
        {
            [DispId(1745027138)]
            public virtual short COMPort { get; set; }
            [DispId(1745027137)]
            public virtual enumEPS_EUROSETTINGS EuroSettings { get; set; }
            [DispId(1745027568)]

    J'ai testé sur une autre machine (Machine Virtuelle), j'ai exactement la même chose.

    Aurais je fais quelque chose de travers ?

  6. #6
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Avril 2013
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Avril 2013
    Messages : 31
    Points : 26
    Points
    26
    Par défaut
    Bon, j'ai testé un Projet avec le Framework 4, et je n'ai pas cette erreur.




    Par contre, les machines ciblent n'auront pas ce Framework.




    Donc, dès que je change le Framework vers le 3.5, j'ai de nouveau le soucis




    Ebastien, as tu fais le test en Framwork 4 ? Si oui, peux tu tester de changer vers le 3.5 (si ça te dérange pas) ?




    Merci

  7. #7
    Membre expérimenté
    Homme Profil pro
    Développeur .Net / Delphi
    Inscrit en
    Juillet 2002
    Messages
    738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Développeur .Net / Delphi
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2002
    Messages : 738
    Points : 1 745
    Points
    1 745
    Par défaut
    Bonjour,

    Désolé, assez pris ces derniers temps.

    J'ai les mêmes résultats que toi :
    Framework >= 4 => Ok
    Framework 3.5 => Même résultat que toi.
    Encore une fois, je n'y connais pas grand chose en OCX. Je fouillerai dès que j'aurai 5 minutes. Si j'ai des infos, je te tiens au courant.

    eb.

Discussions similaires

  1. Réponses: 3
    Dernier message: 21/06/2012, 10h18
  2. [XL-2007] Ajout d'une reference
    Par martinmacfly dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 15/11/2011, 21h09
  3. Réponses: 2
    Dernier message: 20/02/2011, 18h48
  4. Réponses: 1
    Dernier message: 23/10/2009, 10h13
  5. Réponses: 4
    Dernier message: 22/07/2009, 15h55

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