Avatar billede dmg Nybegynder
12. maj 2003 - 10:06 Der er 8 kommentarer og
2 løsninger

gemme fil på netværk via fopen

Jeg sidder med et enkelt problem! tror jeg.

Jeg har lavet et lille log program, som skal bruges i et loginscript.

Jeg bruger metoden "fptr = fopen(C_Filnavn, "a");" til at lave filen.

Men hvis nu jeg gerne vil gemme filen på et netværksdrev, hvad gør jeg så???

Fordi lige nu bliver den bare gemt på brugerens c drev???

Jeg forstiller mig noget alla:

fptr = fopen(\\servernavn\share\Filnavn, "a");

Men det virker ik :-( jeg er også ret ny i alt det her programmering!!!

Håber der er en der kan hjælpe!!!
Avatar billede arne_v Ekspert
12. maj 2003 - 10:19 #1
Du mener
  fopen("\\servernavn\share\Filnavn", "a");
ikke ?

Umiddelbart synes jeg at det burde virke.

Virker det hvis du mapper \\servernavn\share til et drev
og bruger det ?

(og du har naturligvis checket adgang til share etc.)
Avatar billede venne Nybegynder
12. maj 2003 - 10:38 #2
Skal vi ikke lige have nogle ekstra '\':

  fopen("\\\\servernavn\\share\\Filnavn", "a");

Hvad siger errno i øvrigt?
Avatar billede arne_v Ekspert
12. maj 2003 - 10:41 #3
Det har du fuldstændigt ret i.

\ skal selvfølgelig fordobles.
Avatar billede dmg Nybegynder
12. maj 2003 - 11:18 #4
Lækkert... Tak skal du ha venne. Det virkede helt kanon:

fopen("\\\\servernavn\\share\\Filnavn", "a");

Dog er der kommet endnu et problem, hvilket også må være det sidste ;-)

Jeg har en funktion som laver et dynamisk filnavn.

Filnavnet er dags dato.

Når jeg bare skriver:

fptr = fopen(C_Filnavn, "a");

virker det fint, bortset fra at det bliver gemt på c drevet.

Når jeg skriver følgende kode som "Venne" skrev, udfører den funktionen så den ligger filen i den rigtige sti, men filnavnet bliver ikke kaldt for dags dato men kun "Filnavn".

Filnavn er en variable jeg har erklæret med char.
Avatar billede dmg Nybegynder
12. maj 2003 - 11:18 #5
Jeg er selvfølgelig villig til at give mere flere point for dette ;-)
Avatar billede arne_v Ekspert
12. maj 2003 - 11:21 #6
Så tror jeg du skal bruge:

char path[256];
sprintf(path,"\\\\servernavn\\share\\%s",C_Filnavn);
fptr = fopen(path, "a");
Avatar billede dmg Nybegynder
12. maj 2003 - 14:43 #7
Totalt nice!!! Nu virker det hele ;-)

Venne og arne_v. Smid et svar hver, så giver jeg jer 15 hver. Nu er det ene af mine programmer nemlig færdigt ;-)

Tak for hjælpen....
Avatar billede arne_v Ekspert
12. maj 2003 - 15:03 #8
svar
Avatar billede dmg Nybegynder
12. maj 2003 - 15:33 #9
yepz ;-) venter lige på venne.....
Avatar billede venne Nybegynder
13. maj 2003 - 09:05 #10
Jeg er her...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester