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 :

Class Not Declared


Sujet :

VB.NET

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 3
    Par défaut Class Not Declared
    Bonjour.

    Je ne pensais pas poster, mais je m'y vois obligé étant donné que je ne trouve pas de solutions.

    En effet, j'ai codé une application vb.net il y quelques temps que je distribue et qui marche très bien. Cependant, j'ai voulu faire une MàJ V 3.0 aujourd'hui que j'ai codé ces derniers jours.
    J'y inclus un client IRC, client pris d'un code d'un ami initialement codé en VB6. J'ai utilisé le traducteur de VS 2008 pour passer de VB6 à VB.NET et donc aucun problèmes. Le client utilisant winsock, j'ai du ajouter des .dll aux références et tout roule.
    Je n'ai pas eu de problèmes pour débugger ni pour compiler, j'ai testé l'application sur mes machines (2 PCs sous Vista x32 et une VM sous XP x32) sans soucis.

    Cependant, au moment de la MàJ, les utilisateurs ne peuvent plus utiliser l'application.

    En effet, la Form de login se charge, mais au moment de lancer la form principale une erreur apparait. Et c'est cette erreur que je ne comprend pas. Pourquoi cela aurait-il marché sur mes 3 machines alors que ça ne marche sur aucune autre ?
    J'imagine que ça vient du code vb6 traduit (quoi d'autre puisque ça marchait très bien avant).

    Voici l'erreur qu'un de mes utilisateur m'a envoyé :

    See the end of this message for details on invoking
    just-in-time (JIT) debugging instead of this dialog box.

    ************** Exception Text **************
    System.InvalidOperationException: An error occurred creating the form. See Exception.InnerException for details. The error is: Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)) ---> System.Runtime.InteropServices.COMException (0x80040154): Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG))
    at System.Windows.Forms.UnsafeNativeMethods.CoCreateInstance(Guid& clsid, Object punkOuter, Int32 context, Guid& iid)
    at System.Windows.Forms.AxHost.CreateWithoutLicense(Guid clsid)
    at System.Windows.Forms.AxHost.CreateWithLicense(String license, Guid clsid)
    at System.Windows.Forms.AxHost.CreateInstanceCore(Guid clsid)
    at System.Windows.Forms.AxHost.CreateInstance()
    at System.Windows.Forms.AxHost.GetOcxCreate()
    at System.Windows.Forms.AxHost.TransitionUpTo(Int32 state)
    at System.Windows.Forms.AxHost.CreateHandle()
    at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
    at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
    at System.Windows.Forms.AxHost.EndInit()
    at PocketBooter.Form1.InitializeComponent()
    --- End of inner exception stack trace ---
    at PocketBooter.My.MyProject.MyForms.Create__Instance__[T](T Instance)
    at PocketBooter.Form4.Timer1_Tick(Object sender, EventArgs e)
    at System.Windows.Forms.Timer.OnTick(EventArgs e)
    at System.Windows.Forms.Timer.TimerNativeWindow.WndProc(Message& m)
    at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


    ************** Loaded Assemblies **************
    mscorlib
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.4952 (win7RTMGDR.050727-4900)
    CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v2.0.50727/mscorlib.dll
    ----------------------------------------
    Pocket Booter
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.0.0
    CodeBase: file:///C:/Users/Administrator/Desktop/AJ/Pocket%20Booter.exe
    ----------------------------------------
    Microsoft.VisualBasic
    Assembly Version: 8.0.0.0
    Win32 Version: 8.0.50727.4927 (NetFXspW7.050727-4900)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/Microsoft.VisualBasic/8.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualBasic.dll
    ----------------------------------------
    System
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
    ----------------------------------------
    System.Windows.Forms
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
    ----------------------------------------
    System.Drawing
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
    ----------------------------------------
    System.Configuration
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Configuration/2.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
    ----------------------------------------
    System.Xml
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll
    ----------------------------------------
    System.Runtime.Remoting
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Runtime.Remoting/2.0.0.0__b77a5c561934e089/System.Runtime.Remoting.dll
    ----------------------------------------
    DevComponents.DotNetBar2
    Assembly Version: 8.1.0.7
    Win32 Version: 8.1.0.7
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/DevComponents.DotNetBar2/8.1.0.7__5fd520d36328f741/DevComponents.DotNetBar2.dll
    ----------------------------------------
    AxInterop.MSWinsockLib
    Assembly Version: 1.0.0.0
    Win32 Version: 1.0.0.0
    CodeBase: file:///C:/Users/Administrator/Desktop/AJ/AxInterop.MSWinsockLib.DLL
    ----------------------------------------
    Accessibility
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/Accessibility/2.0.0.0__b03f5f7f11d50a3a/Accessibility.dll
    ----------------------------------------

    ************** JIT Debugging **************
    To enable just-in-time (JIT) debugging, the .config file for this
    application or computer (machine.config) must have the
    jitDebugging value set in the system.windows.forms section.
    The application must also be compiled with debugging
    enabled.

    For example:

    <configuration>
    <system.windows.forms jitDebugging="true" />
    </configuration>

    When JIT debugging is enabled, any unhandled exception
    will be sent to the JIT debugger registered on the computer
    rather than be handled by this dialog box.
    Je ne sais pas comment régler ce problème .. Donc si quelqu'un peut m'aider, ça serait super.

    Aussi, je pense qu'utiliser System.Net.Sockets serait un bon choix, mais je ne sais pas comment faire pour passer de winsock aux sockets de .net

    Voilà, j'espère que j'ai été clair et que vous pourrez m'aider.

    Cordialement,

    -Irion.

  2. #2
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 196
    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 196
    Par défaut
    il faut registrer les dll com pour les utiliser (les dll .net n'ont pas cet inconvénient)

    regsvr32.exe "chemin de winsock ou autre dll"

    à intégrer dans le setup si tu livres winsock
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  3. #3
    Membre émérite Avatar de ctxnop
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2007
    Messages
    858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Morbihan (Bretagne)

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

    Informations forums :
    Inscription : Juillet 2007
    Messages : 858
    Par défaut
    Euuh
    winsock est une lib système fournie par Windows. Il ne faut pas la livrer et elle est sensée déjà être enregistrée. (En plus j'ai pas le souvenir qu'elle soit un COM)

  4. #4
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 196
    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 196
    Par défaut
    elle n'est pas fourni avec tous les windows
    elle était utilisable sous vb6 et faisait partie du runtime je crois
    et je pense bien que c'est une classe COM

    m'enfin on voit bien que c'est la recherche de l'activeX COM qui plante ... un autre activeX est utilisé ?

    sinon en théorie migrer une appli vb6 en vb.net avec l'assistant n'est qu'une vue de l'esprit, il vaut mieux tout réécrire...
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  5. #5
    Membre émérite Avatar de ctxnop
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2007
    Messages
    858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Morbihan (Bretagne)

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

    Informations forums :
    Inscription : Juillet 2007
    Messages : 858
    Par défaut
    Sous quel Windows n'est-elle pas fournie ???
    C'est une DLL en C qui fournit l'implémentation des socket sous windows et du TCP/IP.
    En gros, pas de winsock = pas de réseau. Elle est fournie depuis windows 95.

    Ca fait quelques années que je n'ai pas codé en C/C++ d'appli qui utilisent directement la winsock, mais je n'ai pas le souvenir de faire appel à du COM.
    Et je ne vois rien dans MSDN qui semble indiquer le contraire.

    Par contre, j'approuve fortement qu'il est préférable de re-coder

  6. #6
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 196
    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 196
    Par défaut
    winsock.dll surement, mais pour vb6 c'était un ocx posable sur les forms (fourni avec le runtime donc ^^) qui était utilisé, et vu qu'il a migré une appli vb6 ...
    (style un component de vb.net)

    ici on voit http://support.microsoft.com/kb/194784 qui contient Winsock Control 6.0 MSWinsck.OCX
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  7. #7
    Membre émérite Avatar de ctxnop
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2007
    Messages
    858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Morbihan (Bretagne)

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

    Informations forums :
    Inscription : Juillet 2007
    Messages : 858
    Par défaut
    Ahhhh j'avais complètement oublié qu'ils avaient fait tout plein d'ocx qui encapsulaient les dll C alors que le VB6 disposait de tout ce qu'il fallait pour faire des appels directs.
    Bon bah du coup effectivement, il faut qu'il soit enregistré et distribué.
    Mais vaudrait quand même mieux ré-écrire.

Discussions similaires

  1. Probleme "class" was not declared in this scope
    Par StingerBell dans le forum C++
    Réponses: 3
    Dernier message: 06/06/2014, 16h36
  2. Réponses: 6
    Dernier message: 22/11/2007, 19h46
  3. [JSF] JspServlet class not found
    Par anitshka dans le forum Servlets/JSP
    Réponses: 5
    Dernier message: 22/07/2005, 10h44
  4. TXMLCursor - Class not registered
    Par Jeweller dans le forum XMLRAD
    Réponses: 3
    Dernier message: 15/04/2005, 17h40
  5. [EJB Session] class not found exception ?
    Par champion dans le forum Wildfly/JBoss
    Réponses: 4
    Dernier message: 11/02/2005, 23h46

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