Seite 1 von 1

Crouzet Virtual Display-Paket

Veröffentlicht: 27. November 2023 - 11:39 Uhr
von den Gälen
Guten Morgen,

Ich versuche, ein Paket für die Crouzet-Software „Virtual Display“ zu erstellen. Es basiert auf meinen Crouzet Soft- und Touch Soft-Paketen, die ebenfalls Treiber installieren. Trotzdem werden mir beim Start von Setup_CVD_PC_V2_3_01_02.exe weiterhin diese beiden Bildschirme angezeigt (siehe beigefügtes Bild).

In meinem Paket habe ich das Treiberverzeichnis „DriverUSB“ aus „C:\Program Files (x86)\Crouzet automation\Crouzet Virtual Display\“ kopiert. Ich habe versucht, die Treiber mit pnputil oder dpinst zu installieren, erhalte aber immer die gleichen Fehlermeldungen. Wenn ich manuell auf „Weiter“ und „Fertigstellen“ klicke, wird die Installation fehlerfrei abgeschlossen.

Hier ist die install()-Funktion:

Code: Alle auswählen

def install():
    print(r'Installation du certificat Crouzet et SiliconLabs')
    currentpath = os.path.dirname(os.path.realpath(__file__))
    run(r'C:\Windows\System32\certutil.exe -addstore "TrustedPublisher" %s\crouzet.cer' % currentpath)
    run(r'C:\Windows\System32\certutil.exe -addstore "TrustedPublisher" %s\siliconlabs.cer' % currentpath)

    print(r'Installation des pilotes USB')
    with disable_file_system_redirection():
        run(r'C:\Windows\System32\pnputil.exe -i -a "%s\DriverUSB\x64\ftdibus.inf"' % basedir)
        run(r'C:\Windows\System32\pnputil.exe -i -a "%s\DriverUSB\x64\ftdiport.inf"' % basedir)
        run(r'C:\Windows\System32\pnputil.exe -i -a "%s\DriverUSB\windrv_BLE\x64\dfu.inf"' % basedir)
        run(r'C:\Windows\System32\pnputil.exe -i -a "%s\DriverUSB\windrv_BLE\x64\usbserial.inf"' % basedir)

    #run_notfatal(r'%s\DriverUSB\windrv_BLE\x64\dpinst.exe /S /F'  % currentpath)
    #run_notfatal(r'%s\DriverUSB\x64\dpinst.exe /S /F'  % currentpath)

    print(u'Installation de %s' % app_name)
    run_notfatal('Setup_CVD_PC_V2_3_01_02.exe /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-')

Betreff: Crouzet Virtual Display-Paket

Veröffentlicht: 4. Dezember 2023 - 11:50 Uhr
von cbaziret
Hallo,

wir haben versucht, die Software selbst zu installieren und haben dasselbe Problem. Das Installationsprogramm startet die Treiberinstallation unabhängig davon, ob die Treiber bereits installiert sind oder nicht. Es handelt sich also nicht um eine unbeaufsichtigte Installation.

Meine Lösung wäre, zunächst eine unbeaufsichtigte Treiberinstallation durchzuführen und anschließend die Software als portable Version zu installieren.

Für die portable Installation müssen Sie die Software nur einmal installieren, die Quelldateien aus „C:\Program Files (x86)\Crouzet automation\Crouzet Virtual Display“ kopieren und in denselben Ordner verschieben.

Betreff: Crouzet Virtual Display-Paket

Veröffentlicht: 4. Dez. 2023 - 13:19 Uhr
von den Gälen
Danke für die Info! Ich hätte nicht gedacht, dass man diese Crouzet-Softwareprogramme portabel machen könnte.

Betreff: Crouzet Virtual Display-Paket

Veröffentlicht: 15. Januar 2024 – 14:45 Uhr
von den Gälen
Falls es jemandem hilft, hier ein Beispiel einer funktionierenden setup.py-Datei zur Installation von Crouzet Virtual Display (durch Kopieren des Installationsordners und der Treiber). Sie muss natürlich noch verbessert/angepasst werden.

Code: Alle auswählen

# -*- coding: utf-8 -*-
from setuphelpers import *
uninstallkey = []

app_name = 'Crouzet Virtual Display'
app_dir = makepath(programfiles32, 'Crouzet automation')
app_dir_binaries = makepath(app_dir,'Crouzet Virtual Display')
binary_name = "Crouzet Virtual Display.exe"
kill_list = [binary_name]
shortcutsdir = makepath(common_desktop(),'Logiciels','Elec - Automatisme')
uninstall_string = r'"C:\Program Files (x86)\Crouzet automation\Crouzet Virtual Display\unins000.exe" /silent'

def install():
    #print(r'Désinstallation de l\'ancienne version')
    run_notfatal(uninstall_string)
    print(r'Installation des pilotes USB')
    currentpath = os.path.dirname(os.path.realpath(__file__))
    with disable_file_system_redirection():
        run_notfatal(r'C:\Windows\System32\pnputil.exe -i -a "%s\DriverUSB\x64\ftdibus.inf"' % basedir)
        run_notfatal(r'C:\Windows\System32\pnputil.exe -i -a "%s\DriverUSB\x64\ftdiport.inf"' % basedir)
        run_notfatal(r'C:\Windows\System32\pnputil.exe -i -a "%s\DriverUSB\windrv_BLE\x64\dfu.inf"' % basedir)
        run_notfatal(r'C:\Windows\System32\pnputil.exe -i -a "%s\DriverUSB\windrv_BLE\x64\usbserial.inf"' % basedir)
    print(r'Copie du dossier %s' % app_dir_binaries)
    killalltasks(kill_list)
    if not isdir(app_dir_binaries):
        mkdirs(app_dir_binaries)
    copytree2(app_name, app_dir_binaries,onreplace = default_overwrite)
    print(r'Création du raccourci %s sur le bureau public' %app_name)
    if not isdir(shortcutsdir):
        mkdirs(shortcutsdir)
    create_shortcut(makepath(shortcutsdir,'%s.lnk' %app_name), target=makepath(app_dir_binaries,binary_name))
    remove_desktop_shortcut(app_name)

def uninstall():
    print(r"Suppression de %s" %app_name)
    killalltasks(kill_list)
    if isdir(app_dir_binaries):
        remove_tree(app_dir_binaries)
    if  isfile(makepath(shortcutsdir,'%s.lnk' %app_name)):
        remove_file(makepath(shortcutsdir,'%s.lnk' %app_name))

def audit():
    if isfile(makepath(app_dir_binaries,binary_name)):
        return("OK")