Accueil > Forum > > > > partage de fichier entre programes
partage de fichier entre programes
jeudi 18 août 2005 à 23:22:39 |
partage de fichier entre programes

loicmichel
|
Bonjour, Mon problème : une application 1 que je ne controle pas écrit une ligne dans un fichier texte toutes les 60 secondes environ. ( temps variable ) Mon programme en VB net doit recuperer cette derniere ligne. J'ai ecrit une routine qui lit ce fichier texte et en extrait la dernière ligne. Ma routine fonctionne bien lorsque l'application 1 est arretée. Lorsque l'application 1 est en fonctionnement, je n'arrive plus a lire le fichier texte, je n'ai plus accès a ce fichier. J'ai contourné le problème en faisant une copie du fichier texte et en lisan la copie. je me demande si il n'y a pas de solution plus élégante, d'autant que le disque dur ne va pas apprècier a la longue. Tout cela sous XP pro. Merci de votre aide, Loïc Loic MICHEL
|
|
jeudi 18 août 2005 à 23:38:58 |
Re : partage de fichier entre programes

BruNews
|
Ecris une DLL en natif (C) que tu injectes dans l'autre processus par un SetWindowsHookEx. La DLL doit contenir une routine d'interception de WriteFile (hook API) et te refiler les octets en cours d'écriture dans un FileMapping. Voila tu voulais de l'élégant, c'est un peu de prog system.
ciao... BruNews, MVP VC++
|
|
vendredi 19 août 2005 à 11:10:01 |
Re : partage de fichier entre programes

aieeeuuuuu
|
Salut
quelle méthode utilises-tu pour lire dans le fichier
personnellement j'ai deja ouvert un fichier .txt dans lequel une application que je ne controlais pas ecrivais en permancence.
avec VB j'arrivais a ouvrir le fichier jusqu'a la fin, et si j'atendais un peun meme sans fermer le fichier, je pouvais lire a nouveau qq secondes plus tard lorsque de nouvelles lignes avaient été inserées.
pour info j'utilisais l'objet "filesystemobject" pour aller lire dans mon fichier.
j'avais aucun pb
|
|
vendredi 19 août 2005 à 11:26:00 |
Re : partage de fichier entre programes

BruNews
|
Si le prog qui écrit ouvre le fichier en mode exclusif, normal qu'il ne puisse pas lire en même temps, il n'y a que le hook API qui puisse récupérer ce qui s'écrit en simultané.
ciao... BruNews, MVP VC++
|
|
vendredi 19 août 2005 à 14:48:20 |
Re : partage de fichier entre programes

BasicInstinct
|
'lut ca me parait certe plus elegant de "hooker" le writefile mais carrement violent a coder (ou alors je me trompe). La copie du fichier est a mes yeux la meilleure solution, a moins que ton fichier fasse plusieurs Mo. ++  BasicInstinct 
|
|
vendredi 19 août 2005 à 15:23:41 |
Re : partage de fichier entre programes

aieeeuuuuu
|
si le systeme arrive a copier le fichier, c'est bien qu'il arrive a le lire. je ne suis pas expert en ce qui concerne les verous qui existe lors de l'ecriture dans un fichier. Mais je sais qu'il est possible dans certains cas de lire dans un fichier ouvert en ecriture par une autre appli. donc je ne vois pas l'interet de la copie avant.
|
|
vendredi 19 août 2005 à 15:34:51 |
Re : partage de fichier entre programes

BruNews
|
"dans certains cas" n'est pas une façon d'écrire un prog correct. Je répète: Si ouvert en mode exclusif personne d'autre n'accèdera, ni en lecture ni en quoi que ce soit.
BasicInstinct: je te rassure, rien de bien difficile pour qui maitrise le C et API, tu peux trouver des exemples sur cppfrance de hook API.
ciao... BruNews, MVP VC++
|
|
vendredi 19 août 2005 à 15:57:33 |
Re : partage de fichier entre programes

aieeeuuuuu
|
quand je disais "dans certain cas" je faisais alluion a la facon dont le ficheir etait ouvert.
or il me semble que le programme tiers qui ecrit dans le fichier le fera toujours de la meme facon. donc il faut voir comment il ecrit dans ce fichier et voir si cela fonctionne. et donc je repete : si le systeme arrive a copier le fichier, c'est que le mode d'ouverture n'est pas si "exclusif" que ca ! donc il doit pouvoir lui aussi aller lire dedans. et pour l'avoir deja fait, je garanti que c'est possible
|
|
vendredi 19 août 2005 à 16:11:25 |
Re : partage de fichier entre programes

BruNews
|
Si le system a ouvert le handle fichier avec FILE_SHARE_READ positionné sur le 3eme param de CreateFile alors il pourra copier et/ou lire sinon hook API obligatoire.
ciao... BruNews, MVP VC++
|
|
lundi 22 août 2005 à 22:14:27 |
Re : partage de fichier entre programes

