Creating an instance of the COM component with CLSID.....error: 80040112

aluccard Messages postés 22 Date d'inscription mercredi 30 mai 2007 Statut Membre Dernière intervention 11 octobre 2007 - 24 juil. 2007 à 17:03
cs_EBArtSoft Messages postés 4525 Date d'inscription dimanche 29 septembre 2002 Statut Modérateur Dernière intervention 22 avril 2019 - 24 juil. 2007 à 19:21
Bonjour,

j'ai un problème dont je ne pense pas être le seul a l'avoir apres avoir fouiner un peu partout sur le net.

J'ai développé une appli qui utilise le winsock Control 6.0 afin de récupérer des packets UDP.
Le soucis est que lorsque j'utilise mon appli sur un autre PC (win XP, Win 2000 Pro), j'obtient une erreur d'exécution.

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



************** Exception Text **************
System.Runtime.InteropServices.COMException (0x80040112): Creating an instance of the COM component with CLSID {248DD896-BB45-11CF-9ABC-0080C7E7B78D} from the IClassFactory failed due to the following error: 80040112.
   at Conductor.Conductor_UEVOL.UDP()
   at Conductor.Conductor_UEVOL.Button_Launch_ZC_Click(Object sender, EventArgs e)
   at System.Windows.Forms.Control.OnClick(EventArgs e)
   at System.Windows.Forms.Button.OnClick(EventArgs e)
   at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
   at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.ButtonBase.WndProc(Message& m)
   at System.Windows.Forms.Button.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

J'ai testé sur plusieurs PC donc
- 2 PC sous XP avec VBexpress 2005 d'installé et ça fonctionne (j'ai du rajouter le fichier mswinsock.ocx puis l'installer manuellement avec la commande "regsvr32 \windows\system32\MSWINSCK.OCX") et un autre PC sous Win 2000 Pro avec Visual Studio C++ d'installé (le fichier mswinsock.ocx s'y trouvais déja)
- 1 PC sous XP et 1 PC sous Win 2000Pro sans VB express 2005 ou autre d'installé.

Donc j'en conclu que mon application n'a pas l'air de fontionner si il y a pas un soft Visual Basic d'installé, est ce exacte? car je trouve ceci dommage de devoir installer l'outil de développement pour utiliser mon application.

en attendant une réponse

cordialement

Alu

6 réponses

aluccard Messages postés 22 Date d'inscription mercredi 30 mai 2007 Statut Membre Dernière intervention 11 octobre 2007
24 juil. 2007 à 17:07
pour information, j'ai tenté d'installer manuellement sur les PC l'activeX avec la commande
regsvr32 \windows\system32\MSWINSCK.OCX

l'installation m'a affiché un message du type "successfull" et lorsque je regarde dans mon registre, je trouve bien les clefs 248DD896-BB45-11CF-9ABC-0080C7E7B78D qui se sont crées (qui correspond au controle Winsock) mais j'ai toujours le même message d'erreur.
0
cs_EBArtSoft Messages postés 4525 Date d'inscription dimanche 29 septembre 2002 Statut Modérateur Dernière intervention 22 avril 2019 9
24 juil. 2007 à 17:29
Winsock 6 avec vb.net ? Quel est l'interet ?

faire peter le framework ?

@+

E.B.
0
aluccard Messages postés 22 Date d'inscription mercredi 30 mai 2007 Statut Membre Dernière intervention 11 octobre 2007
24 juil. 2007 à 17:40
heu non je crois pas enfin je comprend pas ce que tu veux dire par "peter le famework"

j'ai trouvé que cette solution pour lire des pacquets UDP en local (broadcast)

Il existe une autre solution?

voici le code que j'ai appliqué

 Private Function UDP()

        Dim EtatScn As Byte
        Dim socketUDP As New MSWinsockLib.Winsock
        Dim IPLocal As String

        IPLocal = socketUDP.LocalIP
        Dim udpClient As New UdpClient(New IPEndPoint(IPAddress.Parse(IPLocal), 1402))

        Try
            Dim RemoteIpEndPoint As New IPEndPoint(IPAddress.Any, 1402)
            Dim receiveBytes As [Byte]() = udpClient.Receive(RemoteIpEndPoint)
            Dim returnData As String = Encoding.ASCII.GetString(receiveBytes)

            EtatScn = receiveBytes(22)
            udpClient.Close()

        Catch e As Exception
            Console.WriteLine(e.ToString())
        End Try

        Return EtatScn

    End Function
0
aluccard Messages postés 22 Date d'inscription mercredi 30 mai 2007 Statut Membre Dernière intervention 11 octobre 2007
24 juil. 2007 à 18:16
c'est vrai qu'en regardant de plus pres mon code, j'utilise la classe Winsock pour déterminer l'adresse IP de mon PC.

Alors qu'il est possible de faire autrement, et ceci regle mon problème qui reste quand même sans réponse

Pour ceux que ça intersse et comment récupérer l'adresse IP du PC local
http://www.vbfrance.com/codes/RECEVOIR-IP-NET_31312.aspx

Si une personne aurait une explication concernant ce soucis de Controle ActiveX qui existe pas qu'avec le Winsock mais bien d'autre.

ça me parrait etre un problème général.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
24 juil. 2007 à 19:13
Je vois pas trop non plus l'interet d'utiliser Winsock avec .Net alors que le Framework integre de base tout ce qui est necessaire à la gestion du réseau.

Enfin bon chacun fait ce qu'il veut .......

---- Sevyc64  (alias Casy) ---- # LE PARTAGE EST NOTRE FORCE #   
0
cs_EBArtSoft Messages postés 4525 Date d'inscription dimanche 29 septembre 2002 Statut Modérateur Dernière intervention 22 avril 2019 9
24 juil. 2007 à 19:21
Voila qui devrait t'aider dans tes recherches :http://morpheus.developpez.com/reseauvbnet/

Courage et bonne pr@g

@+

E.B.
0
Rejoignez-nous