[GELÖST] Die Syntax für den Dateinamen... ist falsch

Teilen Sie hier Ihre Tipps oder Probleme bezüglich der WAPT-Konsole oder des WAPT-Agenten mit
Forumregeln
Community-Forumregeln
* Englischer Support auf www.reddit.com/r/wapt
* Französischer Community-Support ist in diesem Forum verfügbar.
* Bitte kennzeichnen Sie gelöste Themen mit [GELÖST].
* Bitte bearbeiten Sie keine Themen, die mit [GELÖST] markiert sind. Erstellen Sie stattdessen ein neues Thema und verweisen Sie auf das alte.
* Geben Sie die installierte WAPT-Version, die vollständige Versionsnummer und die Build-Nummer (2.2.1.11957 / 2.2.2.12337 / usw.) sowie die Enterprise-/Discovery-Edition an.
* Versionen 1.8.2 und älter werden nicht mehr unterstützt. Fragen zu Version 1.8.2 werden nur beantwortet, wenn sie sich auf ein Upgrade auf eine unterstützte Version (2.1, 2.2 usw.) beziehen.
* Geben Sie das Server-Betriebssystem (Linux/Windows) und die Version (Debian Buster/Bullseye – CentOS 7 – Windows Server 2012/2016/2019) an.
* Geben Sie gegebenenfalls das Betriebssystem des Administrations-/Paketerstellungsrechners und des Rechners mit dem problematischen Agenten an (Windows 7/10/11/Debian 11/etc.).
* Vermeiden Sie es, mehrere Fragen in einem Thema zu stellen, da diese sonst möglicherweise ignoriert werden. Falls mehrere Themen relevant sind, erstellen Sie bitte separate Themen, vorzugsweise nacheinander und nicht gleichzeitig (d. h. vermeiden Sie Spam im Forum).
* Fügen Sie Code-Snippets, Screenshots und andere Bilder direkt in Ihren Beitrag ein. Links zu Pastebin, Bitly und anderen Drittanbieterseiten werden systematisch entfernt.
* Wie in jedem Community-Forum erfolgt die Unterstützung freiwillig durch die Mitglieder. Für kommerziellen Support kontaktieren Sie bitte den Vertrieb von Tranquil IT unter +44 2 40 97 57 55.
Mitarbeiter
Nachrichten: 79
Anmeldung: 15. Januar 2018 – 20:59 Uhr

27. September 2018 – 17:12 Uhr

Ich habe die Tests durchgeführt, und wenn ich einen Befehl über psexec ausführe, sieht es wie im folgenden Bild aus:

authority nt\system

Bild

https://ibb.co/iwCjWp (Ich weiß nicht, warum das Bild nicht angezeigt wird, obwohl es sich im [img]-Tag befindet.)
Benutzeravatar
dcardon
WAPT-Experte
Nachrichten: 1955
Anmeldung: 18. Juni 2014 - 09:58 Uhr
Ort: Saint Sébastien sur Loire
Kontakt:

27. September 2018 – 17:48 Uhr

Hallo Elias,
empfilly schrieb: 27. Sep. 2018 - 17:12 Uhr. Ich habe die Tests durchgeführt, und wenn ich einen Befehl über psexec ausführe, sieht es wie im folgenden Bild aus:

authority nt\system

Bild

https://ibb.co/iwCjWp (Ich weiß nicht, warum das Bild nicht angezeigt wird, obwohl es sich im [img]-Tag befindet.)
In der cmd.exe sind Sie also als „Lokales System“ angemeldet (das ist das eigentliche Root-Konto unter Windows). Jetzt müssen Sie nur noch dieselbe Befehlszeile ausführen, die Sie zuvor in Ihre Konfiguration eingegeben haben

Code: Alle auswählen

setup.py
Datei und prüfen Sie, ob sie ordnungsgemäß ausgeführt wird.

Denis
Denis Cardon – Tranquil IT
Teilen Sie Ihre Erfahrungen auf WAPT! Senden Sie uns Ihre Blog- und Artikel-URLs im „Ihre Meinung des Forums, und wir werden sie auf der WAPT-
Mitarbeiter
Nachrichten: 79
Anmeldung: 15. Januar 2018 – 20:59 Uhr

