fichier fopen de l’emplacement réseau Windows

Je peux ouvrir des fichiers depuis un lecteur réseau monté, mais pas depuis un lecteur non monté, par exemple \\ mycomp \ folder2 \ hi.bmp

Un travail autour de ça?

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 de la documentation fopen (MSDN) :

fopen acceptera les chemins valides sur le système de fichiers au moment de l’exécution; Les chemins UNC et les chemins impliquant des lecteurs réseau mappés sont acceptés par fopen tant que le système qui exécute le code a access au partage ou au lecteur réseau mappé au moment de l’exécution . Une attention particulière doit être apscope lors de la construction de chemins pour fopen afin d’éviter de faire des hypothèses sur les lecteurs, chemins ou partages réseau disponibles dans l’environnement d’exécution.

Vous devez également tenir compte du fait que le compte sous lequel vous exécutez votre programme doit disposer des droits d’access appropriés au fichier. Lorsque vous montez le partage en tant que lecteur réseau, vous utilisez peut-être différentes informations d’identification pour vous connecter. Cela pourrait entraîner l’échec de fopen .

 fopen("\\\\192.168.1.4\\SharedFolder\\Configfile.txt","r"); 

ou

  fopen("\\\\ServerName\\SharedFolder\\Configfile.txt","r");