(23.04.2015 09:24 )machfax schrieb: Hallo
Ok vielen Dank für die ausführlichen Infos, werde da ein andere Lösung suchen müssen, eventuell werde ich dem Benutzer Admin Rechte geben, dies so umsetzen aber das ganze in einem Shell starten damit der Benutzer nur auf die Labview-Anwendung Zugriff hat und am Windows gar nichts mehr einstellen kann, somit auch keine "Dummheiten" machen kann. Beim Beenden des Labview meldet sich dann der PC automatisch ab und somit hat der Benutzer keinen Zugriff auf das Windows oder Dateisystem und ich kann trotzdem den Befehl im Hindergrund mit Admin-Rechten ausführen...
Grüsse und noch einen schönen Tag euch allen
Das ist sicherheitstechnisch so ziemlich die schlechteste Methode! Auch wenn Du die Windwos Shell komplet aushebelst und den LabVIEW Prozess als Shell-Prozess installierst, kann ein Benützer mit genug schlechtem Willen da noch in Windows hinein kommen und dann hat er 100% zumindest lokale Admin Rechte.
Und eine solche, so gut möglich zugebaute Installation ist der absolute Horror für Debugging (und späer auch Unterhalt) der Applikation.
Meine Proirität in diesem Fall wäre:
1) Herausfinden warum der normale Timeservice von Windows nicht einen Internet Timeserver kontaktieren kann um die lokale Zeit auf die Sekunde genau mit der realen Standardzeit synchronisieren zu können.
2) Wenn das nicht geht (warum?), eine Service schreiben der als Systemaccount alle nötigen Rechte hat um die Systemzeit zu ändern. Dieser Service kann mit LabVIEW geschrieben werden und zum Beispiel mit VI Server ein Interface verfügbar stellen mit dem ein Auftrag gegeben werden kann um die Systemzeit zu setzen. Das LabVIEW executable mit srvany.exe von Windows starten lassen und das alles als Admin installieren. Deine Applikation kontaktiert dann diesen Service wenn Sie die Zeit verändert haben will und kann selbst unter einem schwer eingeschränkten Benützer laufen.