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 :

Détecter la fermeture d'un fichier texte


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    428
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2008
    Messages : 428
    Par défaut Détecter la fermeture d'un fichier texte
    Bonjour,
    en vb.net j'ai un bouton, quand je clic dessus, un fichier texte s'ouvre avec un process.start, quand je quitte le fichier texte après l'avoir enregistré j'aimerai savoir si on peut coder après la fermeture du fichier texte, ca n'est pas la fonction lostfocus mais il en existe une autre pour faire ça?

  2. #2
    Membre éprouvé
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2018
    Messages
    323
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2018
    Messages : 323
    Par défaut
    Bonsoir,
    quand je quitte le fichier texte après l'avoir enregistré j'aimerai savoir si on peut coder après la fermeture du fichier texte
    vous pouvez fermer avec process.close() ou process.kill().

    exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Dim process As New Process
            process.Start("Notepad.exe")
            Threading.Thread.Sleep("10000")
            process.Close()
     
    Dim process As New Process
            process.Start("Notepad.exe")
            Threading.Thread.Sleep("10000")
            process.Kill()
    definition :

    Process.close :
    La méthode Close empêche le processus d'attendre la sortie s'il était en attente, ferme le descripteur de processus et efface les propriétés spécifiques au processus. Fermer ne ferme pas les lecteurs et les rédacteurs de sortie, d'entrée et d'erreur standard s'ils sont référencés de manière externe. [c'est à dire. le processus lui-même continue à fonctionner, vous ne pouvez plus le contrôler à l'aide de votre instance de processus]
    Process.kill()
    Kill force la fin du processus, alors que CloseMainWindow ne demande qu'une fin. [...] La demande de quitter le processus en appelant CloseMainWindow ne force pas l'application à quitter. L'application peut demander la vérification de l'utilisateur avant de quitter ou refuser de quitter. Pour forcer l'application à quitter, utilisez la méthode Kill. Le comportement de CloseMainWindow est identique à celui d'un utilisateur qui ferme la fenêtre principale d'une application à l'aide du menu système. Par conséquent, la demande de quitter le processus en fermant la fenêtre principale ne force pas l'application à quitter immédiatement.
    Process.CloseMainWindows :
    Ferme un processus comportant une interface utilisateur en envoyant un message de fermeture à la fenêtre principale.
    Cordialement,

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    428
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2008
    Messages : 428
    Par défaut
    merci, je vais essayer mais la fin du processus se fait normalement quand quelqu'un ferme le fichier texte?, je vais essayer un if process.close dans un timer?

  4. #4
    Membre Expert
    Avatar de wallace1
    Homme Profil pro
    Administrateur systèmes
    Inscrit en
    Octobre 2008
    Messages
    1 966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 966
    Billets dans le blog
    7
    Par défaut
    Lol.....

    Il te faudra créer des events pour pouvoir gérer l ouverture et la fermeture.
    Je rajoute que cela peut se faire via les objets WMI en surveillant l ouverture et la fermeture du processus notepad (par exemple)....Je t aurais bien redirigé sur un de mes projets pour cela mais je suis certain que tu ne comprendra pas le fonctionnement dans son ensemble

  5. #5
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 204
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 204
    Par défaut
    il doit y avoir un event exited sur process, donc tu devrais pouvoir exécuter du code juste après la fermeture
    sinon vu que tu as l'air de connaitre l'emplacement du fichier ouvert tu dois pouvoir utiliser le filesystemwatcher sur ce fichier pour être averti d'un changement (sans forcément que le process soit terminé)
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    428
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2008
    Messages : 428
    Par défaut
    Citation Envoyé par wallace1 Voir le message
    Lol.....

    Il te faudra créer des events pour pouvoir gérer l ouverture et la fermeture.
    Je rajoute que cela peut se faire via les objets WMI en surveillant l ouverture et la fermeture du processus notepad (par exemple)....Je t aurais bien redirigé sur un de mes projets pour cela mais je suis certain que tu ne comprendra pas le fonctionnement dans son ensemble
    ca m'intéresse

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    428
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2008
    Messages : 428
    Par défaut
    j'ai fait autrement, quand on clic sur le bouton enregistrer de la boite bloc note, il enregistre le fichier avec la date actuelle et je test simplement si la date du fichier moins la date actuelle est inférieur à 1 seconde, voici le code:
    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
    Dim LaDate2 As DateTime = IO.File.GetLastWriteTime(".\ateliers\" & ComboBox1.Text & ".txt")
            If DateTime.Now - LaDate2 < TimeSpan.Parse("00:00:01") Then
                ComboBox2.Items.Clear()
                Dim SR2 As New StreamReader(".\ateliers\" & ComboBox1.Text & ".txt", System.Text.Encoding.UTF7)
                Do Until SR2.Peek = -1
                    Dim Ligne5 As String
                    Ligne5 = SR2.ReadLine()
                    If Ligne5 <> "" Then
                        Me.ComboBox2.Items.Add(Ligne5)
                    End If
                Loop
                ComboBox2.Sorted = True
                If ComboBox2.Items.Count > 0 Then
                    Me.ComboBox2.SelectedIndex = 0
                Else
                    combobox2.Text = ""
                End If
                SR2.Close()
            End If

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

Discussions similaires

  1. Problème lors de la fermeture d'un fichier texte.
    Par lerancunier dans le forum Entrée/Sortie
    Réponses: 4
    Dernier message: 28/03/2016, 00h18
  2. AIX - Détecter l'encodage d'un fichier texte
    Par vbonnin dans le forum AIX
    Réponses: 1
    Dernier message: 22/08/2015, 13h22
  3. Réponses: 9
    Dernier message: 12/07/2011, 18h25
  4. Détecter l'encodage d'un fichier texte
    Par Emcy dans le forum Algorithmes et structures de données
    Réponses: 32
    Dernier message: 27/01/2011, 15h34
  5. Réponses: 2
    Dernier message: 11/10/2006, 23h35

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