Ouverture d'un fichier sur le réseau

Ouverture d'un fichier sur le réseau - C++ - Programmation

Marsh Posté le 20-06-2003 à 14:31:23    

Salut,
 
Je cherche à ouvrir un fichier sur le réseau avec fopen, j'ai essayé de mettre l'url (http://192.168.0.1/test.txt) mais ça marche pas... Comment puis-je faire svp ?
 
Merci

Reply

Marsh Posté le 20-06-2003 à 14:31:23   

Reply

Marsh Posté le 20-06-2003 à 14:34:34    

impossible. donnes ta plateforme. l'acces au web n'est pas uniforme  avec l'acces au fichier locaux

Reply

Marsh Posté le 20-06-2003 à 14:36:02    

windows XP, ça doit marcher sur d'autres windows, pas sur linux...
merci

Reply

Marsh Posté le 20-06-2003 à 14:40:42    

ben je te serrai d'aucune utilité mais pour ta gouverne, on entend OS+compilateur et API éventullement

Reply

Marsh Posté le 20-06-2003 à 14:43:38    

visual C++ 6.0 et un soft utilisant MFC

Reply

Marsh Posté le 20-06-2003 à 14:46:01    

si tu veux pouvoir passer par un protocole HTTP, il faut évidemment que tu aies un serveur HTTP sur ton poste qui a les fichiers ... Dans ce cas là, tu accèderas à ton fichier en le demandant au serveur. Ca implique la construction d'un message HTTP et de l'envoi du message sur le réseau ... Pour te faciliter ca, tu peux trouver des libs qui vont bien assez facilement en fait ...
 
sinon, si c'est juste pour accéder à des données partagées, je ne sais pas trop... Peut-être que sous Win, fopen accepte les chemins UNC (il me semble que c'est comme ca qu'on les appelle), c'est à dire : "\\nom_hote\nom_partage\nom_rep\nom_fichier.ext"
Mais c'est pas sur du tout que ca passe (en fait, ca m'étonnerait même un peu)
 


---------------
last.fm
Reply

Marsh Posté le 20-06-2003 à 14:48:16    

si MFC alors MSDN est ton amie donc F1/microsoft (je t aide ca commence par CInternet... )

Reply

Marsh Posté le 20-06-2003 à 14:48:17    

je confirme ça passe pas :(
le fichier auquel je veux accéder est sur un serveur linux partageant avec samba... sous IE par exple j'y accède en tapant http://192.168.0.4/num.txt ou \\10.0.0.4\num.txt

Reply

Marsh Posté le 20-06-2003 à 14:49:11    

v chercher avec CInternet, j'avais déjà regardé dans la msdn, mais plutôt du côté de fopen...
 
merci

Reply

Marsh Posté le 20-06-2003 à 14:50:58    

Si tu peux passer HTTP et que tu n'as pas besoin de modifier le fichier, ca peut être suffisant ...
 
Ensuite, je connais pas trop les MFC, mais c'est vrai qu'il y a de fortes chances que tu trouves ton bonheur sur la MSDN


---------------
last.fm
Reply

Marsh Posté le 20-06-2003 à 14:50:58   

Reply

Marsh Posté le 20-06-2003 à 14:53:54    

ici, en reseau local, ceci passe sans pb :
 

Code :
  1. HANDLE h = CreateFile("\\\\xxx.xxx.x.xxx\\src-dev\\server\\main.cpp", GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, 0, NULL);
  2. DWORD dw;
  3. char buf[1024];
  4. ReadFile(h, buf, 1024, &dw, NULL);


 
a l'arrivée, aucune erreur, et buf contient le début du source.
 
cela dit, mon poste est configuré pour avoir les droits en lecture sur l'autre poste (qui n'est pas un linux comme toi, mais un autre win, donc a essayer avec un linux)


Message édité par Konar le 20-06-2003 à 14:57:49
Reply

Marsh Posté le 20-06-2003 à 18:12:33    

fopen effectue un CreateFile, donc ...
Ici, c'est un accès transparent par le rezo, donc fopen devrait marcher (=> rezo local, systeme de fichier "classique" ). Il suffit d'essayer. Lance notepad, ouvrir fichier, depuis le voisinnage rezo, ... ca marche.
Pour http, ou autre, c'est des protocoles spécifiques, qui n'ont rien à voir avec le systeme de fichier, donc fopen n'a pas de sens ici.


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed