Hallo,
ich arbeite z.Z. mit der XAMPP Version 1.4.14, PHP: 5.1.2 und Imagemagick auf einem WindowsXP Rechner und benötige bei einem Netzwerk-Problem eure Hilfe. Ich möchte noch voranstellen, dass die ganze Sache funktioniert, wenn ich den Apache nicht als Service starte, nur gerade dies, also Apache als Service starten ist notwendig, da sich mehrer Personen (verschiedene Logins) auf den Rechner anmelden müssen.
Nun zu meinem Problem:
Wir haben hier ein Firmennetzwerk. Auf einem dieser LW liegen Grafikdateien die ich umwandeln (jpg zu gif) will. Die entstehenden Dateien sollen auf diesem NetzwerkLW geschrieben werden. Das ganze sieht in PHP so aus:
# JPG in GIF umwandeln
$convertjpg = "convert -verbose -density 200% ".$JPGBild." ".$GIFBild;
print shell_exec($convertjpg);
$JPGBild = Pfad N:\bildjpg\test.jpg
$GIFBild = Pfad N:\bildjpg\vorschau\test.gif
und es funktioniert auch, wenn der Apache nicht als Service läuft.
Für die Version "Apache als Service" habe ich das ganze für die Entwicklung vereinfacht und schreibe die entstehende Datei zunächst auf den localhost und will sie dann ins NetzLW kopieren- wie oben gesehen funktioniert es nicht (Fehlermeldung weiter unten). Der Apache läuft jetzt übrigens als Dienst mit meinen Userdaten wie es z.b. hier http://community.apachefriends.org/f/viewtopi ... tzlaufwerk steht.
# JPG in GIF umwandeln
print shell_exec("convert -verbose \\\\Ap1739\\bild\\test.jpg test.gif");
dies schreibt mir die Datei test.gif unter htdocs, ich komme somit also lesend ins NetzLW.
Wenn ich das ganze jetzt aber kopieren will z.B. mit
copy('C:\Programme\tools\apachefriends\xampp\htdocs\test.jpg','\\\\Ap1739\\bild\\copy.jpg');
bekomme ich die Fehlermeldung:
Warning: copy(\\Ap1739\\test.jpg) [function.copy]: failed to open stream: Permission denied in C:\Programme\tools\apachefriends\xampp\htdocs\test.php on line 10
und im ErrorLog steht auch: Permission denied
Woran liegt das bzw. was kann ich machen damit dies auch als Dienst funktioniert? Hat die erstellte Datei vielleicht durch PHP einen neuen Nutzernamen, welcher von der Apache-Dienst Signatur (mein Username) abweicht, oder muß ich das NetzLW etwa in die httpd.conf schreiben. Ich habe wirklich keine weiter Ideen. Vielleicht ja aber ihr.
Schon mal vielen Dank.
Grüße
Sven