LabVIEWForum.de
xls mit Administrator Rechten starten - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Datenbank & File IO (/Forum-Datenbank-File-IO)
+---- Thema: xls mit Administrator Rechten starten (/Thread-xls-mit-Administrator-Rechten-starten)



xls mit Administrator Rechten starten - erzengelsamael - 10.04.2013 07:54

Ich hab mal wieder ein kleines Problem, hoffe mir kann da jemand bei Helfen.

Ich habe eine Excel-Datei bei uns auf dem Server liegen, diese öffne ich über eine VI und Schreibe etwas hinein, und Speichere.
Manchmal klappt das wunderbar, aber manchmal Meckert Excel, das die Datei Schreibgeschützt ist.
In diesem Moment hat aber keiner im Netzwerk diese Datei offen.
Das einzige was sein könnte, das die Virenschutzsoftware darauf zugreift.
Gibt es eine Möglichkeit die Datei immer mit Administrator-Rechten zu öffnen, damit das mit dem Schreibgeschützt nicht Passieren kann.
Natürlich ist mir klar, das dann die Daten andere Bearbeiter der Exceldatei verloren gehen, aber das versuche ich ja zu erreichen.
Das alle nix mehr mit der Excel Datei machen. alles nur noch über die VI.


RE: xls mit Administrator Rechten starten - dali4u - 10.04.2013 08:21

Wenn die Datei ein Schreibschutz hat (entweder wel die Datei bereits geöffnet ist oder gerade durch eine AV-Software gescannt wird)
bringt es NICHTS die mit Admin-Rechten zu öffnen -> der Schreibschutz bleibt bestehen.
Es ist IMHO sinnvoller das Öffnen der Datei mehrfach zu probieren, den Fehler auswerten
und eine Fehlermeldung zu bringen. Habe ein ähnliches Problem bei uns, weil von mehreren
Rechnern und 2 LabView Programmen auf eine einzige Excel Tabelle mit Seriennummern zugegriffen wird.
Ich habe das Problem mit der AV-Software gelöst in dem ich die Datei zu den Ausnahmen
auf dem Server eingtragen habe (bin Domain-Admin :-). Kannst Du sowas ähnliches machen? Admin fragen?
Dann bleibt nur noch der Fehler über, das die Datei bereits geöffnet ist...
Eine weitere Alternative ist, die Datei als Temp Datei auf den loklalen Rechner zu kopieren, denn
das geht immer. Allerdigns kann es sein, dass der Inhalt nicht aktuell ist, falls die jemand geöffnet hat
und noch nicht wieder abgespeichert hat. Anschließend die Datei wieder auf den Server kopieren...


RE: xls mit Administrator Rechten starten - erzengelsamael - 10.04.2013 09:43

Danke, die Idee hatte ich auch.

Ausnahme hab ich schon hinzugefügt.

Gibt es die möglichkeit über LabVIEW denn Status abzufragen, ob eine Excel-Datei Schreibgeschützt ist.
aber nicht denn Datei-Status im Explorer, sondern in Excel?


RE: xls mit Administrator Rechten starten - dali4u - 10.04.2013 13:23

(10.04.2013 09:43 )erzengelsamael schrieb:  Gibt es die möglichkeit über LabVIEW denn Status abzufragen, ob eine Excel-Datei Schreibgeschützt ist.
aber nicht denn Datei-Status im Explorer, sondern in Excel?

Hm, evtl., aber ob der Aufand lohnt?

Idee:
Eine Master-Tabelle machen, in der z.B. in Zelle A1 der Pfad zur Excel Datei steht, die Du öffnen möchtest.
Dann im Makrobefehle in VBA (=Visual Basic für Applikationen) den Status der Excel-Tabelle in A1 abfragen
und diesen dann in Zelle A2 schreiben. Die Zelle A2 dann über LabView abfragen und auswerten.
Ob man den Status einer Tabelle allerdings über VBA abfragen kann, weiß ich im Moment nicht.
Auf jeden Fall muss der Ordner der Master-Tabelle (die dann Makros beinhaltet) im Sicherheitscenter
von Excel (bei den Optionen) zu den "Vertrauenswürdige Speicherorte" hinzugefügt werden, weil sonst
die Makros bein Aufrufen der Master-Tabelle geblockt werden. Wenn der Status z.B. "OK" ist, kann die
Tabelle von LabVIEW geöffnet werden.

Ob das wirklich so funktioniert weiß ich nicht, eben eine Idee.

Stefan


RE: xls mit Administrator Rechten starten - SeBa - 11.04.2013 10:53

Hi,

1) du kannst eine Exceldatei auch zur gemeinsamen Nutzung durch mehrere User freigeben: "Extras -> Arbeitsmappe freigeben".

2) du musst ein Macro nicht ausführen und Parameter&Result in einem Tabellenblatt ablegen bzw. auslesen/auswerten. Du kannst dem Macro gleich die Parameter beim Aufrufen übergeben und dir das Ergebnis zurückgeben lassen.. z.B. ein Boolean für "Datei verfügbar / nicht verfügbar".

3) du brauchst das nicht von einer Excelinstanz aus prüfen, da IMHO die Sperrung der Datei im Dateisystem vermerkt wird und das daher unabhängig von Excel ist.

Gruß SeBa