|
|
|||||||
OK so finally i got a script written. what i will be doing is put it into a GPO and then when th user logon it automathically runs itself with no user prompt; essentially i want it to be in passive mode, and i need it to reboot after the script too..... When i debug this scrip it gives me an 'Invalid function call error" Please help me...... Break off If Exist ("C:\Program Files\Pivotal\Relation") = 0 MessageBox ("Please wait while Relationship is uninstalled") Shell 'C:\WINDOWS\uninst.exe-y -f"C:\Program Files\Pivotal\Relation" >NUL 2>NUL /passive' Sleep 6 Else ? "Error Code = " @Error " Error Details = " @Serror EndIf |
||||||||
|
|
|||||||
Code: $rc = messagebox("Please wait while Relationship is uninstalled","Uninstall",0,48,6) From the manual MESSAGEBOX Action Displays a standard dialog box in Windows. Syntax MESSAGEBOX ("message", "title", style, time-out) Parameters Message The message to display in the dialog box. Title The title of the dialog box. Style Optional numeric expression that is the sum of values specifying the number and type of buttons to display, the icon style to use, the identity of the default button, and the modality. The following table illustrates the values used and the meaning of each group of values. Buttons to display Value Meaning 0 Display OK button only. 1 Display OK and Cancel buttons. 2 Display Abort, Retry, and Ignore buttons. 3 Display Yes, No, and Cancel buttons. 4 Display Yes and No buttons. 5 Display Retry and Cancel buttons. Icon to display Value Meaning 16 Stop symbol 32 Question mark 48 Exclamation mark 64 Information symbol Default button Value Meaning 0 First button is default. 256 Second button is default. 512 Third button is default. Modality Value Meaning 0 Application-modal. The user must respond to the message box before continuing work in the application. 4096 System-modal. All applications are suspended until the user responds to the message box. When adding numbers to create a final value for the argument type, use only one number from each group. If style is omitted, a default value of 0 is assumed. Time-out Optional numeric expression representing the number of seconds after which to close the dialog box. Note The time-out feature only works if the MESSAGEBOX dialog box is the active window for the duration of the time-out. If the user switches away from KiXtart and activates another application, the MESSAGEBOX dialog box is not closed. Remarks MESSAGEBOX displays a maximum of 1024 characters in application-modal dialog boxes. Longer messages are truncated after the 1024th character. Message strings longer than 255 characters with no intervening spaces are truncated after the 255th character. For system-modal dialog boxes, the number of characters you can display depends on screen resolution and number of lines in the message. MESSAGEBOX breaks lines automatically at the right edge of the dialog box. If you want to set line breaks yourself, place a linefeed (ANSI character 10) before the first character of the text that is to begin each new line. Returns The value returned by MESSAGEBOX indicates which button was selected, as shown in the following table. Value Meaning -1 User did not respond to the dialog box within the specified time-out period. 1 OK button selected. 2 Cancel button selected. 3 Abort button selected. 4 Retry button selected. 5 Ignore button selected. 6 Yes button selected. 7 No button selected. If the dialog box contains a Cancel button, pressing esc has the same effect as choosing Cancel. |
||||||||
|
|
|||||||
Please DON'T SHOUT in the title! This line is wrong: Shell 'C:\WINDOWS\uninst.exe-y -f"C:\Program Files\Pivotal\Relation" >NUL 2>NUL /passive' You cannot redirect without the command interpreter. There is a FAQ on that. There should be a space between .exe and -y The /passive switch should be before the failed redirects. |
||||||||
|
|
|||||||
I did the recommended changes but it still returns the same error...please help, anyone........ Break off If Exist ("C:\Program Files\Pivotal\Relation") = 0 $rc = MessageBox("Please wait while Relationship is uninstalled","ESI INTL",0) Shell 'C:\WINDOWS\uninst.exe -y -f "C:\Program Files\Pivotal\Relation" /passive' Sleep 6 Else ? "Error Code = " @Error " Error Details = " @Serror EndIf |
||||||||
|
|
|||||||
Your Exist() logic is backwards. |
||||||||
|
|
|||||||
so how would you reqrite the Exist logic? |
||||||||
|
|
|||||||
What version of kix are you running? @kix |
||||||||
|
|
|||||||
Originally Posted By: selormquarshie so how would you reqrite the Exist logic? There is nothing in your latest posted code that should throw an error, so if you are getting an error, then you are not showing us all the code. |
||||||||
|
|
|||||||
Quote: automathically runs itself with no user prompt; essentially i want it to be in passive mode, and i need it to reboot You want no user prompt and but use a MESSAGEBOX() function, you want it to reboot but don't incldue a SHUTDOWN command. Also, do your users have local admin right? The uninstall will most likely require those. |
||||||||
|
|
|||||||
ok here's what i got now...however when i debug ..it jumps the MESSAGEBOX () and it does not show the SHELL command. Yes all my users have local admin rights...using kix 4.51. please any suggestions are welcome...my deadline is noon tomorrow....please help... Code: Break off If Exist ("C:\Program Files\Pivotal\Relation") = 1 $rc = MessageBox("Please wait while Relationship is uninstalled","ESI INT'L", 10, 0, 1) Shell 'C:\WINDOWS\uninst.exe -y -f "C:\Program Files\Pivotal\Relation" /passive' Sleep 6 Else ? "Error Code = " @Error " Error Details = " @Serror EndIf $rc = Shutdown("", "System is being rebooted to enable new settings.", 30, 0, 1) [edit: code tags added by Allen.] |
||||||||
|
|
|||||||
As you have it now, it looks like the shutdown will be a continuous loop... everyone will be effected by it to... also please place your code in between the code tags (# on the post bar). Might you give this a try (untested) Code: $programpath="C:\Program Files\Pivotal\Relation\" If Exist($programpath) $rc = MessageBox("Please wait while Relationship is uninstalled","ESI INT'L", 10, 0, 1) Shell 'C:\WINDOWS\uninst.exe -y -f "C:\Program Files\Pivotal\Relation" /passive' Sleep 6 $rc = Shutdown("", "System is being rebooted to enable new settings.", 30, 0, 1) Else ? $programpath + " Does not Exist" EndIf |
||||||||
|
|
|||||||
If it skips past, then you must not have a folder called "Relation" under the subfolder "Pivotal" in "C:\Program Files". |
||||||||
|
|
|||||||
Moderator, your sample code jumps from the Exist command straight to the ? $programpath + " Does not Exist" line when i attempt to debug it...i guess it should go thru all required steps in debug mode but it's not happening here....i appreciate all your help so please keep them coming.... $programpath="C:\Program Files\Pivotal\Relation\" If Exist($programpath) $rc = MessageBox("Please wait while Relationship is uninstalled","ESI INT'L", 10, 0, 1) Shell 'C:\WINDOWS\uninst.exe -y -f"C:\Program Files\Pivotal\Relation" /passive' Sleep 6 $rc = Shutdown("", "System is being rebooted to enable new settings.", 30, 0, 1) Else ? $programpath + " Does not Exist" EndIf |
||||||||
|
|
|||||||
I think relation is not a folder but a file without extension... |
||||||||
|
|
|||||||
i'm testing at home b4 i deploy on the network tomorrow at work, so i did a sample on my machine but it's still not taking.... $programpath="C:\Program Files\Macromedia\Dreamweaver MX\" If Exist($programpath) Shell 'C:\WINDOWS\uninst.exe -y -f "C:\Program Files\Macromedia\Dreamweaver MX" ' Sleep 6 $rc = Shutdown("", "System is being rebooted to enable new settings.", 30, 0, 1) Else ? $programpath + " Does not Exist" EndIf |
||||||||
|
|
|||||||
Originally Posted By: selormquarshie Moderator, your sample code jumps from the Exist command straight to the ? $programpath + " Does not Exist" line when i attempt to debug it... |
||||||||
|
|
|||||||
YOu are right..however i gave the code a different input, it should look for maromedia\DreamweaverMX\and delete it o nmy local compuater at home but it wont run that.....am i doing anything wrong. i have Dreamweaver on my pc here..... $programpath="C:\Program Files\Macromedia\Dreamweaver MX\" If Exist($programpath) Shell 'C:\WINDOWS\uninst.exe -y -f "C:\Program Files\Macromedia\Dreamweaver MX" ' Sleep 6 $rc = Shutdown("", "System is being rebooted to enable new settings.", 30, 0, 1) Else ? $programpath + " Does not Exist" EndIf |
||||||||
|
|
|||||||
So, what happens when you run it? Do you get $programpath + " Does not Exist"? The Shell line may not be valid for DreamWeaver. |
||||||||
|
|
|||||||
Should it matter if i am just debugging the code....i thought it will go thru the whole process in debug mode?? Break Off $programpath="C:\Program Files\Pivotal\Relation\" If Exist($programpath) $rc = MessageBox("Please wait while Relationship is uninstalled","ESI INT'L", 10, 0, 1) Shell 'C:\WINDOWS\uninst.exe -y -f"C:\Program Files\Pivotal\Relation\DeIsL1.isu" /passive' Sleep 6 $rc = Shutdown("", "System is being rebooted to enable new settings.", 30, 0, 1) Else ? $programpath + "Does not Exist" EndIf |
||||||||
|
|
|||||||
Why would you need to run such a small snippet of code in debug? Maybe you are hitting the wrong keys. |
||||||||
|
|
|||||||
....to make sure the desired output will be gained when i deploy it......please any help will be huge |
||||||||
|
|
|||||||
It seems somewhat unnecessary to run in debug mode given that you popup a MessageBox() on Exist() and $programpath + "Does not Exist" on failure. If you DON'T get the MessageBox() and you DO get $programpath + "Does not Exist", then obviously the folder does NOT Exist(). That is where you need to look. |
||||||||
|
|
|||||||
Quote: shell 'C:\WINDOWS\uninst.exe -y -f"C:\Program Files\Pivotal\Relation" /passive' Sleep 6 You should not call C:\WINDOWS as a hard coded path. This can lead to failure on some systems which might have Windows installed in another folder such as WINNT or another and possibly even on another drive. According to Microsoft documentation %SystemRoot% is the preferred method of locating the installation folder however in practice it does not appear that anyone is following that directive from what I see. In either case %SystemRoot% or %WINDIR% should return the installation location of Windows. . |
||||||||
|
|
|||||||
here's my latest code for the software removal...any ommissions or additions or ideas to tune this up will be appreciated........ Break Off $programpath="HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Pivotal\Relation\DeIsL1.isu" If Exist($programpath) = 0 Shell '%systemroot%\system32\uninst.exe -y -f"HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Pivotal\Relation\DeIsL1.isu" " /passive' Sleep 6 $rc = Shutdown("", "System is being rebooted to enable new settings.", 30, 0, 1) Else ? $programpath + "Does not Exist" EndIf |
||||||||
|
|
|||||||
You cannot use Exist($programpath) that points to the registry. |
||||||||
|
|
|||||||
I do have a laptop with Relationship installed yet still when i run the code it doesn't uninstall it......please anyone help.... $programpath= "C:\Program Files\Pivotal\Relation" If Exist($programpath) = 0 MessageBox ("", "Please wait while Relationship is uninstalled","ESI INT'L", 10, 0, 1) Shell 'C:\WINDOWS\MsiExec.exe -y -f"C:\Program Files\Pivotal\Relation" ' $rc = Shutdown("", "System is being rebooted to enable new settings.", 30, 0, 1) Sleep 6 Else ? $programpath + "Does not Exist" EndIf $rc = Shutdown("", "System is being rebooted to enable new settings.", 30, 0, 1) Else ? $programpath + "Does not Exist" EndIf |
||||||||
|
|
|||||||
-f"HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Pivotal\Relation\DeIsL1.isu" is not a valid switch. |
||||||||
|
|
|||||||
I do have a laptop with Relationship installed yet still when i run the code it doesn't uninstall it......please anyone help.... $programpath= "C:\Program Files\Pivotal\Relation" If Exist($programpath) = 0 MessageBox ("", "Please wait while Relationship is uninstalled","ESI INT'L", 10, 0, 1) Shell 'C:\WINDOWS\MsiExec.exe -y -f"C:\Program Files\Pivotal\Relation" ' $rc = Shutdown("", "System is being rebooted to enable new settings.", 30, 0, 1) Sleep 6 Else ? $programpath + "Does not Exist" EndIf |
||||||||
|
|
|||||||
If Exist() = 0 Means IF NOT EXIST! |
||||||||
|
|
|||||||
here are my changes......but i'm buffled by this code..it still wont output right.....i need to submit this tomorrrow....please help... $programpath= "C:\Program Files\Pivotal\Relation" If Exist($programpath) = 1 MessageBox ("", "Please wait while Relationship is uninstalled","ESI INT'L", 10, 0, 1) Shell 'C:\WINDOWS\uninst.exe -y -f"C:\Program Files\Pivotal\Relation\DeIsL1.isu" ' $rc = Shutdown("", "System is being rebooted to enable new settings.", 300, 0, 1) Sleep 6 Else ? $programpath + "Does not Exist" EndIf |
||||||||
|
|
|||||||
How can one help you if you don't heed any advice? You should test the code step-by-step. |
||||||||
|
|
|||||||
ok here i come again....i figured that C:\Program Files\Pivotal\Relation is a folder not a file. i may be wrong or right...however if this isn't the right file, what command do i use to locate a FOLDER instead of a file?? i realize the EXIST command is to locate a file not folder........ any help?? |
||||||||
|
|
|||||||
So, what is it? Is it a fodler or file? It's yoru system, you should be able to determine what it is. EXIST can check for both the existance of a folder and/or file. Code: ? 'KiXtart v'+@kix $folder='C:\Program Files\Pivotal\Relation' select case exist($folder+'\') ? $folder + 'is a folder and exists' case exist($folder) ? $fodler + ' is a file and exists' case 1 ? 'Cannot find a file or folder by name f ' + $folder endselect Please run this codefragment and report the results. |
||||||||
|
|
|||||||
yea it read " c:\program files\pivotal\relation is a folder and exists |
||||||||
|
|
|||||||
Is this an application for CRM from here: http://www.pivotal.com/products/ If so which one? What version of KiXtart are you using? |
||||||||
|
|
|||||||
yes it's from there and the program is Relationship. kix version 4.51 |
||||||||
|
|
|||||||
Why do you keep changing from UNINSTAL to MSIEXEC ? If you look on a client and at the uninstall string you need the EXACT string they supply. Please provide that here. |
||||||||
|
|
|||||||
when i run the script by Sealeopard is confirms the existence of the folder however when i run the following code it doesn't remove it. rather it jumps from the MESSAGEBOX to the DOES NOT EXIT line.....weird.. Break off $programpath= "C:\Program Files\Pivotal\Relation" If Exist($programpath) = 1 MessageBox ("", "Please wait while Relationship is uninstalled","ESI INT'L", 10, 0, 1) Shell 'C:\WINDOWS\uninst.exe -y -f"C:\Program Files\Pivotal\Relation\DeIsL1.isu"' $rc = Shutdown("", "System is being rebooted to enable new settings.", 300, 0, 1) Sleep 6 Else ? $programpath + "Does not Exist" EndIf |
||||||||
|
|
|||||||
this is the exact script i found for the uninstall...... C:\WINDOWS\uninst.exe -f"C:\Program Files\Pivotal\Relations\DeIsL1.isu |
||||||||
|
|
|||||||
Please use CODE TAGS when posting to preserve the formatting. I did not ask for the script you found, though if you found that one a link to where you found it would be good. Please copy this into a clean new script and run it like this from a workstation that has it installed and report back exactly what it returns. KIX32.EXE RemoveRelation.kix Code: Dim $Msg, $Pause If Exist('C:\Program Files\Pivotal\Relation\relation.exe') $Msg = MessageBox('Please wait while Relationship is uninstalled','ESI International',4160,10) ;I'm guessing this line is correct as I don't know and I don't have the program to test Shell 'C:\WINDOWS\uninst.exe -y -f"C:\Program Files\Pivotal\Relation\DeIsL1.isu" ' 'Error: ' + @ERROR + ' - ' + @SERROR ? 'Press any key to continue ' ? Get $Pause ;This will FORCE all applications closed without saving data within 90 seconds $RC = Shutdown("","System is being rebooted to enable new settings.", 90, 1, 1) ;No need for a sleep command Else ;You would not want this to show though on every logon 'The eRelation program was not found on this system ' ? EndIf . |
||||||||
|
|
|||||||
The actual uninstall should be found somewhere here in the Registry. HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall . |
||||||||
|
|
|||||||
oh my!!! you saved the day dude.... it did run fine after tweaking it a bit...but you pretty much wrote the whole code...i'm howeever wondering that it kept bringing up prompts to say yes to all and press ok at one point...how to i supress those so it goes thru automathically?? any idea..... |
||||||||
|
|
|||||||
Unless the Pivotal company provides those "silent" switches for you then it's not going to be able to be removed silently. At that point you would have to write you own removal script that deleted everything. |
||||||||
|
|
|||||||
You could try SENDKEYS but I'm sure that would meet with mixed results. There is also a program called AUTOIT that might be able to help assist in pressing the right keys for you in an automated script. Search Google for it. |
||||||||
|
|
|||||||
It looks like the software is using InstallShield which does support recording your own silent install. I would think if you can create a silent install, a siltent uninstall should be possible. OTOH, there may already be a silent switch available. |
||||||||
|
|
|||||||
Ok fellas i'm back....everything seems to be working fine except that i'm unable to get a silent uninstall.....and ur arugment that inf silent install is possible then the converse should also hold true, is smoething i buy into.......any help before i submit it by 5pm today will be more than appreciated.......... Break Off Dim $Msg, $Pause If Exist('C:\Program Files\Pivotal\Relation') $Msg = MessageBox('Please wait while Relationship is uninstalled','ESI International',4160,5) ;This command line uninstalls Relationship from user computer. Shell 'C:\WINDOWS\uninst.exe -y -f"C:\Program Files\Pivotal\Relation\DeIsL1.isu" >NULL 2>NULL' 'Error: ' + @ERROR + ' - ' + @SERROR ? 'Press any key to continue /s ' ? Get $Pause ;This command line will FORCE all applications closed without saving data within 90 seconds $RC = Shutdown("","System is being rebooted to enable new settings.", 90, 1, 1) Else 'The Relationship program was not found on this system ' ? EndIf |
||||||||
|
|
|||||||
Well certainly not the code I gave you but if it works for you okay. Please contact the Pivot support group and ask them for the uninstall silent switch. |
||||||||
|
|
|||||||
and as I said before, you cannot redirect without the command interpreter. |
||||||||
|
|
|||||||
Les so what then will be the command interpreter cause i'm not sure i get what you saying? any help.... |
||||||||
|
|
|||||||
Code: Shell '%comspec% /c C:\WINDOWS\uninst.exe -y -f"C:\Program Files\Pivotal\Relation\DeIsL1.isu" >NULL 2>NULL' The command interpreter i.e. CMD.EXE found by %comspec% |
||||||||
|
|
|||||||
so NTDOC, i take it the '%comspec% /c line will give it that quiet uninstall mode, correct? |
||||||||
|
|
|||||||
%comspec% is the environment variable pointing to the command interpreter /c is a switch indicating the command interpreter has to quit after running the command You need it to make the redirect work (> NUL 2>NUL) I think if you want a silent uninstall, maybe you will have to look for a switch for uninst.exe |
||||||||
|
|
|||||||
Originally Posted By: selormquarshie so NTDOC, i take it the '%comspec% /c line will give it that quiet uninstall mode, correct? No it will not be silent with that. It is only to redirect output to nothing, however the uninstaller will probably still popup a Window to complain as it's not console/DOS based. You really have to either contact PIVOT and ask them for the switch or scour the Internet with Google or some other search engine to find a possible solution. |
||||||||
|
|
|||||||
A DOS redirect to NUL of a GUI program will not magically make it silent. |
||||||||
|
|
|||||||
ok..so i worked on this SHELL line here with -r/-s but i'm not sure if it will give me a silent uninstall......i'm still at work finishing hard......any idea..... Shell '%comspec% /c /-r/-s C:\WINDOWS\uninst.exe -y -f"C:\Program Files\Pivotal\Relation\DeIsL1.isu" >NULL 2>NULL' |
||||||||
|
|
|||||||
This will not give you a silent uninstall. You need to contact the vendor to find out what the correct call to their uninstall routine is to perform the silent uninstall. Just reidrecting console output to NULL doesn't affect the uninstall process. |
||||||||
|
|
|||||||
I have the impression you want to try -s or -r as silencers. Put it as argument behind uninst.exe Shell '%comspec% /c C:\WINDOWS\uninst.exe -s -y -f"C:\Program Files\Pivotal\Relation\DeIsL1.isu" >NUL 2>NUL' No warranty it will work. Like Doc said, I think you best verify with the software vendors. Oh yes > NUL redirects to "nothing" > NULL redirects to a file named NULL |
||||||||
|
|
|||||||
I thought the -r switch was to record an answer file to be played back later. IMHO -r is not something you would use in a SHELL line. |
||||||||
|
|
|||||||
hahahahahahahahahhaha That is funny 1st thing: silent command line is different than a 'silent' switch on an install/uninstall app 2nd thing: to determine what switches you need on your uninstall, you will need to determine what version of installShield is running it Odds are because of your newness to this, you will have the most annoying version that will require you to record a manual uninstall and then deploy that *.isu/*.iss file to play a truely silent uninstall. |
||||||||
|
|
|||||||
Radimus, so essentially what are you saying here......i'm not sure what version of installshield i have ....however when u look at this SHELL code.....what would you use....the company is not being cooperative at all..... Shell '%comspec% /c C:\WINDOWS\uninst.exe -s -y -f"C:\Program Files\Pivotal\Relation\DeIsL1.isu" >NUL 2>NUL' |
||||||||
|
|
|||||||
Get rid of %COMSPEC% and the Nul stuff as it does nothing for you. If the uninstaller supports silent switches it will be silent. Code: Shell 'C:\WINDOWS\uninst.exe -y -f"C:\Program Files\Pivotal\Relation\DeIsL1.isu" Though I can pretty much tell you that it isn't going to work that way. Just sit there at the command line in a DOS prompt and type in those commands to see if you can get it to uninstall silently or not. uninst.exe -y -f"C:\Program Files\Pivotal\Relation\DeIsL1.isu uninst.exe -s -f"C:\Program Files\Pivotal\Relation\DeIsL1.isu uninst.exe /y -f"C:\Program Files\Pivotal\Relation\DeIsL1.isu uninst.exe /s -f"C:\Program Files\Pivotal\Relation\DeIsL1.isu etc... if you can't find a combination that works then KiX can't do it either. This software, can it be mailed or downloaded and installed as a test? I'm sure it can be removed by brute force as well but one needs to know what all it installs and where first. . |
||||||||
|
|
|||||||
for an uninstall, your command will look something like: Shell 'C:\WINDOWS\uninst.exe -a -y -f"C:\Program Files\Pivotal\Relation\DeIsL1.isu" ' The -a option might help... or might not. http://support.installshield.com/kb/view.asp?articleid=q100021 But ultimately it is based on the version of the installshield app that packaed it. So.. SOME APPS DO NOT HAVE A SILENT UNINSTALL and there is little that can be done short of a brute force removal, del the reg keys, the folder , the shortcuts... not all apps are created equal |
||||||||
|
|
|||||||
I'm wondering..if i want a silent install.......do i need to include this line in the code then..... 'Press any key to continue ' ? |
||||||||
|
|
|||||||
not usually.. it depends on the ininstaller. If it kicks off a second process that does the uninstall try it and see it it applies to this one. But usually it isn't necessary |
||||||||
|
|
|||||||
i'm wondering if i put " /qb- /i" after the unbinst.exe if it will make it a silent uninstall without any prompts to the user?? |
||||||||
|
|
|||||||
Wonder no more. Try it and see. |
||||||||
|
|
|||||||
OK... This is the last time. What makes you think the " /qb- /i" will do anything? those are the switches for msiexec, not the switches for installshield's uninst.exe. So completely ignore all the information that was given to you by people that have done this for years and continue to throw random switches on the command and see what happens. In fact you aren't even trying them, you are asking us if it ok to try them. |
||||||||
|
|
|||||||
fellows, i ve tried all those suggestion at the DOS prompt and there's still no silence unisntall..howver Radimus did mention suing "brute force removal, del the reg keys, the folder , the shortcuts". i really don't mind doing that so any suggestions to get rid of all with no traces at all even, as long as it's a silent uinstall..... |
||||||||
|
|
|||||||
Erhm.... dude, just work your way thro what switch is the right one to throw with the uninstall-string. And mind, do it on a computer with the program in question, that way you KNOW if it works or not. You got the link a few lines above to the different switches. edit: just read that you did test it, but alas - didn't work. I must say that you missed something then. edit: You might wanna check this out as well: Code: Discussion There are two ways in which a silent uninstall can be performed. Using a Response File To run an uninstallation using a response file: 1. Prepare a response file for the uninstallation (.iss) by running Setup.exe with the /r argument: Setup.exe /r 2. Locate the Setup.iss file generated in the Windows folder and copy it to the desired location. 3. Type the following at the command line (items in Italics represent data that is specific to your product's uninstallation): IDriver.exe /M{Your Product GUID} /s /f1"<FULLY qualified path>\YourResponseFile.iss" Note: The /f1 parameter is necessary only if the Setup.iss file is located in a directory other than in the same location as Setup.exe. Simple Uninstallation If you do not want to follow the script logic and want to uninstall the product, you can use the following command line: IDriver.exe /M{Your Product GUID} /uninst The /uninst parameter causes a forced uninstallation without opening the script. It rolls back the system changes made during the installation, including those from the MSI package and any InstallShield scripting. Note: For both of these uninstallation options, the /M argument is case sensitive. Note: By default, the file "IDriver.exe" is located in the following path: <ProgramFiles>\Common Files\InstallShield\Driver\<Version>\Intel 32. link - http://support.installshield.com/kb/view.asp?articleid=Q106685 NOTE: above is more or less only valid depending on your installation, the other and previous link might still be the better and working choice. Welcome to the world of installshield..... |
||||||||
|
|
|||||||
Bjorn i am not sur about the GUID line cause what if all the computers running the porgram have different GUID as is recommeded in this line..... and are you saying if i put this line in there the uninstall should be silent..... IDriver.exe /M{Your Product GUID} /uninst |
||||||||
|
|
|||||||
I presume the GUID Björn is talking about is the programs GUID. Maybe you can find it in the registry under "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\" |
||||||||
|
|
|||||||
Witto that's the case....however, the GUID may vary from pc to pc.......right?? |
||||||||
|
|
|||||||
IMHO, no. Or do you have different versions of the program? Maybe just take a look at some of your computers? |
||||||||
|
|
|||||||
Good day fellows.....it's me again.....i've tried everything under the sun but the uninstall still prompts users to anser yes or no at prompt before it uninstalls. however i did find the particular file it's asking users to answer YES to. I am wondering if there's a way to(maybe a command line or script) silently or automathically say yes to this file........ LMSYNC.DLL |
||||||||
|
|
|||||||
No, there is not. This is a safegiuard by Windows ot prevent DLLs to be deleted that could potentially still be in use by other applications. |
||||||||
|
|
|||||||
i've tried all these switches for silent uninstall but without success.... anh other wild guesses would be more than appreciated..... Shell 'C:\WINDOWS\uninst.exe -y -f"C:\Program Files\Pivotal\Relation\DeIsL1.isu" "/q" "/qb-" "/s" "-a" "-s" "-y" |
||||||||
|
|
|||||||
Did you try to record an answer file and then play it back? |
||||||||
|
|
|||||||
LES...NO I DIND'T CAUSE I'M NOT SURE HOW TO DO THAT?? |
||||||||
|
|
|||||||
I've told you before not to SHOUT! |
||||||||
|
|
|||||||
Radimus gave a link to the installshield support site. There I read: Quote: -d Identifies a single file that is to be deleted. The display of user interface elements is the same as when the -a switch is used. The syntax is as follows: -dC:\Temp\filename.ext. Could that help you? |
||||||||
|
|
|||||||
well...how would i implement "-dC:\Temp\imsync.dll" and all other .DLL files i'm being prompted INTO the uninstall command "Shell 'C:\WINDOWS\uninst.exe -y -f"C:\Program Files\Pivotal\Relation\DeIsL1.isu" |
||||||||
|
|
|||||||
In your answer you only spoke about LMSYNC.DLL, and I presume it is not located in the C:\Temp\ folder as you are typing. |
||||||||
|
|
|||||||
Björn has given an answer how to create a response file, so maybe look for that answer. |
||||||||
|
|
|||||||
It's not only the IMSYNC.DLL, there are about eleven .DLL files....here they are.... IMSYNC.DLL ISYMPS.DLL NSERVERCA.DLL NSERVERCPS.DLL RN1CDATA.DLL RN1COLON.DLL RN1DOBJ.DLL RSMFORMOUTLOOK.DLL ISYNCPS.DLL |
||||||||
|
|
|||||||
Hello selormquarshie I'm not sure how much more anyone can help you here. You seem to ignore much of the advice given. Google, Yahoo, MSN all have excellent search engines to help locate further information as well. I'm thinking though that if your Company could afford the product in the first place then you probably have other IT support on staff do you not? I'm not wanting to sound mean but you do not appear to have much in the way of basic skills for this type of support and perhaps someone else on your Team might have more experience and or could assist you further. If this was a learning experiece it might not be so bad but you say it is a project and is now apparently overdue so I would assume this avenue of support is not fast enough to help you. The advice given to you is nothing new as most of us have been doing this for many years so we all know how to do it but you seem to either ignore the advice or if not then you don't properly report back what was asked of you. Please start from the FIRST post and read through ALL of them and you will find your answer which is IT CAN NOT BE SILENTLY REMOVED without you manually removing it. Though I'm sure you don't have the experience to do so and without one of us having the program installed we can't really help you either. Bottom line is you need to install it on a client that has never had it installed and use a program to watch what gets added, then write a script that goes through and removes the files and registry entries for you silently. If you know all the files and registry entries we can probably assist you in how to then remove it but not until you know that information. . |