Seite 1 von 1

"if FileExists" verwendet opsi-Pfad

Verfasst: 15 Jul 2016, 08:36
von Nils
Hallo und guten Morgen,

ich habe folgendes Problem mit "if FileExists":
Nutze ich "FileExists" mit Angabe eines Pfades (z. B. if (FileExists("C:\ProgramFiles\...\...exe")), so funktioniert alles, wie es soll.
Verwende ich jedoch eine Variable ("if FileExists($PfadZurDatei$)"), so wird lt. Log folgendes geprüft:
Starting query if file exist ...
"C:\Program Files (x86)\opsi.org\opsi-client-agent\opsi-winst\$PfadZurDatei$":
Somit wird vor die Variable immer der Pfad zum winst eingetragen. Dies führt natürlich dazu, dass "if FileExists" nicht "true" wird.

Was muss ich ändern, um mit FileExists auf die, in einer Variablen gespeicherte Datei prüfen zu können?

Vielen Dank im Voraus für eure Unterstützung.
Viele Grüße
Nils

Re: "if FileExists" verwendet opsi-Pfad

Verfasst: 18 Jul 2016, 14:37
von larsg
Poste mal ein konkretes Beispiel von deinen Skripts.

So funktioniert es auf jeden Fall bei mir:

Code: Alles auswählen

DefVar $File$
Set $File$ = "C:\test.txt"
If (FileExists($File$))
Comment "Win"
Else
Comment "Fail"
EndIf

Re: "if FileExists" verwendet opsi-Pfad

Verfasst: 20 Jul 2016, 13:21
von Nils
Hallo Lars,

vielen Dank für deine Antwort.
Inzwischen habe ich mein Skript umgebaut. Nun hole ich mir den Pfad zu der Datei aus einem Registrystring. Dann prüfe ich mit einer "normalen" if-Bedingung, ob der zurückgegebene String gleich "" ist. Wenn nicht, lasse ich das Skript Aktion A oder, falls doch, Aktion B ausführen.
Somit benötige ich das "if FileExists" in diesem Fall gar nicht mehr. :oops:
Trotzdem vielen Dank für deine Unterstützung.

Viele Grüße und einen schönen, erfolgreichen Tag.
Nils

Re: "if FileExists" verwendet opsi-Pfad

Verfasst: 29 Jul 2016, 16:17
von SisterOfMercy
Nils hat geschrieben:ich habe folgendes Problem mit "if FileExists":
Nutze ich "FileExists" mit Angabe eines Pfades (z. B. if (FileExists("C:\ProgramFiles\...\...exe")), so funktioniert alles, wie es soll.
Verwende ich jedoch eine Variable ("if FileExists($PfadZurDatei$)"), so wird lt. Log folgendes geprüft:
viewtopic.php?f=6&t=8068

I think this might be related, I had the same thing.