27. September 2018 – 21:18 Uhr

dcardon,

Ich habe mich mit dem Unternehmen, das die Software entwickelt hat, in Verbindung gesetzt und eine weitere Variable erhalten, die ich stillschweigend entfernen kann.

Code: Alle auswählen

C:\ProgramData\{5F3A4BBA-1519-45F2-9BF7-1E9924E32CAA}>"Surfer(11.1.719)_Installer.exe" REMOVE=TRUE MODIFY=FALSE UNINSTALL=TRUE /s
Bei der Ausführung dieses Befehls in der Eingabeaufforderung über psexec.exe erscheint ein weiteres Fenster mit der Meldung, dass keine Datei oder kein Ordner gefunden wurde.

Das Fenster zeigt folgende Meldung an:
Der Pfad C:\Windows\system32\config\systemprofile\Desktop ist nicht verfügbar. Die Datei befindet sich möglicherweise auf der Festplatte des Computers oder in einem Netzwerk. Stellen Sie sicher, dass die Festplatte korrekt eingelegt ist und Sie mit dem Internet oder dem Netzwerk verbunden sind, und versuchen Sie es erneut. Falls die Datei weiterhin nicht gefunden werden kann, wurden die Daten möglicherweise an einen anderen Speicherort verschoben.
Erst nachdem ich auf OK klicke, wird die Deinstallation fortgesetzt.

Der Pfad C:\Windows\system32\config\systemprofile existiert, aber "Desktop" nicht.

Gibt es eine Möglichkeit, einen OK-Klick zu simulieren?
Benutzeravatar
vCardon
WAPT-Experte
Nachrichten: 278
Anmeldung: 06. Oktober 2017 - 22:55 Uhr
Ort: Nantes, Frankreich

28. September 2018 – 15:07 Uhr

embilly schrieb: 27. September 2018 - 21:18 Uhr
Der Pfad C:\Windows\system32\config\systemprofile\Desktop ist nicht verfügbar. Die Datei befindet sich möglicherweise auf der Festplatte des Computers oder in einem Netzwerk. Stellen Sie sicher, dass die Festplatte korrekt eingelegt ist und Sie mit dem Internet oder dem Netzwerk verbunden sind, und versuchen Sie es erneut. Falls die Datei weiterhin nicht gefunden werden kann, wurden die Daten möglicherweise an einen anderen Speicherort verschoben.
Wie wäre es, wenn Sie in Ihrem Installationsskript einen leeren Ordner C:\Windows\system32\config\systemprofile\Desktop erstellen?

Wenn Ihr Software-Deinstallationsskript eine Datei oder einen Ordner entfernen möchte und abstürzt, weil es die Datei nicht findet, warum erstellen Sie sie dann nicht einfach?.

WAPT ist oft nützlich, um Probleme mit Installations-/Deinstallationsskripten kommerzieller Software zu beheben.

Vincent
Vincent CARDON
Tranquil IT
Benutzeravatar
dcardon
WAPT-Experte
Nachrichten: 1955
Anmeldung: 18. Juni 2014 - 09:58 Uhr
Ort: Saint Sébastien sur Loire
Kontakt:

28. September 2018 – 15:24 Uhr

Hallo Elias,
embilly schrieb: 27. September 2018 - 21:18 Uhr Ich habe mich mit dem Unternehmen, das die Software entwickelt hat, in Verbindung gesetzt und eine weitere Variable erhalten, die ich stillschweigend entfernen kann.

Code: Alle auswählen

C:\ProgramData\{5F3A4BBA-1519-45F2-9BF7-1E9924E32CAA}>"Surfer(11.1.719)_Installer.exe" REMOVE=TRUE MODIFY=FALSE UNINSTALL=TRUE /s
Bei der Ausführung dieses Befehls in der Eingabeaufforderung über psexec.exe erscheint ein weiteres Fenster mit der Meldung, dass keine Datei oder kein Ordner gefunden wurde.

