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

VB 6 et antérieur Discussion :

Récupérer un numéro de processus


Sujet :

VB 6 et antérieur

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé

    Profil pro
    Inscrit en
    Avril 2004
    Messages
    95
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 95
    Par défaut Récupérer un numéro de processus
    Bonjour,

    Je voudrais gérer les erreurs dans mon programme, ce programme génère un fichier Excel.

    Le but est lorsque j'ai une erreur, je voudrais tué le processus Excel.

    J'ai trouvé sur la FAQ du code permettant de le faire ; cela fonctionne très bien, mais je tue toutes les tâches Excel.

    Pour palier à ce problème je pensais donc récupérer le numéro ID du processus lors de l'ouverture d'Excel, pour, lorsqu'il y a une erreur je tue le processus par son numéro et non plus par son nom.

    Est-ce que quelqu'un connaît la commande permettant de récupérer le numéro de processus ?

    En cas de questions, ne pas hésiter à me la poser.
    Merci d'avance.

    Coin.

  2. #2
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Par défaut
    Quel est ton environnement de développement?
    N'oubliez pas de cliquer sur quand vous avez obtenu ou trouvé vous-même la réponse à votre question.
    Si vous trouvez seul, pensez à poster votre solution. Elle peut servir à d'autres!
    Pensez aussi à voter pour les réponses qui vous ont aidés.
    ------------
    Je dois beaucoup de mes connaissances à mes erreurs!

  3. #3
    Membre confirmé

    Profil pro
    Inscrit en
    Avril 2004
    Messages
    95
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 95
    Par défaut
    Désolé

    je suis en VB6 SP6

  4. #4
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Par défaut
    Si tu nous montrais ton code où tu lances Excel...
    N'oubliez pas de cliquer sur quand vous avez obtenu ou trouvé vous-même la réponse à votre question.
    Si vous trouvez seul, pensez à poster votre solution. Elle peut servir à d'autres!
    Pensez aussi à voter pour les réponses qui vous ont aidés.
    ------------
    Je dois beaucoup de mes connaissances à mes erreurs!

  5. #5
    Membre confirmé

    Profil pro
    Inscrit en
    Avril 2004
    Messages
    95
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 95
    Par défaut
    Voici mon code qui permet d'ouvrir un fichier Excel :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Set xlApp = New Excel.Application
    xlApp.SheetsInNewWorkbook = 1
    xlApp.DisplayAlerts = False
     
    Set xlBook = xlApp.Workbooks.Add
    Le but serai de mémoriser le numéro du processus EXCEL.EXE que je viens de lancer !!!

    Pour l'instant je n'ai pas trouvé d'instruction me le permettant.

  6. #6
    Membre Expert
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    1 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Argentine

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 173
    Par défaut
    xlApp.Quit ?

  7. #7
    Membre Expert
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    1 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Argentine

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 173
    Par défaut
    Citation Envoyé par Coin
    Le but est lorsque j'ai une erreur, je voudrais tué le processus Excel.

    Citation Envoyé par Coin
    cela fonctionne très bien, mais je tue toutes les tâches Excel.
    Avec ce code il doit pouvoir tuer UNIQUEMENT l'appli excel visée sans passer par je ne sais quel pid ...

  8. #8
    Membre Expert
    Avatar de Delbeke
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    2 675
    Détails du profil
    Informations personnelles :
    Âge : 72
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 2 675
    Par défaut
    c'est encore pire que çà, il faut le handle de la fenetre qui contient le document !

  9. #9
    Membre confirmé

    Profil pro
    Inscrit en
    Avril 2004
    Messages
    95
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 95
    Par défaut
    Bonjour à tous.

    Le problème avec xlapp.quit c'est que si mon programme créer une erreur avant de lancer l'application EXCEL, je vais créer une nouvelle erreur, puisqu'il voudra fermé une application n'ayant pas été ouverte.

    A moins que l'on puisse testé si l'application à bien été lancé ?

    Je voudrais éviter d'avoir recours à un flag lorsque je lance mon application.

    Merci d'avance.

    Coin.

  10. #10
    Expert confirmé
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 132
    Par défaut
    je vais créer une nouvelle erreur, puisqu'il voudra fermé une application n'ayant pas été ouverte.
    Non si dans la procedure de fermeture, Unload ou QueryUnload

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    On Error Resume Next
    xlapp.quit
    If Err.Number <> 0 Then Err.Clear
    :whistle:pourquoi pas, pour remercier, un :plusser: pour celui/ceux qui vous ont dépannés.
    saut de ligne
    OOOOOOOOO👉 → → Ma page perso sur DVP ← ← 👈

  11. #11
    Membre confirmé

    Profil pro
    Inscrit en
    Avril 2004
    Messages
    95
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 95
    Par défaut
    Salut,

    Non si dans la procedure de fermeture, Unload ou QueryUnload

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    On Error Resume Next
    xlapp.quit
    If Err.Number <> 0 Then Err.Clear
    Je ne suis pas sur que ça fonctionne, car j'ai créé un module permettant de gérer les erreurs, càd de les enregistrées dans un fichier txt, et d'envoyer un net send aux personnes concernées.

    Et c'est dans ce module que je voudrais tuer le processus correspondant...

    Je vais tester quand même, car j'ai peur que ça plante car au début de mon code j'ai mis :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    On error goto fin
    .
    .
    .
    fin :
          If err.Number <> 0 then
                        call GestionErreur(err.number, err.description)
           end if

Discussions similaires

  1. Récupérer le numéro de téléphone entrant
    Par louisss dans le forum Access
    Réponses: 23
    Dernier message: 26/07/2023, 18h21
  2. [C#] Comment récupérer le numéro de semaine d'une date ?
    Par farfadet dans le forum Windows Forms
    Réponses: 9
    Dernier message: 17/07/2013, 16h33
  3. Réponses: 3
    Dernier message: 12/01/2005, 14h33
  4. Comment récupérer le numéro de la semaine ?
    Par claude dans le forum Langage
    Réponses: 7
    Dernier message: 25/06/2004, 15h06
  5. [xml] Récupérer le numéro de la ligne d'erreur d'un fichier
    Par ZoumZoumMan dans le forum C++Builder
    Réponses: 7
    Dernier message: 20/03/2004, 19h09

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