Eine Frage zu ShFileOperation
-
Hi,
kann es nicht sein, daß es nicht reicht wenn Du die Rechte hast, vielleicht mußt Du sie außerdem noch an System vergeben. Daran hapert es zum Beisppiel manchmal wenn die Paradoxusrslock auf C:\ geschreiben werden soll und Du hast da alle Rechte und es geht trotzdem nicht.
Nur mal so als möglicher Gedanke.Gruß Mümmel
-
Ich habe jetzt das Programm von der Kommandozeile gestartet. Es sind alle Netzwerkressourcen vorhanden und das Kopieren/Verschieben in den Netzwerkordner funktioniert tadellos.
Jetzt fällt mir auch wieder folgendes ein:
Irgendwann während der Entwicklung ist mir mal aufgefallen, dass im normalen Druckerdialog alle Netzwerkdrucker fehlen. Ich habe mir aber damals keinen Kopf drüber gemacht, weil ich die im Programm sowieso nicht brauche. Aber das beruht wahrscheinlich auf der gleichen Ursache.hat jemand von Euch einen Hinweis, was ich jetzt machen kann???
Gruß Udo
-
Hallo,
ich habe jetzt mal den Start der Exe mit 'CreateProcess(...)' durchgeführt.
---> Das gleiche Verhalten wie vorher.Jetzt habe ich die Vermutung, das das an der Installation des Dienstes liegt, er läuft unter dem normalen Systemkonto.
Wenn ich aber den Dienst unter meinem Konto laufen lasse, dann wird die Exe nicht gestartet (auch keine Fehlerausgabe).Gruß Udo
-
Hallo,
Ich muß den Post nochmal nach oben bringen.
Hat keiner eine Idee, was ich noch machen könnte???Gruß Udo
-
Hallo,
Udo_11 schrieb:
Jetzt habe ich die Vermutung, das das an der Installation des Dienstes liegt, er läuft unter dem normalen Systemkonto.
Und was ist nun daraus geworden? Kannst du deine Vermutung inzwischen bestätigen / entkräften?
Udo_11 schrieb:
Wenn ich aber den Dienst unter meinem Konto laufen lasse, dann wird die Exe nicht gestartet (auch keine Fehlerausgabe).
Das ist auch nicht das richtige Verhalten, oder?
MfG
-
Hallo,
wenn ein Dienst unter dem lokalen Systemkonto läuft, dann ist eine Interaktion mit dem Desktop möglich. --> Das Programm wird gestartet.
läuft der Dienst jedoch unter einem beliebigen Benutzerkonto, dann ist eine Interaktion mit dem Desktop nicht mehr möglich. -->das Programm wird nicht gestartet.
Ich nehme an, das ist das normale Verhalten eines Windowsdienstes.
Die Frage ist, ob es normales Verhalten ist, das unter dem lokalen Systemkonto keine Netzwerkressourcen zur Verfügung stehen und ob bzw. wie ich das ändern kann.
Gruß Udo
-
Klingt nachvollziehbar, was du da so schreibst... Alles in Allem bist du meiner Meinung nach mit deiner Frage im WinAPI-Forum besser aufgehoben - da habe ich zumindest mehr Threads zum Thema Dienste / Rechte gefunden... Das ist ja eher ne grundlegende Windowsfrage, als eine Borland-spezifische.
MfG
-
Vielleicht kann mich ja mal einer der Moderatoren ins API-Forum verschieben.
-
Naja... vielleicht nicht dich, aber den Thread bestimmt...
-
Hallo,
Bevor diesen Thread jemand in ein anderes Forum verschiebt, versuche ich mal die Lösung des Problems zu erklären:
Die Ursache dafür, das keine Netzwerkressourcen vorhanden waren ist, das die gestartete Anwendung unter dem Konto des Dienstes läuft, der si gestartet hat (in meinem Fall 'LocalSystem').
Lösung:
Die Anwendung muß von dem Dienst mit dem Konto des Nutzers (also mit meiner Anmeldung) gestartet werden und auf dem interaktiven Desktop, da sonst keine Interaktion mit der Anwendung möglich ist.
Alle dazu notwendigen schritte sind in der MSDN erläutert:
http://msdn.microsoft.com/de-de/library/aa379608(en-us,VS.85).aspx
Ich hoffe, das hilft bei ähnlichen Problemen.
Gruß Udo