Das Fenster zeigt folgende Meldung an:
Der Pfad C:\Windows\system32\config\systemprofile\Desktop ist nicht verfügbar. Die Datei befindet sich möglicherweise auf der Festplatte des Computers oder in einem Netzwerk. Stellen Sie sicher, dass die Festplatte korrekt eingelegt ist und Sie mit dem Internet oder dem Netzwerk verbunden sind, und versuchen Sie es erneut. Falls die Datei weiterhin nicht gefunden werden kann, wurden die Daten möglicherweise an einen anderen Speicherort verschoben.
Erst nachdem ich auf OK klicke, wird die Deinstallation fortgesetzt.

Der Pfad C:\Windows\system32\config\systemprofile existiert, aber "Desktop" nicht.

Gibt es eine Möglichkeit, einen OK-Klick zu simulieren?
Wie Vincent bereits erwähnte, dürfte das vorherige Erstellen des Ordners C:\Windows\system32\config\systemprofile\Desktop das Problem beheben. Das Deinstallationsskript versucht vermutlich, ein während der Installation kopiertes Symbol zu entfernen, um Bereinigungen durchzuführen. Dies schlägt jedoch fehl, da der Benutzer „Lokales System“ keinen solchen Ordner besitzt (C:\Windows\system32\config\systemprofile\ ist der Wert von %USERPROFILE% für „Lokales System“). Dies erklärt auch, warum es im Benutzerkontext funktionierte.

In Ihrem Fall schlug die Deinstallation fehl, weil das Popup-Fenster im nicht sichtbaren Grafikpuffer von „Lokales System“ angezeigt wurde.

Jetzt verstehen Sie, warum man

Code: Alle auswählen

psexec -i -s cmd.exe
ist eine gute Möglichkeit, das Verhalten des Installationsprogramms zu überprüfen.

Am besten wäre es, wenn der Entwickler sein Installations-/Deinstallationsskript korrigieren würde!

Prost,

Denis
Denis Cardon – Tranquil IT
Teilen Sie Ihre Erfahrungen auf WAPT! Senden Sie uns Ihre Blog- und Artikel-URLs im „Ihre Meinung des Forums, und wir werden sie auf der WAPT-
Mitarbeiter
Nachrichten: 79
Anmeldung: 15. Januar 2018 – 20:59 Uhr

28. September 2018 – 19:29 Uhr

Hallo vcardon und dcardon!! Vielen Dank für die ganze Hilfe!!!

Es funktioniert!!! :D

Ich hatte nicht daran gedacht, den Ordner anzulegen, um ihn später wieder zu löschen. 8-)

Das endgültige Drehbuch:

Code: Alle auswählen

# -*- coding: utf-8 -*-
from setuphelpers import *
import os

uninstallkey = []

destdir = makepath(programfiles, "Golden Software", "Surfer 11")
exefile = "Surfer.exe"
inidir = "%s\\AppData\\Gradient.ini" % destdir
pstools = makepath(programfiles, "mspstools")

error_env = os.environ['WINDIR']
error_path = r'%s\system32\config\systemprofile\Desktop' % error_env

def install():
    if not os.path.isdir(error_path):
        os.makedirs(error_path)
    if os.path.exists(error_path):
        print("%s was success created!" % error_path)
    print('Uninstalling old versions of surfer...')
    for soft in installed_softwares("Surfer"):
        try:
            cmd = WAPT.uninstall_cmd(soft['key'])
            if isinstance(cmd,list) and len(cmd) == 1:
                cmd = cmd[0]
                if destdir and not 'UNINSTALL=YES' in cmd:
                    cmd = cmd + ' UNINSTALL=YES' + ' /s'
                    run(cmd)
            else:
                if not destdir and 'UNINSTALL=YES' in cmd:
                    run(cmd)
        except ValueError:
            pass
    print('Uninstalling old versions of Surfer completed!')
    print('Installing Surfer...')
    install_msi_if_needed('surfer.msi')
    if os.path.exists(destdir):
        filecopyto("Gradient.ini", "%s\\AppData" % destdir)
    if os.path.exists(inidir):
        print("Gradient.ini copied to the folder %s\\AppData" % destdir)
Falls Sie Verbesserungsvorschläge zum Skript haben, wäre ich Ihnen dankbar. Ich programmiere in Python und bin mir der Best Practices noch nicht ganz bewusst. Vielen Dank!
Gesperrt