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 Discussion :

[DLL] Extraire un sous-ensemble d'une application


Sujet :

Windows

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    198
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 198
    Points : 101
    Points
    101
    Par défaut [DLL] Extraire un sous-ensemble d'une application
    Bonjour,

    Nous utilisons une application cliente sous Windows qui contient plusieurs utilitaires en ligne de commande. Certains utilisateurs n'ont besoin que de ces outils et n'ont pas d'utilité de l'IHM, sans compter le cout de licence. Nous voulons installer trois des ces utilitaires sur des postes. Nous avons identifié facilement trois DLL nécessaires et deux programmes fonctionnent parfaitement. Malheureusement le troisième nous renvoie l'erreur suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Le point d'entrée de procédure DSGetLogEventIds est introuvable dans la bibliothèque de liaison dynamique vmdsapi.dll
    En utilisant Dependency Walker aucune autre DLL n'apparait comme nécessaire mais nous avons également un message d'erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Error:At least one module has an unresolved import due to a missing function in a implicite dependent module.
    Warning:At least one module has an unresolved import due to a missing function in a implicite dependent module.
    Si nous avons toutes les DLL que manque-t-il pour ça fonctionne ?

  2. #2
    Modérateur
    Avatar de sevyc64
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    10 227
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 227
    Points : 28 228
    Points
    28 228
    Par défaut
    si j'en crois les informations fournies dans le document à cette adresse : http://infohost.nmt.edu/~mahesh/Docs/servjdev.pdf , page 532/533

    Si tu déploie sur un poste ou la partie serveur de ton logiciel est déjà installée, tu n'as aucune dll à fournir
    Si tu déploie sur un poste ou seule la partie client est installée, tu dois fournir la dll vmdsapi.dll
    Si tu déploie sur un poste ou ni la partie serveur, ni la partie client n'a été installé, tu dois fournir en plus de vmdsapi.dll, les dlls uvclnt32.dll et unirpc32.dll
    Ces 2 dernières dlls sont à récupérer et à installer dans le dossier System de Windows (soit généralement C:\Windows\System32)

    Merci Google.

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    198
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 198
    Points : 101
    Points
    101
    Par défaut
    Le document auquel tu fais référence est ancien, les librairies se nomment aujourd'hui DSCLNT32.DLL et dsrpc32.dll

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    198
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 198
    Points : 101
    Points
    101
    Par défaut
    J'ai déjà fait le test de copier toutes les dll de l'application dans le répertoire des utilitaires et ça ne change rien. Ne faut-il pas déclarer quelque chose dans la base de registre ?

  5. #5
    Modérateur
    Avatar de sevyc64
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    10 227
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 227
    Points : 28 228
    Points
    28 228
    Par défaut
    d'après divers messages trouvés sur le net, il semblerait pas que ce soit nécessaire, juste la copie des 3 dlls devrait suffire.

    Cependant, je ne connais rien à ton logiciel, et je ne saurais pas en dire plus.

    Tu peux toujours essayer d'enregistrer les dll dans la base de registre, ça coute rien d'essayer.

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    198
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 198
    Points : 101
    Points
    101
    Par défaut
    J'ai fait fait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    regsvr32.exe "D:\DLL\vmdsapi.dll"
    regsvr32.exe "D:\DLL\DSCLNT32.DLL"
    regsvr32.exe "D:\DLL\dsrpc32.dll"
    mais à chaque fois j'ai le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    D:\DLL\ma_bib.dll a été chargé mais le point d'entrée DllRegisterServer est introuvable.
    Ce fichier ne peut être enregistré.

  7. #7
    Modérateur
    Avatar de sevyc64
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    10 227
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 227
    Points : 28 228
    Points
    28 228
    Par défaut
    c'est qu'elles n'ont pas besoin d'être enregistrées. C'est bien ce qu'il ressort des différentes infos que l'on peut trouver sur le net.

    DependencyWalker ne te donne pas plus d'info sur le module maquant? Tu n'as pas quelques lignes en rouge qui t'indiquerais le nom de ce module ?

  8. #8
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    198
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 198
    Points : 101
    Points
    101
    Par défaut
    En rouge : vmdsapi.dll et mpr.dll, car les deux ont une fonction en rouge, dont DSGetLogEventIds qui apparaît dans le message d'erreur à l'exécution.
    mpr.dll est dans Windows/system32 et même en le copient dans le même répertoire que les exe il n'y pas de différence.

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    198
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 198
    Points : 101
    Points
    101
    Par défaut
    Personne n'a d'idée ?

  10. #10
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    198
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 198
    Points : 101
    Points
    101
    Par défaut
    L'éditeur soutient que ça doit marcher mais apparemment pas depuis cette version.

Discussions similaires

  1. Samba sous Ubuntu avec une application web en PHP
    Par Cristabelle dans le forum Ubuntu
    Réponses: 0
    Dernier message: 21/05/2010, 14h36
  2. Extraire des sous ensembles de BOOST
    Par MenshaKaine dans le forum Boost
    Réponses: 5
    Dernier message: 22/12/2009, 12h14
  3. [LINQ To Object] Sous-ensemble d'une liste
    Par farfadet dans le forum Linq
    Réponses: 6
    Dernier message: 18/11/2008, 00h31
  4. Réponses: 0
    Dernier message: 11/11/2007, 16h04
  5. sous ensemble d'une liste
    Par adel25 dans le forum C++
    Réponses: 1
    Dernier message: 23/08/2005, 16h50

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