Fermeture de ttes les gfenetres actives

ando -  
 ando -
salut tout le monde.
j'ai créer un petit programme qui ferme toutes les fenetres actives sous windows, ca marche bien. le petit qui manque, c'est que si une fenetre word s'ouvre e qu'on a pas encore enregistré, le programme n'arrive pa a fermer car il y a le boite de dialogue "voulez vous enregistrer les modifications?". j'aimerai pouvoir fermer cette boite de dialogue mais j'y arrive pas.
Aidez moi S.V.P.
Merci

7 réponses

  1. Lita
     
    Salut,
    En vba dans word, ça fait ActiveDocument.close
    ActiveDocument.Save à mettre avant si tu veux qu'il enregistre avant de fermer.
    Je sais pas en quel langage t'as fait ton prog, je sais pas si ça va marcher
    0
    1. nathando Messages postés 6 Statut Membre
       
      salu lita.
      je programme sous vb6.
      je vai essayé ton truc et te remercie bcp.
      a+.
      tu viens de mada?
      0
      1. Lita > nathando Messages postés 6 Statut Membre
         
        tu viens de mada?
        Eny ;-))
        0
      2. nathando Messages postés 6 Statut Membre > Lita
         
        za teny gasy @izay
        tsy mety @ vb6 ilay activedocument fa raha misy fomba hafa any aminao de mba omeo.
        ok je te remercie bcp.
        je vais essayé d'autre truc.
        0
      3. Lita > Lita
         
        Ny olana za tsy de mahay vb. Fa toa azo atao ny mi-piloter application @objets OLE. Mety misy azo tsoahina angamba @ity: http://www.vbfrance.com/code.aspx?ID=387

        Hevitra ampanidinana:
        Word.Application.ActiveDocument.Save
        Word.Application.quit
        0
  2. Lita
     
    Compil kely asa raha ho mety. Tsy manana vb anandramana an'azy za
    ;-)))

    Dans VB
    Exécuter le menu Projet/Références...
    Dans la fenêtre qui apparaît, vérifiez que vous avez une référence sur
    ' Microsoft Word X.y Object Library
    ' Cochez la case si elle ne l'est pas

    
    Public Sub Word_Création_Lien_OLE()
    
    On Error Resume Next ' Retarde la récupération d'erreur.
    
    ' La fonction Getobject appelée sans le premier argument
    '  renvoie une référence à une occurrence de l'application Word.
    '  Si l'application n'est pas en exécution,
    '   une erreur se produit et on utilise l'erreur.
    '  Noter la virgule utilisée en tant que premier espace réservé d'argument.
    
    Set Word_Application = GetObject(, "Word.Application")
    
    If Err.number <> 0 Then
         Set Word_Application = CreateObject("Word.Application")
    End If
    
    Err.Clear    ' Efface l'objet Err au cas où une erreur s'est produite.
    
    End Sub
    
    Public Function Word_Nombre_documents_ouverts() As Byte
    
    Word_Création_Lien_OLE
    Word_Nombre_documents_ouverts = Word_Application.Documents.Count
    
    End Function
    
    Public Sub Word_Quitter()
    
    ' Si cette copie de Microsoft Word n'était pas déjà en exécution
    '  lorsque vous l'avez utilisée,
    '  elle est fermée à l'aide de la méthode Quit de la propriété Application
    '  puis le lien est rompu
    '  sinon l'application et le lien sont conservés.
    ' Notez que si vous tentez de quitter Microsoft Word,
    '  la barre de titre Microsoft Word clignote et
    '  Microsoft Word affiche un message vous demandant si
    '  vous souhaitez enregistrer les fichiers chargés.
    Dim Doc
    Word_Création_Lien_OLE
    If Word_Nombre_documents_ouverts = 0 Then
          For Each Doc In Word_Application.Documents
             Doc.Save
             Doc.Close 'savechanges:=wdDoNotSaveChanges (si tu veux pas enregistrer enlèves le Doc.Save et mets ça)
         Next Doc
         Word_Application.Quit
    End If
    
    End Sub
    
    


    Antsoina ilay Word_Quitter
    ;-))
    0
  3. Lita
     
    Sinon t'utilises quelle fonction pour fermer toutes les fenêtres?
    Si jamais on peut généraliser, pas seulement pour word
    0
  4. nathando Messages postés 6 Statut Membre
     
    ok lesy.
    andramako daholo ireo sady hijery an'ilay vbfrance za.
    misaotra betsaka.
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Lita
     
                    ___
                ,-'"   "`-.
              ,'_          `.  
             / / \  ,-       \ 
        __   | \_0 ---        |
       /  |  |                |
       \  \  `--.______,-/    |
     ___)  \  ,--""    ,/     |
    /    _  \ \-_____,-      / 
    \__-/ \  | `.          ,'  
      \___/ <    ´--------'    
       \__/\ |              
        \__//
    0
    1. ando
       
      je ferme toute les fenetres avec destroywindow. g fai le programme pourqu'il puisse fermé toutes les application ouvertes.
      ca marche bien. je peux fermer toutes les fenetre word y compri à conditions qu'il soit enregistré.
      je collecte les nom des fenetre avec enumwindow, puis avec d'autre command associé à destroywindow je peux les fermer toutes.
      le probleme c ke le boite de dialogue ne veux pa fermer.
      si tu peux m'aider encore une fois.
      0
  7. Lita
     
    Essayes:
    SendMessage (hWnd, &H10, 0, 0&)

    Normalement, destroywindow ferme tout sans discussion
    Si ça ne marche pas, essayes de fermer d'abord les fenêtres susceptibles de demander enregistrement par :
    App.Close SaveChanges:=true

    J'ai trouvé un truc qui t'intéresserait, mais j'ai pas essayé comme j'ai pas vb:-(:

    If you would like some sample code on how to detect - and close open windows try this vb program

    http://www.freevbcode.com/ShowCode.asp?ID=3561
    0
  8. Lita
     
    vahiny be @ vb e;-))
    Azafady ity le zvtr: http://www.freevbcode.com/source/dFreeze.zip
    Mba andramo ihany hoe io de mba teneno za raha tsara? Mbola handramako rehefa mahita vb.
    Okay!
    0
    1. ando
       
      efa nahita fika aho tamin'ilay word satria natambatro t@ word.activedocument.saveas iny ilay izy dia mety.
      misaotra betsaka.
      hijery an'ilay lien nomenao aho de ilazako vaovao ihany ok.
      mazotoa
      0