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

C++Builder Discussion :

Borland et openoffice


Sujet :

C++Builder

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 28
    Par défaut Borland et openoffice
    Bonjour,

    Comment peut on utiliser la SDK de openoffice dans borland c++ builder?

  2. #2
    Rédacteur
    Avatar de blondelle
    Homme Profil pro
    Inscrit en
    Mars 2006
    Messages
    2 738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 738
    Par défaut
    Salut dédé:
    La reponse est oui, mais il y a peu de chose, il te faudra adapter le code des macros openoffice pour Ole ce qui est loin d'etre evident.

  3. #3
    Rédacteur
    Avatar de blondelle
    Homme Profil pro
    Inscrit en
    Mars 2006
    Messages
    2 738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 738
    Par défaut
    Si tu est decide a essayer voici un bout de code pour ouvrir OpenOffice
    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
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
     
    //---------------------------------------------------------------------------
    #include <vcl.h>
    #pragma hdrstop
    #include <SysUtils.hpp>
    #include <ComObj.hpp> // a inclure obligatoirement
    #include <Variants.hpp> // utile dans certains cas
    #include "Ouverture_OpenOffice.h"  // nom du programme en cour
    //---------------------------------------------------------------------------
    #pragma package(smart_init)
    #pragma resource "*.dfm"
    TForm1 *Form1;
    Variant vOOoOpenOffice, vOOoDocument, vOOoDesktop, vOOoCoreReflection, vOOoLoadParams;
    Boolean vOOoDocumentExist;
    //---------------------------------------------------------------------------
    __fastcall TForm1::TForm1(TComponent* Owner)
            : TForm(Owner)
    {
    }
    //---------------------------------------------------------------------------
    void __fastcall TForm1::Button1Click(TObject *Sender)
    {
    try
    {
      vOOoOpenOffice = CreateOleObject("com.sun.star.ServiceManager");
    }
    catch (...)
    {
     // si on passe ici c'est qu'il y a une erreur
    }
    if (VarType(vOOoOpenOffice) == varDispatch)
    vOOoDesktop = vOOoOpenOffice.OleFunction("createInstance", "com.sun.star.frame.Desktop");
    int Bounds[2] = {0,-1};
    vOOoLoadParams = VarArrayCreate(Bounds, 1, varVariant);
    // ici on ouvre un nouveau document vierge calc
    vOOoDocument = vOOoDesktop.OleFunction("LoadComponentFromURL", "private:factory/scalc", "_blank", 0, vOOoLoadParams);
    vOOoDocumentExist = !(VarIsEmpty(vOOoOpenOffice) || VarIsNull(vOOoOpenOffice)); // false
    }
    //---------------------------------------------------------------------------
    void __fastcall TForm1::Button2Click(TObject *Sender)
    {
    // trois facon de fermer le document
    // ici on ferme le document ouvert sans sauvegarde comme decrit dans la FAQ delphi
    //vOOoDocument.OleFunction("dispose");
    //vOOoOpenOffice = Unassigned;
    // ici on ferme le document avec ou sans sauvegarde
    //     vOOoDocument.OleFunction("close", false);
    //    vOOoDocument = Unassigned();
    // la fermeture brutale
        vOOoDesktop.OleFunction("terminate"); //
        vOOoDesktop = Unassigned();
    }
    //---------------------------------------------------------------------------
    void __fastcall TForm1::Button3Click(TObject *Sender)
    {
    // on place le code a tester ici
    }
    //---------------------------------------------------------------------------

  4. #4
    Membre Expert
    Avatar de bakaneko
    Profil pro
    Inscrit en
    Février 2004
    Messages
    1 268
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 1 268
    Par défaut
    Tu trouveras dans la FAQ Delphi un paragraphe sur l'interfaçage entre Delphi et OpenOffice. Vue que les méthodes utilisées en Delphi sont généralement proches de celle utilisées en BCB, tu pourras t'en inspirer.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 28
    Par défaut
    Merci,

    je pense qu'on va partir de ton exemple et essayer de creer une classe.

  6. #6
    Rédacteur
    Avatar de blondelle
    Homme Profil pro
    Inscrit en
    Mars 2006
    Messages
    2 738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 738
    Par défaut
    Salut dédé:
    Tu a la FAQ Delphi pour t'aider, j'en ai traduit quelques exemples, je peu t'aider sur ce qui fonctionne, et tu a aussi ce liens sur le site en ooBasic

Discussions similaires

  1. Choisir Visual c++ ou Borland C++Builder ?
    Par DevEric dans le forum Choisir un environnement de développement
    Réponses: 31
    Dernier message: 14/06/2007, 23h48
  2. Outils, cours et NOUVEAUX tutoriels pour Borland C++Builder
    Par hiko-seijuro dans le forum C++Builder
    Réponses: 10
    Dernier message: 12/03/2006, 22h33
  3. Que choisir ? Visual C++ ou Borland c++ builder ?
    Par ashram dans le forum Débats sur le développement - Le Best Of
    Réponses: 27
    Dernier message: 24/02/2003, 14h39
  4. Borland C++ 4 ou 5
    Par Shaym dans le forum C++Builder
    Réponses: 18
    Dernier message: 19/06/2002, 14h49
  5. Tutoriels et liens pour le Borland Database Engine
    Par Community Management dans le forum Paradox
    Réponses: 0
    Dernier message: 25/03/2002, 10h23

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