05-25-2011 05:36 AM
I read in this forum that launching from the command prompt
setup /log "logfile.txt"
would uninstall the application (if already installed) and create a log file.
I tried with an application developed with CVI 2010, but this doesn't work: the installer tries to install the same application even if is already installed.
How can I get a log file for the uninstall process?
05-25-2011 06:30 AM - edited 05-25-2011 06:39 AM
I read this KBs:
but
Moreover I noticed that when the CVI RTE is installed by my application installer, it's not removed when I remove my application, and it's impossible to remove it (if it is installed together with CVI IDE, under Control Panel >> Add or Remove Programs there is a "National Instruments Software" item that can be used to remove the RTE).
I suspect that this can produce some problems when you replace an application developed with CVI 2010 with a previous version developed with CVI 2009...
05-27-2011 05:03 AM
Hi,
You could see this:
http://digital.ni.com/public.nsf/allkb/EFE304C2B1101F09862567D9006605B8?OpenDocument
Claudio
05-27-2011 05:11 AM - edited 05-27-2011 05:13 AM
Clicking on the link you postes, I see a NI error page with this message
Error
You are not authorized to view this document
06-11-2011 03:57 PM
Hi Vix,
The command line application that you use to uninstall NI software is not setup.exe. It's uninst.exe. This KB describes how to use it in detail. And yes, you should be able to log the uninstall.
However, since it sounds like you want to uninstall a CVI-built user distribution, uninst.exe might not be the best choice, since it is intended to uninstall NI software. You could, conceivably, use it to uninstall the CVI run-time engine and use the /ForceDependents flag to force it to also uninstall the application that installed the RTE, but that's dangerous, since /ForceDependents will cause it to uninstall anything that depends on the CVI run-time engine, including other NI software and other user applications that might also be present.
A better solution would be to use msiexec /x to uninstall the specific user program that you want to uninstall. Note that this would not remove any NI software that this application installed. For that, you'll have to also use uninst.exe (with or without /ForceDependents).
I don't completely understand what you wrote here:
I noticed that when the CVI RTE is installed by my application installer, it's not removed when I remove my application, and it's impossible to remove it (if it is installed together with CVI IDE, under Control Panel >> Add or Remove Programs there is a "National Instruments Software" item that can be used to remove the RTE).
Are you saying that when you install just the application, without the CVI ADE, you do not see the NI Software item in your Add or Remove Programs? If so, that is probably because you de-selected the top-level item of the CVI Run-Time Engine in the Drivers and Components of the Edit Distribution dialog. If you do this, you end up not with the full CVI RTE installation, but only with some assorted files that are needed for your application to work, and as a result, the CVI RTE will not appear under the NI Software item. However, if that's what you did, those files should nevertheless also be removed when you uninstall your application using msiexec /x. Is this what you meant?
Luis
06-16-2011 07:29 AM
A better solution would be to use msiexec /x to uninstall the specific user program that you want to uninstall.
How can I get the right Product Code to pass to the /I parameter?
However, if that's what you did, those files should nevertheless also be removed when you uninstall your application using msiexec /x. Is this what you meant?
This is exactly what I did, but some of the components are not uninstalled as expected.
As a matter of facts I saved a lot of log files that show this anomaly and I sent to the Italian customer support (Reference#1032256).
I hope that these files can help you fixing this problem that brings to fatal failures of the whole system.
06-16-2011 11:44 AM
To get the product code, you need to look inside the main .msi file in your distribution (the main .msi file is the one inside the dp folder). To look inside an .msi you have to download and install Orca, if you don't already have it. When you run Orca, browse to the Property table and then look for the ProductCode property. Be aware that this product code changes each time you rebuild your distribution.
But note that if you still have the distribution files available in the machine where you want to uninstall it from, you can also pass the full path of the msi file that you want to uninstall, instead of the product code -- it's the same .msi file that is under the dp folder. I tested this and it works. This way, you don't need the product code. For example:
msiexec /x C:\Users\Public\Documents\National Instruments\CVI2010\samples\userint\custctrl\movectrl\cvidistkit.Movedemo\Volume\bin\dp\Movedemo.msi
As for the components that are being left behind, I'll try get a hold of your logs. But in the meanwhile, do you know which files or registry values are being left uninstalled?
Luis