Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Delphi 5 , Paradox et "Blob OLE fichiers Word" [ Archives / Bases de données ] (lomig)

jeudi 21 mars 2002 à 09:14:22 | Delphi 5 , Paradox et "Blob OLE fichiers Word"

lomig

Bonjour, je travaille actuellement sur une BDD dont une des tables contient un champ contenant un fichiers word (liens OLE).
j'ai bien compris que pour l'utiliser a partir de mon interface Delphi il faut que j'utilise des streams, des Blobs etc...

J'ai déclaré un TBlobStream et un TBlobField pour récupérer le document word et y avoir accès via le stream TBLobStream. Mon problème est que je n'arrive a pas à récuperer le Blob qui est dans la table. Je pensais faire un truc comme suit:

UnBlobField.create( TBlobField(DataModulePrincipal.dtsrcMaTable.DataSet.Fields[3]));
TamponBlob.Create(UnBlobField,bmRead);

Mais ca marche pas ca me fait une erreur à l'éxécution

Quelqu'un aurait-il quelques idées à me filer pour la manipulation de ces objets Blobs contenant des ficheirs Word, SVP????

jeudi 21 mars 2002 à 11:10:07 | Re : Delphi 5 , Paradox et

lomig

J'ai testé un nouveau truc qui me semblait pas mal et la ca déclanche une erreur de type:" ... à provoqué une classe d'exception EOLError, avec le message 'Format de flux incorrect'...":

Voici le code correspondant:
//sachant que le 4ieme champ de ma table contient le fichier Word
//TamponBlob est déclaré comme TBlobStream
//olcDocument est un TOleContainer


TamponBlob:= TBlobStream.Create(DataModulePrincipal.dtsrcMaTable.DataSet.Fields[3] as TBlobField,bmRead);
Try
if TamponBlob.Size > 0 then
unitPrincipale.frmPrincipal.olcDocument.LoadFromStream(TamponBlob);
Finally
TamponBlob.Free;
End;



Argggghhhh, ca commence à m'enerver sérieusement tout ca!

Guillaume JAN (gj@oggam.org)
-------------------------------
Réponse au message :
-------------------------------

Bonjour, je travaille actuellement sur une BDD dont une des tables contient un champ contenant un fichiers word (liens OLE).
j'ai bien compris que pour l'utiliser a partir de mon interface Delphi il faut que j'utilise des streams, des Blobs etc...

J'ai déclaré un TBlobStream et un TBlobField pour récupérer le document word et y avoir accès via le stream TBLobStream. Mon problème est que je n'arrive a pas à récuperer le Blob qui est dans la table. Je pensais faire un truc comme suit:

UnBlobField.create( TBlobField(DataModulePrincipal.dtsrcMaTable.DataSet.Fields[3]));
TamponBlob.Create(UnBlobField,bmRead);

Mais ca marche pas ca me fait une erreur à l'éxécution

Quelqu'un aurait-il quelques idées à me filer pour la manipulation de ces objets Blobs contenant des ficheirs Word, SVP????

lundi 25 mars 2002 à 12:04:48 | Paf! ...Tu vas répondre, romain? ..Obelix!!! Pose la question d'abord!!!

lomig

Si jamais ca interesse quelqu'un, j'ai résolu le problème! En fait les
champs OLE produits directement a partir de l'interface du SGBD
PARADOX sont différents de ceux produit pour paradox mais a partir de
son appli sous Delphi. Or les classe genre TBlobStream fonctionnent
avec les OLE PARADOX produit par Delphi et pas avec ceux produit par
PARADOX. Et ca c'est marqué nul part c'est dingue quand meme! Si j'en
avais pas discuté avec quelqu'un qui a passé quelque semaines sur ce
meme problème, j'y serais encore!

Bon sinon vu que tout le monde se précipite pour répondre à mes
questions, en voici une nouvelle(simple ce coup ci):

