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

Langage Delphi Discussion :

Erreur Eprivilege avec inpout32.dll


Sujet :

Langage Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Profil pro
    chercheur
    Inscrit en
    Avril 2004
    Messages
    830
    Détails du profil
    Informations personnelles :
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : chercheur

    Informations forums :
    Inscription : Avril 2004
    Messages : 830
    Par défaut Erreur Eprivilege avec inpout32.dll
    Bonjour
    J'utilise le port parallèle pour piloter des expériences. J'utilise pour celà INPOUT32.DLL sous XP. Jusqu'à maintenant çà a toujours marché.
    J'ai récupéré un assez vieux portable et l'appel de la dll me donne une erreur Eprivilege ( sous D3 comme sous D7 )
    Avez vous une solution ?
    Merci

  2. #2
    Expert éminent
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    14 090
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 14 090
    Par défaut
    Tu dois tenter de lancer une section de code invalide ! une zone mémoire qui n'est pas censé être exécutable
    J'en ai eu une récemment en C++Builder, je ne me rappelle pas de la cause, et pas de ce que j'avais fait, si ça me revient !

    Tu utilises la DLL en statique via external ou tu fais manuellement LoadLibrary\GetProcAdress
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  3. #3
    Membre très actif
    Profil pro
    chercheur
    Inscrit en
    Avril 2004
    Messages
    830
    Détails du profil
    Informations personnelles :
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : chercheur

    Informations forums :
    Inscription : Avril 2004
    Messages : 830
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    implementation
    function Inp32(port:integer):integer;Stdcall;external 'inpout32.dll' name 'Inp32';
    function Out32(port, valeur:integer):integer;Stdcall;external 'inpout32.dll' name 'Out32';
    procedure TForm1.Button1Click(Sender: TObject);
    begin
    button1.Caption:=inttostr(inp32($379));
    end;
    Cà marche sur toutes les machines, même celles qui n'ont pas de port parallèle, sauf une (qui en a un)

  4. #4
    Expert éminent
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    14 090
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 14 090
    Par défaut
    La Version de la DLL est la même ?

    Curieux que cela fonctionne ailleurs, dans les sources de Inpout32 de Logix4u

    Code c++ : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    void _stdcall Out32(short PortAddress, short data);
    short  _stdcall Inp32(short PortAddress);

    short c'est Smallint
    unsigned short c'est Word
    Integer ne me semble pas le bon type !

    Serait-ce une autre DLL ?
    Tu peux aussi utiliser directement DeviceIoControl, ou encore un CreateFile (le port pouvant être utilisé comme un fichier)
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  5. #5
    Membre très actif
    Profil pro
    chercheur
    Inscrit en
    Avril 2004
    Messages
    830
    Détails du profil
    Informations personnelles :
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : chercheur

    Informations forums :
    Inscription : Avril 2004
    Messages : 830
    Par défaut
    C'est la même que j'ai copiée.
    Il doit y avoir une option au niveau de windows ....

  6. #6
    Expert confirmé
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    11 142
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 11 142
    Par défaut
    Salut,
    Citation Envoyé par Nebulix Voir le message
    (...) Ça marche sur toutes les machines, même celles qui n'ont pas de port parallèle, sauf une (qui en a un)
    Désactivé dans le BIOS ?
    Occupé par un autre processus ?

  7. #7
    Membre très actif
    Profil pro
    chercheur
    Inscrit en
    Avril 2004
    Messages
    830
    Détails du profil
    Informations personnelles :
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : chercheur

    Informations forums :
    Inscription : Avril 2004
    Messages : 830
    Par défaut
    On pourrait le réactiver dans le BIOS ? Comment ?

  8. #8
    Expert confirmé
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    11 142
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 11 142
    Par défaut
    Yop !
    Citation Envoyé par Nebulix Voir le message
    On pourrait le réactiver dans le BIOS ? Comment ?
    Ben en allant dans le BIOS et en farfouillant : impossible de donner une procédure, c'est beaucoup trop "machine dependant".

Discussions similaires

  1. IIS Erreur 500 avec aspnet_isapi.dll
    Par lartistez dans le forum ASP.NET
    Réponses: 9
    Dernier message: 11/06/2015, 10h50
  2. Problème avec le registre d'état avec inpout32.dll
    Par tims12 dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 15/08/2009, 14h53
  3. Réponses: 2
    Dernier message: 25/03/2009, 10h51
  4. Erreur à l'execution avec des dll
    Par Jim_Nastiq dans le forum Visual C++
    Réponses: 2
    Dernier message: 02/03/2007, 15h15
  5. Réponses: 11
    Dernier message: 20/01/2006, 12h35

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