[RISOLTO] Problema di creazione del pacchetto: PDF24

Domande sul packaging WAPT / Richieste e assistenza sui pacchetti Wapt.
Regole del forum
Regole del forum della community
* Supporto in inglese su www.reddit.com/r/wapt
* Supporto della community in francese disponibile su questo forum
* Si prega di anteporre [RISOLTO] al titolo dell'argomento se è stato risolto.
* Si prega di non modificare un argomento contrassegnato con [RISOLTO]. Aprire un nuovo argomento facendo riferimento a quello precedente.
* Specificare la versione di WAPT installata, la versione completa e il numero di build (2.2.1.11957 / 2.2.2.12337 / ecc.) nonché l'edizione Enterprise/Discovery.
* Le versioni 1.8.2 e precedenti non sono più supportate. Le uniche domande accettate relative alla versione 1.8.2 riguardano l'aggiornamento a una versione supportata (2.1, 2.2, ecc.).
* Specificare il sistema operativo del server (Linux/Windows) e la versione (Debian Buster/Bullseye - CentOS 7 - Windows Server 2012/2016/2019).
* Specificare il sistema operativo della macchina di amministrazione/creazione dei pacchetti e della macchina con l'agente problematico, se applicabile (Windows 7/10/11/Debian 11/ecc.).
* Evitare di porre più domande quando si apre una discussione, altrimenti potrebbe essere ignorata. Se ci sono più discussioni, aprirle separatamente, preferibilmente una dopo l'altra e non tutte contemporaneamente (ovvero, non intasare il forum).
* Includere frammenti di codice, screenshot e altre immagini direttamente nel post. I link a Pastebin, Bitly e altri siti di terze parti verranno sistematicamente rimossi.
* Come in qualsiasi forum della community, il supporto è fornito volontariamente dai membri. Se si necessita di supporto commerciale, è possibile contattare il reparto vendite di Tranquil IT al numero 02.40.97.57.55
Bloccato
DominiqueG
Messaggi: 2
Registrazione: 23 ott 2018 - 06:21

24 ottobre 2018 - 03:59

Ciao a tutti

Nonostante abbia riflettuto e rimuginato sul problema, non ho ancora trovato la soluzione.

Sto cercando di creare un pacchetto Wapt per PDF24 Con MSI continuo a ricevere un errore con la versione della chiave di disinstallazione:

Codice: Seleziona tutto

2018-10-23 11:14:03,700 CRITICAL Fatal error in install script: EWaptSetupException: Fatal error : MSI pdf24-creator-8.6.1.msi has been installed and the uninstall key {E6280618-D2EA-48D8-9CCA-D50BCCDBCD62} found but version is not good:
Traceback (most recent call last):
  File "C:\Program Files (x86)\wapt\common.py", line 3512, in install_wapt
    exitstatus = setup.install()
  File "c:\waptdev\ire-pdf24-creator-wapt\setup.py", line 53, in install
    install_msi_if_needed('pdf24-creator-%s.msi' %versionsoft, 'AUTOUPDATE=[No] DESKTOPICONS=[No] FAXPRINTER=[No] /[QN]',get_version=getversionpdf24, killbefore=['pdf24.exe'])
  File "C:\Program Files (x86)\wapt\common.py", line 3471, in new_func
    return func(*args,**kwargs)
  File "C:\Program Files (x86)\wapt\setuphelpers.py", line 3917, in install_msi_if_needed
    error('MSI %s has been installed and the uninstall key %s found but version is not good' % (msi,key))
  File "C:\Program Files (x86)\wapt\setuphelpers.py", line 4305, in error
    raise EWaptSetupException(u'Fatal error : %s' % reason)
EWaptSetupException: Fatal error : MSI pdf24-creator-8.6.1.msi has been installed and the uninstall key {E6280618-D2EA-48D8-9CCA-D50BCCDBCD62} found but version is not good

Tuttavia, la versione e la chiave di disinstallazione vengono visualizzate nelle proprietà MSI:

Codice: Seleziona tutto

version_msi = get_msi_properties('pdf24-creator-%s.msi' %versionsoft)
print(version_msi)
    
    ## me retourne :
{u'PRIMARYFOLDER': u'INSTALLDIR', u'UpgradeCode': u'{8D2DF301-CE53-4939-81C2-D659E7B857BE}', u'WixUI_Mode': u'FeatureTree', u'FAXPRINTER': u'Yes', u'SecureCustomProperties': u'INSTALLDIR;PREVIOUSVERSIONSINSTALLED', u'AUTOUPDATE': u'No', u'ALLUSERS': u'1', u'ARPPRODUCTICON': u'ProductIcon.exe', u'DefaultUIFont': u'WixUI_Font_Normal', u'ProductLanguage': u'1033', u'ARPHELPLINK': u'http://www.pdf24.org', u'PROGRAMMENU': u'Yes', u'INSTALLLEVEL': u'3', u'Manufacturer': u'www.pdf24.org', u'ProductCode': u'{E6280618-D2EA-48D8-9CCA-D50BCCDBCD62}', u'ARPURLUPDATEINFO': u'http://www.pdf24.org', u'ProductVersion': u'8.6.1', u'ErrorDialog': u'ErrorDlg', u'EXEUNINSTALL': u'False', u'WixUIRMOption': u'UseRM', u'UPDATEMODE': u'1', u'DESKTOPICONS': u'Yes', u'ProductName': u'PDF24 Creator', u'InstallMode': u'Complete'}


 wapt-get list-registry pdf24
 
     ## me retourne :
     
