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

Windows Mobile .NET Discussion :

[CF][VB.NET 1.1] Pourquoi j'obtiens un "register failed" avec une dll ?


Sujet :

Windows Mobile .NET

  1. #1
    Membre habitué Avatar de joefou
    Profil pro
    Inscrit en
    Février 2005
    Messages
    248
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 248
    Points : 177
    Points
    177
    Par défaut [CF][VB.NET 1.1] Pourquoi j'obtiens un "register failed" avec une dll ?
    [VS.NET 2003]

    Salut à tous !

    J'ai un soucis avec une .dll que j'inclus dans un petit projet de test tout bête: j'ai un fichier nommé USICF.dll dans mon répertoire de projet, je fais Ajouter une référence au projet, je sélectionne bien ce fichier, ça passe, et le code est le suivant:

    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
    36
    37
    38
    39
     
    Public Class Form1
        Inherits System.Windows.Forms.Form
        Friend WithEvents MainMenu1 As System.Windows.Forms.MainMenu
        Dim myUsi As USICF.USIClass
     
    #Region " Code généré par le Concepteur Windows Form "
     
        Public Sub New()
            MyBase.New()
     
            'Cet appel est requis par le Concepteur Windows Form.
            InitializeComponent()
     
            'Ajoutez une initialisation quelconque après l'appel
     InitializeComponent()
            myUsi = New USICF.USIClass(Me)
        End Sub
     
        'La méthode substituée Dispose du formulaire pour nettoyer la liste des
     composants.
        Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
            MyBase.Dispose(disposing)
        End Sub
     
        'REMARQUE*: la procédure suivante est requise par le Concepteur
     Windows Form
        'Elle peut être modifiée en utilisant le Concepteur Windows Form.  
        'Ne la modifiez pas en utilisant l'éditeur de code.
        Private Sub InitializeComponent()
            Me.MainMenu1 = New System.Windows.Forms.MainMenu()
            Me.Menu = Me.MainMenu1
            Me.Text = "Form1"
     
        End Sub
     
    #End Region
     
    End Class
    Quand je lance mon appli, la ligne "myUsi = New USICF.USIClass(Me)" provoque un plantage et j'obtiens le message suivant:
    Une exception non gérée du type 'System.ApplicationException' s'est produite dans USICF.dll

    Informations supplémentaires*: USI register failed
    Je comprend pas

    Quelqu'un a t il une idée siouplai ?
    Merci !

  2. #2
    Expert éminent
    Avatar de neguib
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 627
    Détails du profil
    Informations personnelles :
    Âge : 64
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Points : 7 879
    Points
    7 879
    Par défaut
    USICF.dll ne serait elle pas un COM que tu n'as pas compilé en conséquence :

  3. #3
    Membre habitué Avatar de joefou
    Profil pro
    Inscrit en
    Février 2005
    Messages
    248
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 248
    Points : 177
    Points
    177
    Par défaut
    Tu veux dire compilé dans le langage que j'utilise ? en l'occurrence en VB.NET ? je ne dispose pas de ces sources...

    J'avais déjà utilisé des dll externes dans d'autres applis (assez vieille, c'était ezftp) et cela ne m'avait pas posé de soucis pour les référencer et les utiliser...

  4. #4
    Expert éminent
    Avatar de neguib
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 627
    Détails du profil
    Informations personnelles :
    Âge : 64
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Points : 7 879
    Points
    7 879
    Par défaut
    regardes si ce lien peut t'aider Regasm.exe

  5. #5
    Membre habitué Avatar de joefou
    Profil pro
    Inscrit en
    Février 2005
    Messages
    248
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 248
    Points : 177
    Points
    177
    Par défaut
    Effectivement ça m'a aidé !
    Il y était fait référence de l'unicité de l'enregistrement d'une dll...
    j'ai tout d'abord lancé regasm.exe, j'ai retiré et rajouté ma référence sur ma dll dans le projet, j'ai complètement reseté mon PPC pour avoir la config d'origine (comme je ne savais pas comment il enregistrait les dll j'ai tout effacé comme un sauvage ! ).
    J'ai relancé mon appli et là plus d'erreur register failed. J'ai essayé de lancer une autre appli utilisant la mêle dll, et là aussi succès. Pourvu que ça dure !

    Merci Neguib !

  6. #6
    Membre expérimenté

    Homme Profil pro
    Senior Développeur JEE
    Inscrit en
    Avril 2002
    Messages
    795
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Belgique

    Informations professionnelles :
    Activité : Senior Développeur JEE
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2002
    Messages : 795
    Points : 1 660
    Points
    1 660
    Par défaut
    Bon et bien moi je déterre ce sujet

    J'ai exactement le même problème, à part que l'erreur survient la deuxième fois que je lance l'application.

    Pour que l'application refonctionne à nouveau je dois faire un warm boot de mon pda.

    J'essaye la commande suivante

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    regasm USICF.dll /tld:USICF.tld
    Et ensuite il devient grossier.

    Setting environment for using Microsoft Visual Studio 2008 x86 tools.

    D:\Development\Microsoft Visual Studio 9.0\VC>regasm D:\Development\NIS\72_USICF
    _V25\Bin\USICF.dll /tlb:USICF.tlb
    Microsoft (R) .NET Framework Assembly Registration Utility 2.0.50727.3053
    Copyright (C) Microsoft Corporation 1998-2004. All rights reserved.

    Types registered successfully
    RegAsm : error RA0000 : Type library exporter encountered an error while process
    ing 'USICF.Callback, USICF'. Error: Type library exporter cannot load type 'USIC
    F.Callback' (error: System.IO.FileNotFoundException: Could not load file or asse
    mbly 'Microsoft.WindowsCE.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToke
    n=969db8053d3322ac' or one of its dependencies. The system cannot find the file
    specified.
    File name: 'Microsoft.WindowsCE.Forms, Version=2.0.0.0, Culture=neutral, PublicK
    eyToken=969db8053d3322ac' ---> System.IO.FileNotFoundException: Could not load f
    ile or assembly 'Microsoft.WindowsCE.Forms, Version=1.0.5000.0, Culture=neutral,
    PublicKeyToken=969db8053d3322ac, Retargetable=Yes' or one of its dependencies.
    The system cannot find the file specified.
    File name: 'Microsoft.WindowsCE.Forms, Version=1.0.5000.0, Culture=neutral, Publ
    icKeyToken=969db8053d3322ac, Retargetable=Yes'

    WRN: Assembly binding logging is turned OFF.
    To enable assembly bind failure logging, set the registry value [HKLM\Software\M
    icrosoft\Fusion!EnableLog] (DWORD) to 1.
    Note: There is some performance penalty associated with assembly bind failure lo
    gging.
    To turn this feature off, remove the registry value [HKLM\Software\Microsoft\Fus
    ion!EnableLog].


    ).
    Est ce que l'erreur provient du fait que je développe avec le CF 3.5 ??

    Merci d'avance pour vos réponses.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [WD8] Passage de paramètre par valeur à une sub avec une dll .net
    Par didierbi dans le forum WinDev
    Réponses: 3
    Dernier message: 19/06/2009, 17h21
  2. Réponses: 0
    Dernier message: 04/08/2008, 17h05
  3. [VB.net] Probleme avec une dll pour l'enregistrer
    Par Diablo_22 dans le forum Windows Forms
    Réponses: 6
    Dernier message: 09/08/2006, 20h41
  4. Réponses: 2
    Dernier message: 28/04/2006, 17h51
  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