wapt 2.0 problems encountered

Share your tips or issues concerning the WAPT Console or WAPT Agent here
Forum Rules
Community Forum Rules
* English support on www.reddit.com/r/wapt
* French community support is available on this forum
* Please prefix the topic title with [RESOLVED] if it is resolved.
* Please do not edit a topic that is tagged [RESOLVED]. Open a new topic referencing the old one.
* Specify the installed WAPT version, full version, and build number (2.2.1.11957 / 2.2.2.12337 / etc.) as well as the Enterprise/Discovery edition.
* Versions 1.8.2 and earlier are no longer supported. The only questions accepted regarding version 1.8.2 are related to upgrading to a supported version (2.1, 2.2, etc.).
* Specify the server OS (Linux/Windows) and version (Debian Buster/Bullseye - CentOS 7 - Windows Server 2012/2016/2019).
* Specify the OS of the administration/package creation machine and the machine with the problematic agent, if applicable (Windows 7/10/11/Debian 11/etc.).
* Avoid asking multiple questions when opening a topic, otherwise it may be ignored. If there are multiple topics, open separate topics, preferably one after the other and not all at the same time (i.e., do not spam the forum).
* Include code snippets, screenshots, and other images directly in the post. Links to Pastebin, Bitly, and other third-party sites will be systematically removed.
* As with any community forum, support is provided voluntarily by members. If you require commercial support, you can contact Tranquil IT's sales department at 02.40.97.57.55
Locked
yann83
Messages: 40
Registration: Apr 22, 2021 - 07:54

April 22, 2021 - 8:13 AM

Hello,

I'm currently testing WAPT version 2.0.

I find using certificates extremely complicated, even though there are several pages in the manual on the subject, but I don't find it very clear. Perhaps a quick start section with minimal instructions would help.

I encountered a bug in the package add wizard; it doesn't take into account the "Silent options" field when I click on "Edit manually." This happened to me twice.

When editing in pysrypter, it's always in Python version 2, while WAPT 2.0 uses version 3, which I don't quite understand.

In the script, the Uninstallkey, entered like this: uninstallkey = ["{guiid}"] or uninstallkey = ["nomprogramme_is1"] (a key present in the registry in the uninstall section), has never worked.
The def uninstall() function must always be filled in.

Editing packages is a nightmare to use! Indeed, you should read about package cloning rather than editing, because not only does it create a new package every time you change the content, but it also increments the version number systematically. While this doesn't affect the package itself, it makes readability and tracking impossible. This is especially true for versions like 04.02.00, which becomes 04.02.1.

Do you have any solutions for the problems I'm encountering?

Thank you.
User avatar
erenodau
Messages: 28
Registration: February 20, 2019 - 10:42
Location: Saint Sébastien sur Loire
Contact :

April 22, 2021 - 12:14

Hello Yann83,

Thank you for your feedback. We are currently working on improving the documentation.

Regarding editing via PyScripter, your problem may be related to a simple display issue. WAPT 2.0 does indeed use Python 3. It's also possible that you have some remnants of Python 2 on your machine.

Concerning the uninstall key, I suggest you share a code example on the forum. Otherwise, it's quite difficult to help you.

The incrementing of version numbers is intentional and an integral part of how WAPT works; everything is explained here: https://www.wapt.fr/fr/doc/wapt-package ... ml#version.

We also encourage you to explore the packages we offer on the WAPT Store; they may be useful: https://store.wapt.fr/.

You can also benefit from more in-depth support from our team:
- Through a support package: https://www.tranquil.it/gerer-parc-info ... port-wapt/
- Through WAPT training: https://www.tranquil.it/gerer-parc-info ... tion-wapt/.

Feel free to contact us to discuss these options. Have

a great day!
User avatar
sfonteneau
WAPT Expert
Messages: 2318
Registered: July 10, 2014 - 11:52 PM
Contact :

April 26, 2021 - 2:43 PM

yann83 wrote: Apr 22, 2021 - 8:13 AM I find using certificates very, very complicated. There are several pages in the manual on the subject, but I don't find it very clear. Perhaps a quick start section with minimal instructions could help.
We've just added a simple way to create a certificate copy package on clients to the package creation wizard, which should make things easier. It will be released soon
yann83 wrote: Apr 22, 2021 - 08:13 I encountered a bug in the package add wizard; it doesn't take into account the "Silent options" field when I click on edit manually. It happened to me twice.
I just tested it with an executable and I don't encounter the problem in version 2.0
yann83 wrote: Apr 22, 2021 - 08:13 When editing in pysrypter, we are always in python version 2 while Wapt 2.0 uses version 3, I don't quite understand.
If you previously had version 1.8, it's possible the name in PyScripter hasn't updated correctly. You can check in PyScripter by going to "Run" -> "Python Version" -> "Set Python Versions"; you should find the path to the WAPT installation folder there.
yann83 wrote: Apr 22, 2021 - 08:13 In the script, the Uninstallkey, entered like this: uninstallkey = ["{guiid}"] or uninstallkey = ["nomprogramme_is1"] (key present in the registry in the uninstall section), has never worked.
You must always fill in the def uninstall()
For the remove function to work without going through uninstall, it is absolutely necessary to have put the key either in the uninstallkey variable or in install_exe_if_needed or in install_msi_if_needed.