loicmichel
|
Bonsoir, Je ne connais que Visual basic .net.
Avec un streamreader, Dim sr As StreamReader = New StreamReader(path) je n'arrivais pas accèder au fichier.
Maintenant, j'utilise : Dim b(1024) As Byte Dim temp8 As System.Text.UTF8Encoding = New System.Text.UTF8Encoding(True) Dim fs As FileStream = File.Open(Last_FileModFullName, FileMode.Open, FileAccess.Read, FileShare.ReadWrite) Do While fs.Read(b, 0, b.Length) > 0 ' traitement du contenu du fichier Loop fs.Close()
et cela a l'air de fonctionner.
Dans tous les cas, Notepad ouvre ce fichier texte sans problèmes. Il y a donc bien une solution.
Merci, Loic MICHEL
|
|
Cette discussion est classée dans : fichier, ligne, application, texte, partage
Répondre à ce message
Sujets en rapport avec ce message
recuperer un carractere precit dans un fichier texte [ par jbbordas87 ]
Non Non Non je ne suis pas fénéant. J'ai bien deja chercher si le sujet n'etait pas dans le forum. Il existe bien mais malheureusement mon niveau ne
faire une comparaison entre une variable et une ligne d'un fichier texte [ par cassecroute ]
Bonjour, bon je suis débutant dans le c#, et je m'exerce dans les fichiers, et je voudrais faire un question/réponse, donc j'ai un fichier avec des q
faire une comparaison entre une variable et une ligne d'un fichier texte [ par cassecroute ]
Bonjour, bon je suis débutant dans le c#, et je m'exerce dans les fichiers, et je voudrais faire un question/réponse, donc j'ai un fichier avec des q
AFFICHER UNE PAR UNE LES DATAS D'UN FICHIER TEXTE [ par DHN93160 ]
CHERS MESSIEURS,MESDAMES JE RECOIS UN FICHIER TEXTE AVEC DES DONNEES POUR CHAQUE LIGNE EX: LIGNE 1:ANDRE;MR;SEXE;M;ADRESSE;131 RUE DE TOLBIAC;75013;P
INTEGRER UN FICHIER TEXTE [ par DHN93160 ]
CHERS DEVELOPPEURS,DEVELOPTRICE, J'AI UN FICHIER TEXTE D'UNE TRENTAINE DE LIGNES AVEC POUR CHAQUE LIGNE LES DONNEES TELS QUE : NOM,PRENOM,ADRESSE,CP,
Aller à la dernière ligne d'un fichier texte et recherche une chaine de caractére [ par ARENIUS ]
Bonjour à tous, Voila je suis un gros débutant en VB alors excusez mes questions qui peuvent sembler triviales à certains
fin de ligne dans un fichier texte [ par morcelet ]
Bonjour a tous. voila j'utilise ce system pour lire un fichier texte : FirstHeader = 0 FirstHeader = FirstHeader + 7
Lire dans un fichier texte sous une ligne de texte? [ par rickydee22 ]
Bonjour j'ai un fichier texte dans lequel je règle mes paramètre pour mon programmeexemple : chemin d'accès, constante.... que l'usager peut défénir s
Mettre le contenu d'un fichier texte dans plusieurs variables [ par bobolechef ]
Bonjour à tous,Je voudrais savoir s'il est possible de récupérer dans plusieurs variables le contenu de mon fichier texte?Il y a 25 lignes dans mon fi
Fichier Texte : supprimer une ligne [ par cherrymoon08 ]
Bonjour, voila je voudrias savoir si il existe une fonction en VB.net pour supprimer une ligne dans un fichier texte ou alors faut-il remplacer le con
Livres en rapport
|
Derniers Blogs
UNE JOLIE-HORLOGE ET PAS QU'UN PEU !UNE JOLIE-HORLOGE ET PAS QU'UN PEU ! par neodante
Pour les possesseurs d'iPhone, ça y est Bijin Tokei - qui se traduit littéralement en Français par " Jolie Horloge " - est arrivé et GRATUITEMENT s'il vous plaît ! Après la version Tokyo, Hokkaido, night club, racing, Gal, "pour les mademoiselles'", . voi...
Cliquez pour lire la suite de l'article par neodante TECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICESTECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICES par ROMELARD Fabrice
Animé par: Gaetan Bouveret et Julien Chomarat Business Connectivity Services (BCS) est dans SharePoint 2010 la version 2 de Business Data Catalog (BDC dans SharePoint 2007). Il s'agit de la solution permettant de visualiser des données provenan...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice [DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE[DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE par orion
Comme de nombreux geek, je suis un grand amateur de série TV et je rate régulièrement des épisodes de mes séries préférés. Une solution s'offre à vous avec ce merveilleux site : Tv Gorge - www.tvgorge.com Moteur de recherche à l'appui, vous pouvez ...
Cliquez pour lire la suite de l'article par orion TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010 par ROMELARD Fabrice
Animé par: Vincent Bellet et Baptiste Giraudier La BI dans SharePoint 2010, Les nouveaux services d'application dans SP2010 et SQL Server Reporting services 2008 R2. La BI dans SharePoint est généralisée pour tous afin de permettre à tous les coll...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Forum
VB.NET ET COMBOBOXVB.NET ET COMBOBOX par minouthebreaker
Cliquez pour lire la suite par minouthebreaker
Logiciels
DB-MAIN (9.1.0)DB-MAIN (9.1.0)DB-MAIN is a data-modeling and data-architecture tool. It is designed to help developers and anal... Cliquez pour télécharger DB-MAIN Xilisoft DPG Convertisseur (5.1.37.0120)XILISOFT DPG CONVERTISSEUR (5.1.37.0120)Xilisoft DPG Convertisseur offre aux fans de Nintendo DS une bonne solution leur permettant de dé... Cliquez pour télécharger Xilisoft DPG Convertisseur GraphicsGale (2.01.01)GRAPHICSGALE (2.01.01)GraphicsGale est un logiciel de PixelArt avec de nombreuse fonctionnalités permettant de réalisé ... Cliquez pour télécharger GraphicsGale Architecte 3D (Platinum 2010)ARCHITECTE 3D (PLATINUM 2010)Architecte 3D Platinium vous permet de concevoir facilement les plans votre future maison, de l'é... Cliquez pour télécharger Architecte 3D TeamViewer 5 (TeamViewer 5)TEAMVIEWER 5 (TEAMVIEWER 5)Dépanner un ami,expliquer une manipulation devient un jeu d'enfant.
Prise en main d'un autre ord... Cliquez pour télécharger TeamViewer 5
|