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

Développement Windows Discussion :

Détecter si un fichier Excel avec mot de passe est ouvert


Sujet :

Développement Windows

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2016
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2016
    Messages : 35
    Points : 28
    Points
    28
    Par défaut Détecter si un fichier Excel avec mot de passe est ouvert
    Bonjour,

    Contexte du problème :
    - j'ai ouvert un fichier Excel avec mot de passe via mon appli
    - mon appli plante du coup le fichier excel reste ouvert
    - quand je relance mon appli lors de l'activation de l'application excel
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    appXL = CreateObject("Excel.Application")
    , le fichier avec mot de passe apparait avec la boite de dialogue pour rentrer le mot de passe

    Je voudrais donc pouvoir détecter au démarrage si le fichier est ouvert ou non.

    Je sais comment détecter si un fichier Excel sans mot de passe est ouvert, mais quand il y a un mot de passe la propriété MainWindowTitle est vide (enfin presque il y a "excel").

    Une idée ?

  2. #2
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2016
    Messages
    132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2016
    Messages : 132
    Points : 59
    Points
    59
    Par défaut
    Bonjour,

    il faudra détecter déjà si le fichier excel est lancé ou pas: (t'as déjà son nom et son répertoire):

    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
     static Dictionary<string, Workbook> _openedWorkBooks = new Dictionary<string, Workbook>();    
        public static Workbook GetWorkbook(string filePath)  {    
            Workbook wkb = null;    
            if (!(_openedWorkBooks.TryGetValue(filePath, out wkb)))    
            {
                // Open the file and store it into the dictionary    
            }
     
            return wkb;  
        }
     
        // remember to remove it when it's closed  
        public static CloseWorkbook()  
        {    // need to remove the corresponding key from the dictionary  
        }
    Après , tu peux lire dans le fichier, et si, t'as pas accès , car il demande le mot de passe, c'est là ou tu peux lancer une exception comme quoi ton fichier est verrouillé :
    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
    24
    25
    protected virtual bool IsFileLocked(FileInfo file)
    {
    FileStream stream = null;
     
        try
        {
            stream = file.Open(FileMode.Open, FileAccess.ReadWrite, FileShare.None);
        }
        catch (IOException)
        {
            //the file is unavailable because it is:
            //still being written to
            //or being processed by another thread
            //or does not exist (has already been processed)
            return true;
        }
        finally
        {
            if (stream != null)
                stream.Close();
        }
     
        //file is not locked
        return false;
    }

Discussions similaires

  1. Lire fichers Excel avec Mot de passe
    Par tiboo dans le forum C#
    Réponses: 7
    Dernier message: 16/07/2010, 13h55
  2. Chargement de fichier Excel protégé mot de passe
    Par osbiID dans le forum kettle/PDI
    Réponses: 1
    Dernier message: 20/11/2008, 13h18
  3. Fichier bat avec mot de passe crypté
    Par totorelli dans le forum SQL
    Réponses: 8
    Dernier message: 01/12/2007, 23h04
  4. Objet OLE WORD et EXcel avec mot de passe
    Par willich dans le forum Modélisation
    Réponses: 2
    Dernier message: 28/05/2007, 14h22
  5. Ecriture Fichier texte avec mot de passe
    Par JOS.FRAN dans le forum Windows Forms
    Réponses: 1
    Dernier message: 01/03/2007, 22h53

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