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

empecher objet excel se deconnecte


Sujet :

VB.NET

  1. #1
    Membre extrêmement actif Avatar de mapmip
    Profil pro
    ulla
    Inscrit en
    Juillet 2006
    Messages
    1 326
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : ulla

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 326
    Par défaut empecher objet excel se deconnecte
    Bonjour,

    dans mon projet vb net j'utilise excel par le biais de l'objet
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    Public exc As New Interop.Excel.ApplicationClass
    Le probleme c'est que exc se deconnecte au bout d'un certain temps d inactivité de mon application.

    Est -i l possible de dire à exc de ne jamais se déconnecter?


    merci d'avance

  2. #2
    Rédacteur/Modérateur
    Avatar de Skalp
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2006
    Messages
    1 694
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 694
    Par défaut
    Citation Envoyé par mapmip Voir le message
    Le problème c'est que Excel se déconnecte au bout d'un certain temps d'inactivité de mon application.
    Que veux-tu dire par "déconnecter" ? Ton objet devient nul ?
    Est-ce que Excel est piloté en mode visible ? Si oui, il est possible que ce soit toi qui le ferme.

  3. #3
    Membre extrêmement actif Avatar de mapmip
    Profil pro
    ulla
    Inscrit en
    Juillet 2006
    Messages
    1 326
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : ulla

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 326
    Par défaut
    Citation Envoyé par Skalp Voir le message
    Que veux-tu dire par "déconnecter" ? Ton objet devient nul ?
    Est-ce que Excel est piloté en mode visible ? Si oui, il est possible que ce soit toi qui le ferme.
    oui je crois qu'il devient null, excel est piloté en mode invisible (processus)


    le marshall collector a t il un quelquonque rapport avec ca ?

  4. #4
    Rédacteur/Modérateur
    Avatar de Skalp
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2006
    Messages
    1 694
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 694
    Par défaut
    Citation Envoyé par mapmip Voir le message
    oui je crois qu'il devient null, excel est piloté en mode invisible (processus)
    Comment détectes-tu le problème ? Y a-t-il un message d'erreur ? Quel est-il ?

    Citation Envoyé par mapmip Voir le message
    le marshall collector a t il un quelquonque rapport avec ca ?
    Le Garbage Collector pourrait avoir un rapport avec ça si tu perdais toute référence à ton objet.
    Par exemple, si tu déclares une instance de l'application Excel dans une méthode, dès lors que tu quittes la méthode, tu ne peux plus accéder à ton instance et le Garbage Collector vient libérer la mémoire en supprimant l'instance (quelques millisecondes plus tard).

  5. #5
    Membre éprouvé Avatar de LeCygne
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juin 2010
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Juin 2010
    Messages : 91
    Par défaut Proposition
    Bonjour,

    Je ne connais pas "ApplicationClass", j'utilise "Application" tout court.
    Essayez cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Public exc As New Interop.Excel.Application

  6. #6
    Membre extrêmement actif Avatar de mapmip
    Profil pro
    ulla
    Inscrit en
    Juillet 2006
    Messages
    1 326
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : ulla

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 326
    Par défaut
    Citation Envoyé par Skalp Voir le message
    Comment détectes-tu le problème ? Y a-t-il un message d'erreur ? Quel est-il ?

    Le Garbage Collector pourrait avoir un rapport avec ça si tu perdais toute référence à ton objet.
    Par exemple, si tu déclares une instance de l'application Excel dans une méthode, dès lors que tu quittes la méthode, tu ne peux plus accéder à ton instance et le Garbage Collector vient libérer la mémoire en supprimant l'instance (quelques millisecondes plus tard).


    exc est déclarée dans un module de mon projet, elle a une portée globale à mon application

  7. #7
    Membre éprouvé Avatar de LeCygne
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juin 2010
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Juin 2010
    Messages : 91
    Par défaut Ne pas utiliser "ApplicationClass" !
    Citation Envoyé par LeCygne Voir le message
    Je ne connais pas "ApplicationClass", j'utilise "Application" tout court.
    L'aide de Visual Studio stipule bien que "ApplicationClass" (dans "Microsoft.Office.Interop.Excel") n'est pas faite pour être instancier. Voici ce qui est noté au sujet de cette classe :
    This class supports the .NET Framework infrastructure and is not intended to be used directly from your code.

Discussions similaires

  1. Objet Excel PIA
    Par devicomProg dans le forum Delphi .NET
    Réponses: 2
    Dernier message: 01/05/2007, 14h31
  2. [VBA-E] empecher femrture excel et feuille
    Par lio62 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 18/01/2007, 10h16
  3. Pb de gestion des objets Excel
    Par tedparker dans le forum Access
    Réponses: 2
    Dernier message: 11/09/2006, 17h13
  4. Réponses: 5
    Dernier message: 08/01/2006, 23h42
  5. instancier un objet Excel
    Par RobinNono dans le forum ASP
    Réponses: 1
    Dernier message: 13/12/2005, 15h51

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