je peux ouvrir des fichiers à partir d'un lecteur réseau monté, mais pas d'un démonté un \\ mycomp par exemple \ dossier2 \ Hi.bmpfichier fopen des fenêtres emplacement réseau
Tout travail autour de cela?
je peux ouvrir des fichiers à partir d'un lecteur réseau monté, mais pas d'un démonté un \\ mycomp par exemple \ dossier2 \ Hi.bmpfichier fopen des fenêtres emplacement réseau
Tout travail autour de cela?
L'extrait suivant fonctionne pour moi:
char buffer[1000];
FILE* file;
size_t bytesRead;
file = fopen("\\\\server\\share\\test.dat", "rb");
if (file != NULL)
{
bytesRead = fread(buffer, sizeof(char), sizeof(buffer), file);
fclose(file);
}
Notez également cet extrait du fopen docs (MSDN):
...
fopen acceptera les chemins qui sont valables le système de fichiers au point d'exécution; chemins UNC et chemins impliquant les lecteurs réseau sont mis en correspondance acceptée par fopen tant que le système exécutant le code a accès au partage ou un lecteur réseau mappé au moment de l'exécution. Une attention particulière doivent être prises lors de la construction des chemins pour fopen pour éviter de faire des suppositions sur les lecteurs disponibles, chemins ou partages réseau dans l'environnement d'exécution .
...
Vous devez également considérer que le compte que vous exécutez votre programme sous, a besoin d'avoir les rigths d'accès appropriés au fichier. Lorsque vous montez le partage en tant que lecteur réseau, vous utilisez peut-être des informations d'identification différentes pour vous connecter. Cela pourrait provoquer l'échec de fopen
.
Merci compagnon. Je pensais que c'était presque exactement ce que j'avais essayé plus tôt mais ça fonctionnait maintenant :) –
fopen("\\\\192.168.1.4\\SharedFolder\\Configfile.txt","r");
ou
fopen("\\\\ServerName\\SharedFolder\\Configfile.txt","r");
Umm ... monter le lecteur avant d'essayer d'accéder aux fichiers de celui-ci? –
Etes-vous en train d'oublier que vous devez écrire '\\' pour obtenir un antislash littéral en C? –
@R Non, je n'étais pas. Merci quand même. –