But the following subtlety is important: To test correctly with remove, you must always have launched an installation beforehand, because the code executed during uninstallation is the one that was stored in the sqlite database, and the code is only written during installation.

One thing to remember then: if you have just added the key you must always restart the installation before attempting to uninstall.
yann83 wrote: Apr 22, 2021 - 08:13 Package editing is a nightmare to use! You should really read about package cloning rather than editing, because not only does it create a new package every time you change the content, but it also increments the version number systematically. While this doesn't affect the package itself, it makes it impossible to read and track. Especially for versions like 04.02.00 which becomes 04.02.1.
When you build your package, WAPT increments the package version. That's why all packages end with -0. In your example, the package version should therefore be 04.02.00-0, and after upload, it will become 4.2.0-1. WAPT does not automatically delete old packages; you must do so yourself if you really want to.
yann83
Messages: 40
Registration: Apr 22, 2021 - 07:54

April 29, 2021 - 11:33

Good morning,

First of all, a big thank you for your feedback.

The silent options are correctly entered in setup.py, maybe I made a mistake or an error.

For Python, it's strange:

I'll let you see for yourself:
https://imgur.com/AskZTkg

I have two versions.

For uninstallation, here is an example:

https://imgur.com/WX3a6yQ

So by default, when I generate a package, the uninstallation key is not displayed in uninstallkey

By default, the program is not installed on the computer. I'm running the installation first.

Code: Select all

from setuphelpers import *

uninstallkey = ['2BC24DC9-F397-4021-A4FC-A3571898E856_is1']

def install():
    install_exe_if_needed("Setup_Infos_Support_3.7.3.exe",'/VERYSILENT /NORESTART /LOG=C:\PMF\RAPPINST\WAPT_InfosSupport.log',key='2BC24DC9-F397-4021-A4FC-A3571898E856_is1',min_version='3.7.3')
    
def uninstall():
    pass
    # put here what to do when package is removed from host
    # implicit context variables are WAPT, control, user, params, run

def session_setup():
    print('Session setup for %s' % control.asrequirement())
    # put here what to do when package is configured inside a user session
    # implicit context variables are WAPT, control, user, params

def update_package():
    pass
    # put here what to do to update package content with newer installers.
    # launched with command wapt-get update-package-sources <path-to-wapt-directory>
    # implicit context variables are WAPT, basedir, control, user, params, run
    # if attributes in control are changed, they should be explicitly saved to package file with control.save_control_to_wapt()

def audit():
    pass
    # put here code to check periodically that state is matching expectations
    # return "OK", "WARNING" or "ERROR" to report status in console.
    # all print statement are reported too
    return "OK"
User avatar
sfonteneau
WAPT Expert
Messages: 2318
Registered: July 10, 2014 - 11:52 PM
Contact :

April 29, 2021 - 11:47

Based on your code, it should look like this:

Code: Select all

from setuphelpers import *

uninstallkey = []

def install():
    install_exe_if_needed("Setup_Infos_Support_3.7.3.exe",'/VERYSILENT /NORESTART',key='2BC24DC9-F397-4021-A4FC-A3571898E856_is1',min_version='3.7.3')
    
If you don't have {} do not add them to the uninstallkey

Remember to reinstall the system before testing the uninstallation

If you specify the key in the install_exe_if_needed function, there's no need to put uninstallkey in the list at the top

For the Python version, it's just a problem with the name display in PyScripter. (You can rename it manually in PyScripter and name it wapt.).
Attachments
rename.PNG
renomer.PNG (12.92 KB) Viewed 7866 times
yann83
Messages: 40
Registration: Apr 22, 2021 - 07:54

April 29, 2021 - 2:10 PM

Thanks to Pyscrypter, it solved my problem.

However, I still can't uninstall a piece of software.
This time I tried with third-party software:
https://ultraviewer.net/en/download.html

Here is the code I used:

Code: Select all

from setuphelpers import *

uninstallkey = []

def install():
    install_exe_if_needed("UltraViewer_setup_6.2_en.exe",'/VERYSILENT /SUPPRESSMSGBOXES /NORESTART',key='{E0FABD74-083B-47F4-AC5B-CA4237BF8913}_is1',min_version='6.2')

def uninstall():
    pass
    # put here what to do when package is removed from host
    # implicit context variables are WAPT, control, user, params, run
The installation is OK but not the uninstallation.
The console output is as follows:

Code: Select all

Ligne de Commande : uninstall "C:\waptdev\118301-ultraviewer-wapt\WAPT\.."
Using config file: C:\Program Files (x86)\wapt\wapt-get.ini
Uninstalling C:\waptdev\118301-ultraviewer-wapt ...
None
Uninstallation done
>>> 
I don't understand where I'm going wrong.
Locked