-Dans mon TBlobStream, j'ai mon fichier Word! Je veux récupérer juste
le texte... Pour l'instant je l'ai dans un TOleContainer et puis j'ai
récupérer le text du TOleContainer dans une chaine mai s bon c'est pas
top, vu que je récupere les retour chariot en ^p... Enfin bref je
voudrais utiliser les fonctionnalités de word comme copy pour mettre
ca dans le clipboard et apres transférer le contenun du clipboard dans
un nouveau document texte tout simple... Qequn a des idées????


voici un bout de mon code actuel:

procedure TfrmPrincipal.btnLancerAnonymisationClick(Sender: TObject);
Var

LeTexteDuDoc: String;

TamponBlob: TBlobStream;

LeFichierDest: TFieldStream;


begin


if DataModulePrincipal.dtsrcMaTable.DataSet.Fields[3].IsBlob() then
begin
Application.MessageBox('C''est un Blob','Est ce un blob',MB_OK);

TamponBlob:= TBlobStream.Create(DataModulePrincipal.dtsrcMaTable.DataSet.Fields[3]
as TBlobField,bmRead);

Try
if TamponBlob.Size > 0 then
unitPrincipale.frmPrincipal.oleDocument.LoadFromStream(TamponBlob);
unitPrincipale.frmPrincipal.oleDocument.visible:=True;
unitPrincipale.frmPrincipal.olcDocument.Run;
LeTexteDuDoc:=unitPrincipale.frmPrincipal.olcDocument.OleObject.range.text;
LeFichierDest:=TFileStream.create('c:\Anonymisation\test.txt',mOpenWrite);
....

Finally
TamponBlob.Free;
unitPrincipale.frmPrincipal.oleDocument.DestroyObject;

End;
end;




Cette discussion est classé dans : fichiers, delphi, word, ole, blob


Répondre à ce message

Sujets en rapport avec ce message

Delphi5, Paradox8, Blob OLE et documents word [ par lomig ] Bonjour, je travaille actuellement sur une BDD dont une des tables contient un champ contenant un fichiers word (liens OLE).j'ai bien compris que pour transfert des fichiers dans delphi...!!! [ par snakefinger ] salut, je voudrais savoir comment transferer des fichiers(ex: *tmp..) d'un repertoire a un autre .merci d'avance .A+. delphi et word [ par manudel ] Je dois extraire des informations d'une base de données.J'utilise des requêtes SQL dans des composants DOA, ou alors des procédures stockées.Ces infor DELPHI - WORD : quelle solution technique pour un tableau sous Word ? [ par manudel ] Je dois récupérer le contenu d'un curseur avec un composant OracleDataSet.Sur mon document Word, j'ai un tableau de 10 lignes, avec 8 colonnes.Dans mo OLE word - définir les séparateurs d'enregistrements [ par manudel ] J'ai un fichier texte, qui me sert à fusionner des infos avec Word (j'utilise OLE).Ce fichier texte contient des séparateurs d'enregistrements peu com WORD et Delphi.... AIDEZ MOI, SVP !!! ARRRRGG.... [ par Encore1ben ] Bonjour,suis tout nouveau sur ce site et dans la programmation sous Delphi, mais j'avoue que grâce à ce site, j'avance extrêmement rapidemment...bref, OLE word : pb de type de données avec opendatasource [ par manudel ] J'ai un fichier texte. J'utilise OLE pour fusionner avec Word. J'ai généré une macro word, que je veux transposer en delphi. Je mets le contenu de mon Comment savoir si les fichiers cachés sont affichés ? [ par MyC ] Comment à partir d'un programme delphi peut-on savoir si les fichiers cachés sont masqués ou affichés ? Et par ailleurs est-il possible de les affiche Integration Word dans interface Delphi [ par freud2000 ] Bonjour, je cherche à créer une application delphi qui aurais dans sa propre interface un document word modifiable . Comment peut on faire ?Merci par Delphi et word [ par freud2000 ] Bonjour, je cherche à trouver la documentation de TWordDocument et TWordApplication. Tout du moins je cherche à utiliser la commande Find (find text e


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,452 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.