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 :

Violation d'accès Delphi


Sujet :

Langage Delphi

  1. #1
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2010
    Messages
    270
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Argentine

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Avril 2010
    Messages : 270
    Points : 391
    Points
    391
    Par défaut Violation d'accès Delphi
    Bonjour à tous!!

    J'ai un soucis avec une application Delphi, je la ance normal, ca marche et quand je souhaite lancer une fonction, j'ai un petit message sympa qui apparait

    classe d'Exception EAccessViolation avec le message "Violation d''acces 0046BC9B dans le module"
    J'ai fait quelques recherches et ca aurait à voir avec une dll...

    Vous en pensez quoi?

    Merci

  2. #2
    Membre confirmé
    Homme Profil pro
    Directeur de projet
    Inscrit en
    Février 2006
    Messages
    537
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : Belgique

    Informations professionnelles :
    Activité : Directeur de projet
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2006
    Messages : 537
    Points : 460
    Points
    460
    Par défaut
    Pas grand chose sans le code de la fonction qui lève l'exception
    Ils ne savaient pas que c'était impossible, alors ils l'ont fait !

  3. #3
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2010
    Messages
    270
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Argentine

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Avril 2010
    Messages : 270
    Points : 391
    Points
    391
    Par défaut
    Bonjour,

    Lors de cette erreur, j'ai cette ligne qui est surlignée en rouge

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    p_OLEApp.Selection.Find.ClearFormatting;

  4. #4
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 522
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    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 : 13 522
    Points : 25 052
    Points
    25 052
    Par défaut
    Tu as vérifier que tous les objets sont correctement initialiser ?

    p_OLEApp est-il un OLEVariant (Late Binding) ou un TWordDocument (Early Binding) ?

    Ton code est je suppose inspiré de la FAQ Word > Modification du texte
    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 averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2010
    Messages
    270
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Argentine

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Avril 2010
    Messages : 270
    Points : 391
    Points
    391
    Par défaut
    Le p_OLEApp est passé en paramètre dans ma fonction, et c'est bien un OLEVariant.

  6. #6
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2010
    Messages
    270
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Argentine

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Avril 2010
    Messages : 270
    Points : 391
    Points
    391
    Par défaut
    Avez-vous déjà entendu ce problème de dll??

    Merci

  7. #7
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 522
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    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 : 13 522
    Points : 25 052
    Points
    25 052
    Par défaut
    tu l'instancie comment le paramètre passé à p_OLEApp ?

    Une Violation d'Accès, c'est tellement banal, d'où sors-tu que cela vient d'une DLL ! laquelle ?
    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

  8. #8
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2010
    Messages
    270
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Argentine

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Avril 2010
    Messages : 270
    Points : 391
    Points
    391
    Par défaut
    En fait, mon programme marchait normal et depuis hier aprem, ca me met cette erreur...

    Le p_OLEApp n'est pas vraiment instancié mais ca marchait quand même.

    Dans mon journal d'évènement, j'ai un chargement de module sxs.dll et de suite apres j'ai cette exception qui se lève

  9. #9
    Rédacteur/Modérateur
    Avatar de ero-sennin
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2005
    Messages
    2 965
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Nord (Nord Pas de Calais)

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

    Informations forums :
    Inscription : Juillet 2005
    Messages : 2 965
    Points : 4 935
    Points
    4 935
    Par défaut
    Salut,

    Et si tu nous montrais un peu de code, car comme c'est parti, on risque de ne pas aller bien loin ...

  10. #10
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2010
    Messages
    270
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Argentine

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Avril 2010
    Messages : 270
    Points : 391
    Points
    391
    Par défaut
    Salut,

    voici un bout le code de ma fonction

    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
    function Extraction.Analyser(p_OLEApp : OLEVariant;p_Style, PatternDebExi
    , PatternFin, StyleDesc : string; PosDesc,Loc,TypeExtract,ordreExi,indiceDoublon,sourceExi : integer; DescrLong : boolean;liste : IStrMap) : IStrMap;
    
    var
    
     Trouvee : boolean;
      CorpsExpReg,CorpsExpRegv2,PageExi,RefExi,TitreExi,ParaExi,DescLongue,verifExi : string;
      RegExpExi : IRegex;
      mc : IMatchCollection;
    begin
      if (PosDesc = 1) or (PosDesc = 2) then
      begin
        CorpsExpReg := '<'+ PatternDebExi +'?*^13';
      end else
        CorpsExpReg := '<'+ PatternDebExi +'?* ';
    
      CorpsExpRegv2 := '^\s*(' + PatternDebExi + '\w*\s?)(.*)';
      RegExpExi := Regex.Create(CorpsExpRegv2);
      // recherche dans le document
      p_OLEApp.Selection.Find.ClearFormatting;
      // recherche par expression réguliere
      p_OLEApp.Selection.Find.Text := CorpsExpReg;
      p_OLEApp.Selection.Find.MatchWildcards := true
    En rouge, là où on me met l'erreur

  11. #11
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 522
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    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 : 13 522
    Points : 25 052
    Points
    25 052
    Par défaut
    Regex c'est le nom de classe d'implémentation du IRegex
    Ce n'est pas plutôt CoRegex ou TRegexp de C++Builder ?

    Regex ? System.Text.RegularExpressions.Regex ?
    c'est .NET ? Delphi Prism ???
    Tu as importé cette classe en Delphi Win32 ?
    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

  12. #12
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2010
    Messages
    270
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Argentine

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Avril 2010
    Messages : 270
    Points : 391
    Points
    391
    Par défaut
    Bonjour,

    oui j'ai importé un code VB qui a été réécrit pour Delphi. Mais je ne pense pas que l'erreur proviennent des expressions regulières.

  13. #13
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2010
    Messages
    270
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Argentine

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Avril 2010
    Messages : 270
    Points : 391
    Points
    391
    Par défaut
    Personne ne voit donc d'où cela peut venir??

  14. #14
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 522
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    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 : 13 522
    Points : 25 052
    Points
    25 052
    Par défaut
    as-tu essayé uniquement ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    p_OLEApp := CreateOleObject('Word.Application');
    p_OLEApp.Selection.Find.ClearFormatting;
    Au fur et à mesure, tu ajoutes des fonctionnalités pour retrouver ta situation actuelle (peu importe la gueule du code, c'est pour débugguer), peut-être qu'à un moment donné ça plantera, il est possible que ce n'est pas la fonction ClearFormatting qui plante mais la façon dont Selection ou Find ont été initialisé ou un effet de bord imprévu d'un autre objet, parfois le débuggueur s'arrête mais pas au bon endroit dans la pile d'exception
    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

  15. #15
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2010
    Messages
    270
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Argentine

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Avril 2010
    Messages : 270
    Points : 391
    Points
    391
    Par défaut
    Oui je viens d'essayer de faire ce que tu m'a dit mais l'erreur est toujours la!! En intégrant mon code petit à petit aussi je retrouve la même erreur!! Je pense que cette fonction ClearFormatting pose bien problème.. ce qui m'étonne c'est que cette erreur soit survenue il y a peu de temps, avant elle ne venait pas pourrir mon programme!!

  16. #16
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2010
    Messages
    270
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Argentine

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Avril 2010
    Messages : 270
    Points : 391
    Points
    391
    Par défaut
    Bonjour,

    j'ai trouvé ce qui n'allait pas, j'essayais de faire une sélection sur un document que je n'avais pas ouvert auparavant!! J'ai rajouté une ligne pour l'ouverture du document et tout se passe bien!!

    Merci à tous de vous être penchés sur mon problème!!

    Bonne journée!!

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

Discussions similaires

  1. Migration Delphi 7 Delphi xe, violation d'accès
    Par lolo2943 dans le forum Langage
    Réponses: 5
    Dernier message: 31/05/2011, 15h03
  2. violation d'accès avec delphi 2009
    Par lazaro dans le forum Débuter
    Réponses: 0
    Dernier message: 25/10/2009, 11h13
  3. Delphi 2005 / Violation d'accès
    Par ninouti dans le forum Langage
    Réponses: 5
    Dernier message: 19/10/2005, 11h51
  4. Violation d'accès apres Close
    Par SegmentationFault dans le forum Bases de données
    Réponses: 3
    Dernier message: 05/07/2004, 16h46

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