none
Temp-Dateien landen im VirtualStore RRS feed

  • Frage

  • Liebe Community,

    Wir haben ein merkwürdiges Problem im Zusammenhang mit dem VirtualStore bei einer Kundeninstallation unserer Software. Kurz zum Hintergrund:

     

    Die Software wurde auf Basis von Qt 5.9.2 für Windows 7/8/10 entwickelt und wird standardmäßig in ein Unterverzeichnis von C:\Program Files (x86) installiert. Nach der Installation erfolgen keinerlei weitere Schreibzugriffe auf diesen Pfad. Benutzerdaten werden in ein Unterverzeichnis von C:\Users\[benutzer]\AppData\Roaming geschrieben. Eine der Programmfunktionen ist, aus einer Menge aus fest definierten Videos, die auf einem Server des Partnerunternehmens liegen, eines pro Tag auszuwählen und dem Benutzer zu präsentieren. Da wir aus verschiedenen Gründen auf eine Implementierung eines Videoplayers direkt in der Qt-App verzichtet haben, benutzen wir den Browser zum Abspielen des Videos, wenn der Benutzer auf den präsentierten Link klickt. Dies erreichen wir mit einem Workaround, indem wir eine Art temporäre Wrapper-HTML-Seite erzeugen, die der Browser aufruft und in der der Link zum externen Video hinterlegt ist. Dieses spielt dann anstandslos im Standard-Browser des Systems. Die HTML-Seiten werden standardmäßig in C:\Users\[benutzer]\AppData\Local erzeugt. Dabei spielt es keine Rolle, ob der Benutzer Admin- oder Standardbenutzerrechte besitzt.

     

    Dies funktioniert bei Tausenden von Installationen ohne Probleme. Bei dieser einen Kundeninstallation jedoch nicht. Der Kunde hat ein Benutzerkonto mit Admin-Rechten auf einer Installation von Windows 10 Enterprise 2016 LTSB. Die HTML-Seiten landen in C:\Users\[benutzer]\AppData\Local\VirtualStore und werden dann vom Browser nicht gefunden, der eine Ebene höher danach sucht.

     

    Wir haben schon umfangreiche Ursachenforschung betrieben, sind jedoch nicht dahinter gekommen, warum bei dieser einen Installation C:\Users\[benutzer]\AppData\Local\VirtualStore geschrieben wird. Der Benutzer hat definitiv Schreibrechte auf C:\Users\[benutzer]\AppData\Local. . Die Pfadvariable %LOCALAPPDATA% verweist ebenfalls dorthin. Irgendwelche vom Standard abweichende Gruppenrichtlinien sind anscheinend auch nicht gesetzt (wir müssen uns da auf die Aussagend es Kunden verlassen).

     

    Hat jemand eine Idee, warum hier das Unterverzeichnis VirtualStore verwendet wird? Ich bin für jeden Hinweis dankbar.


    • Bearbeitet Matthias Walz Freitag, 5. April 2019 09:15 sachlicher Fehler
    Freitag, 5. April 2019 09:13

Alle Antworten

  • Das lässt sich zur Laufzeit nur über Trace-Ausgaben feststellen.
    Ich habe in meiner Anwendung z.B. einen Diagnose-Funktionsaufruf. Ist dies der Fall, wird auf dem Desktop des Users eine Log-Textdatei erstellt, die so einiges protokolliert.

    Somit kannst du dem Kunden eine Diagnose-Version zur Verfügung stellen, die den Pfadnamen zur Laufzeit mal ausgibt (tatsächlicher Inhalt von %LOCALAPPDATA%, tatsächlicher Pfad der erstellten Datei).
    Statt Desktop kann amn natürlich jeden beliebigen Pfad verwenden.

    Freitag, 5. April 2019 11:39