UninstallKey                           Software        Version      Uninstallstring
------------------------------------------------------------------------------------------------------------------------
{E6280618-D2EA-48D8-9CCA-D50BCCDBCD62} PDF24 Creator   8.6.1        MsiExec.exe /I{E6280618-D2EA-48D8-9CCA-D50BCCDBCD62}
Cosa ho già provato:

* Cerca una soluzione nella documentazione di Wapt: https://www.wapt.fr/fr/doc/Frequent-pro ... s-not-good

* Ho provato a forzare la versione nel comando

Codice: Seleziona tutto

    versionsoft = control['version'].split('-',1)[0]
    def getversionpdf24(key):
        return get_msi_properties('pdf24-creator-%s.msi' %versionsoft)['ProductVersion']
    install_msi_if_needed('pdf24-creator-%s.msi' %versionsoft, 'AUTOUPDATE=[No] DESKTOPICONS=[No] FAXPRINTER=[No] /[QN]',get_version=getversionpdf24, killbefore=['pdf24.exe'])

Qualcuno ha qualche idea?
Grazie in anticipo


Sistema:
* Server Wapt Windows 7 a 64 bit
* Macchina per la creazione del pacchetto: Win7 64-bit / pyscripter

PS1: Argomenti per il programma di installazione con MSI: https://help.pdf24.org/it/forum/argomento/ ... -argomenti
https://help.pdf24.org/it/forum/argomento/ ... -argomenti

P.S.: In alternativa, so che c'è PDF Creator nel repository WAPT, ma mi infastidisce perché mi chiede continuamente di installare un altro programma ogni volta che stampo. Personalmente, trovo PDF24 più pulito

PS3: Ho provato a usare altri script come ispirazione per la funzione update_package(), ma non sono riuscito a trovare una soluzione. Se qualcuno ha qualche idea per aiutarmi a procedere, gliene sarei grato :D
Ultima modifica di DominiqueG il 26 ottobre 2018 alle 06:02, modificato 1 volta.
Avatar utente
dcardon
Esperto WAPT
Messaggi: 1908
Registrazione: 18 giugno 2014 - 09:58
Ubicazione: Saint Sébastien sur Loire
Contatto:

24 ottobre 2018 - 15:08

Ciao DominiqueG,
DominiqueG ha scritto: 24 ott 2018 - 03:59

Codice: Seleziona tutto

    versionsoft = control['version'].split('-',1)[0]
    def getversionpdf24(key):
        return get_msi_properties('pdf24-creator-%s.msi' %versionsoft)['ProductVersion']
    install_msi_if_needed('pdf24-creator-%s.msi' %versionsoft, 'AUTOUPDATE=[No] DESKTOPICONS=[No] FAXPRINTER=[No] /[QN]',get_version=getversionpdf24, killbefore=['pdf24.exe'])
Nella riga `install_msi_if_needed`, "properties" è una variabile denominata. Se "properties" viene omesso, diventa una variabile posizionale e sostituisce il numero min_version. Ed è noto che AUTOUPDATE > 8.6.1...

Codice: Seleziona tutto

install_msi_if_needed('pdf24-creator-8.6.1.msi', properties={'AUTOUPDATE':'[No]','DESKTOPICONS':'No','FAXPRINTER':'[No]'})
Se hai diversi pacchetti interessanti, puoi creare il tuo repository personale, come ha fatto Simon con le web ants. Tutto ciò che ti serve è un server web e generare un file Packages. Per generare il file indice Packages, ti serve lo strumento wapt-scanpackages.py; prima era incluso nel pacchetto tis-waptrepo, ma ora è incluso direttamente nel pacchetto tis-waptserver. Vale la pena dargli un'occhiata.

Sinceramente,

Denis
Denis Cardon - Tranquil IT
Condividi le tue esperienze su WAPT! Inviaci gli URL dei tuoi blog e articoli nella "La tua opinione del forum e li pubblicheremo sul di WAPT
DominiqueG
Messaggi: 2
Registrazione: 23 ott 2018 - 06:21

26 ottobre 2018 - 06:43

Ciao @dcardon

Nilkel, funziona alla grande, :D grazie mille.

Per quanto riguarda il codice, proverò a farlo, ma penso che pubblicherò lo script su un repository Git.

A proposito, per darti un po' di contesto, sto lavorando su una nave che posa cavi sottomarini in tutto il mondo. Mentre questi cavi, una volta operativi, supereranno facilmente 1 terabyte al secondo per coppia di fibre, a bordo siamo bloccati con una misera connessione internet satellitare, circa 256K per circa 30 workstation...

È incredibilmente lenta, e tutto questo per dire che gestire gli aggiornamenti dei programmi (oltre alla loro installazione centralizzata) è una vera sfida, e la tua soluzione è particolarmente interessante.

Per il momento, sto solo riscrivendo i pacchetti in modo che includano sia gli installer a 64 bit che a 32 bit. Ma quando ne saprò di più, condividerò tutto.

A proposito, se qualcuno trova un modo per creare una funzione `update()` per questo pacchetto, sarei interessato.

Il link per il download è semplice: https://www.pdf24.org/products/pdf-crea ... reator.msi,
ma ho difficoltà a impostare il controllo automatico della presenza di una nuova versione prima di avviare il download.

Cordiali saluti,
Dominique
Bloccato