[izpack-users] Windows XP Registry Entries cleaning up

Daniel Silva ddso.01 at gmail.com
Thu Jul 26 17:35:29 CEST 2007


Klaus,

just dont use the method com.izforge.izpack.util.Librarian.revisePath and
use URLDecoder.decode in com.izforge.izpack.util.Librarian.getClientPath and
in com.izforge.izpack.util.Librarian.getNativePath like this:

//path = revisePath(path);
*try* {     path = URLDecoder.*decode*(path,"UTF-8");
} *catch* (UnsupportedEncodingException e) {
    path = revisePath(path);
}

It worked for me. I´m sending the Librarian.java file that I changed.

On 7/26/07, Bartz, Klaus <Klaus.Bartz at coi.de> wrote:
>
>  Hi Daniel,
> I cannot really test it because I have no time to search for such
> localized OS and install it.
> But your test results sounds logically. If I have time next time I will
> look into the code whether it is possible to change to an generic code which
> works or not.
> Thanks for the identification of the problem.
>
> Cheers
>
> Klaus
>
>  -----Original Message-----
> *From:* izpack-users-bounces at lists.berlios.de [mailto:
> izpack-users-bounces at lists.berlios.de] *On Behalf Of *Daniel Silva
> *Sent:* Thursday, July 26, 2007 12:08 AM
> *To:* izpack-users at lists.berlios.de
> *Subject:* Re: [izpack-users] Windows XP Registry Entries cleaning up
>
>  Now I know. Now I really know what is going on.
>
> The uninstaller extracts some files in the C:\Documents and
> Settings\Daniel\Configurações locais\Temp\izpack<some_number>.d
>
> The COIOSHelper.dll is extracted there too.
>
> com.izforge.izpack.util.Library.loadLibrary calls
> com.izforge.izpack.util.Library.getNativePath
>
> This method returns the path to the COIOSHelper.dll.
>
> But the codeSource.getLocation() is returning a broken URL. It is
> returning something like C:\Documents and
> Settings\Daniel\Configura%c3%a7%c3%b5es locais\Temp\izpack<some_number>.d
>
> Witch is revised by com.izforge.izpack.util.Library.revisedPath to the
> string
>
> C:\Documents and Settings\Daniel\Configurações
> locais\Temp\izpack<some_number>.d
>
> When codeSource.getLocation() should return C:\Documents and
> Settings\Daniel\Configura%e7%f5es locais\Temp\izpack<some_number>.d
>
> Witch would be revised to
>
> C:\Documents and Settings\Daniel\Configurações
> locais\Temp\izpack<some_number>.d
>
> When com.izforge.izpack.util.Library.getNativePath tries to find
> ShellLink.dll, it makes the same mistake, but the shortcuts are deleted
> anyway.
>
> When I put the COIOSHelper.dll in a folder elsewhere and change the code
> for it to find it, the registries are deleted. Also, if I change the
> uninstaller.jar, putting the COIOSHelper.dll in its root folder, the
> registries are deleted as well.
>
> So this is a locale problem.
>
> On 7/25/07, Daniel Silva <ddso.01 at gmail.com> wrote:
> >
> > no, wait. it really gets the
> > com.izforge.izpack.util.os.Win_RegistryHandler as the RegistryHandler.
> >
> > False alarm. But I´m getting somewhere.
> >
> >
> >
> > On 7/25/07, Daniel Silva <ddso.01 at gmail.com> wrote:
> > >
> > > I got it.
> > >
> > > The RegistryHandler it is trying to get is
> > > com.izforge.izpack.util.os.Win_NT_RegistryHandler
> > > But this class doesnt exists.
> > >
> > > Look at com.izforge.izpack.util.TargetFactory constructor.
> > >
> > > osFlavor starts as -1, is changed at TargetFactory constructor to 0,
> > > then is changed again in the same constructor:
> > >
> > > *if* (OsVersion.*IS_WINDOWS*){
> > >     os = *WINDOWS*;
> > >     osFlavor = *STANDARD*;
> > >     architecture = *X86*;
> > >     String osName = OsVersion.*OS_NAME*.toLowerCase();
> > > *    if* (osName.indexOf("nt") > -1){
> > >     osFlavor = *NT*;
> > >     }*else* *if* (osName.indexOf( "2000") > -1){
> > >         osFlavor = *NT*;
> > >     }*else* *if* (osName.indexOf( "xp") > -1){
> > >         osFlavor = *NT*;
> > >     }
> > > }
> > >
> > > The "else if" falls in the "osName.indexOf("xp") > -1" case, so
> > > osFlavor is set to NT, witch is equal to 1
> > >
> > > CLASS_FLAVOR_PREFIX is the array { "", "NT_", "X_"}, so CLASS_FLAVOR_PREFIX[osFlavor]
> > > is "NT_"
> > >
> > > There is a com.izforge.izpack.util.os.Win_RegistryHandler, so osFlavor
> > > should be keept to 0. Or
> > > com.izforge.izpack.util.os.Win_NT_RegistryHandler should exists.
> > >
> > >
> > > On 7/25/07, Daniel Silva <ddso.01 at gmail.com> wrote:
> > > >
> > > > there you go. This project creates the registry entries, but doesnt
> > > > delete them.
> > > >
> > > > I did it with netbeans, but I put a build.bat to execute the
> > > > building. I had to rename it to build.txt, once Gmail doesnt accept
> > > > executable files attach to its emails. You will have to change it back to
> > > > build.bat.
> > > >
> > > > Remember to change the ${izpack.dir} property in build.xml. My
> > > > computer has the locale pt BR (I´m Brazilian), so the izpack.dir is
> > > > in C:\Arquivos de Programas\IzPack. I dont know what is your locale, so i
> > > > didnt change it. If it is english, izpack.dir should be C:\Programs
> > > > Files\IzPack.
> > > >
> > > > To change the jdk version needed see nbproject/project.properties.
> > > >
> > > > I didnt do a RegistrySpec.xml, so the registry entries created are
> > > > the default ones.
> > > >
> > > > thanks for your time.
> > > >
> > > >  On 7/25/07, Bartz, Klaus <Klaus.Bartz at coi.de > wrote:
> > > > >
> > > > >  Hi Daniel,
> > > > > if it do not work with a 1.5.0_xxVM  there is an other problem as
> > > > > the VM version.
> > > > > Create a minimal project (e.g. install one file) with the source
> > > > > and all needed
> > > > > config files, put it in a zip archive and send it. May be I can
> > > > > look into next
> > > > > days...
> > > > > But test the project before sending.
> > > > >
> > > > > Cheers
> > > > >
> > > > > Klaus
> > > > >
> > > > >  -----Original Message-----
> > > > > *From:* izpack-users-bounces at lists.berlios.de [mailto:
> > > > > izpack-users-bounces at lists.berlios.de] *On Behalf Of *Daniel Silva
> > > > > *Sent:* Wednesday, July 25, 2007 4:00 PM
> > > > > *To:* izpack-users at lists.berlios.de
> > > > > *Subject:* Re: [izpack-users] Windows XP Registry Entries cleaning
> > > > > up
> > > > >
> > > > >  JDK 1.4.2_15 didnt work either. This time I uninstalled every jdk
> > > > > that was installed in my computer before installing 1.4.2_15. No
> > > > > way izPack used another jdk to uninstall itself this time.
> > > > >
> > > > > I´ll have to debug it. There is no other way.
> > > > >
> > > > >
> > > > > On 7/25/07, Daniel Silva <ddso.01 at gmail.com> wrote:
> > > > > >
> > > > > > I´ll try debugging then. This appers to be a JDK version
> > > > > > problem. I installed 1.5.0_12 (the older I could find) and didnt
> > > > > > work either. JDK 1.6.0_02 was still installed, but I change the
> > > > > > JAVA_HOME to point at the 1.5.0_12. I´ll try uninstalling
> > > > > > everything before testing again.
> > > > > >
> > > > > > On 7/25/07, Bartz, Klaus <Klaus.Bartz at coi.de > wrote:
> > > > > > >
> > > > > > > Hi,
> > > > > > > internal naming convention of logging entries from the
> > > > > > > installation
> > > > > > > processed in the uninstallation is not the problem. Its are
> > > > > > > only "symbolic
> > > > > > > names" for logging record type ids. Logging informations will
> > > > > > > be written
> > > > > > > at installation, therefore the names reflect what was done at
> > > > > > > installation,
> > > > > > > not what have to be performed at uninstall. A key which was
> > > > > > > CREATED at
> > > > > > > installation has to be removed at uninstall if some additional
> > > > > > > conditions
> > > > > > > are true (see above). The type of the information record of
> > > > > > > logging has
> > > > > > > the symbolic name "CREATED_KEY".
> > > > > > > "Roll back" (or rollback) in this context means something a
> > > > > > > little bit similar
> > > > > > > as rollback used in the transaction stuff known from data base
> > > > > > > computing. May be see
> > > > > > > http://en.wikipedia.org/wiki/Transaction_processing
> > > > > > > It has nothing todo with the Cold War...
> > > > > > > http://en.wikipedia.org/wiki/Rollback
> > > > > > > In opposite to DB transactions this cannot be atomic. We
> > > > > > > cannot lock the
> > > > > > > registry at installation until uninstall. Therefore we have
> > > > > > > the problem that
> > > > > > > values can be changed by a third process. What todo with this
> > > > > > > entries?
> > > > > > > I have implemented a conservative behavior which do nothing if
> > > > > > > entries are
> > > > > > > changed in the mean time. Until now IzPack is not really able
> > > > > > > to support
> > > > > > > maintenance. One point of it is, that uninstall informations
> > > > > > > will not be
> > > > > > > updated else created new. Therefore the reset to version 1.0after uninstall
> > > > > > > of version 1.1 in the example from Daniel. The right
> > > > > > > proceeding will be to
> > > > > > > uninstall version 1.0 and install after it version 1.1.
> > > > > > >
> > > > > > >
> > > > > > > I do really not know why the described should not work if
> > > > > > > access rights exist.
> > > > > > > But until now I have not tested with Java version 1.6.0 (or
> > > > > > > say 6.0). Is later on
> > > > > > > the stack...
> > > > > > > It is possible to debug uninstall e.g. with Eclipse. There is
> > > > > > > a description in
> > > > > > > the docu for it.
> > > > > > >
> > > > > > > Cheers
> > > > > > >
> > > > > > > Klaus
> > > > > > >
> > > > > > > > -----Original Message-----
> > > > > > > > From: izpack-users-bounces at lists.berlios.de
> > > > > > > > [mailto:izpack-users-bounces at lists.berlios.de ] On Behalf Of
> > > > > > > fxa
> > > > > > > > Sent: Wednesday, July 25, 2007 12:28 AM
> > > > > > > > To: izpack-users at lists.berlios.de
> > > > > > > > Subject: Re: [izpack-users] Windows XP Registry Entries
> > > > > > > cleaning up
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > > Look at the case for CHANGED_VALUE:  If value has changed it
> > > > > > >
> > > > > > > > gets replaced with old value, not being deleted.  So if you
> > > > > > > > had version 1.0 and upgrade to 1.1 then on uninstall it will
> > > > > > > > not be removed just reset to version 1.0
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > > Daniel Silva-3 wrote:
> > > > > > > > >
> > > > > > > > > Sorry,  but what does it mean "roll entries back"?
> > > > > > > > >
> > > > > > > > > I looked at RegistryImpl (thats probably the one used) and
> > > > > > > > I couldnt
> > > > > > > > > figure out on witch case of the rli.getType() the
> > > > > > > execution
> > > > > > > > falls. It
> > > > > > > > > should fall on the RegistryLogItem.CREATED_VALUE or
> > > > > > > > > RegistryLogItem.CREATED_KEY case, for those are the ones
> > > > > > > > that delete
> > > > > > > > > entries. But this name, "CREATED", is really strange for a
> > > > > > > deleting
> > > > > > > > > process.
> > > > > > > > >
> > > > > > > > > Intuitively, it falls on the RegistryLogItem.REMOVED_KEYor
> > > > > > > > > RegistryLogItem.REMOVED_VALUE. But thoses cases actually
> > > > > > > creates
> > > > > > > > > entries
> > > > > > > > >
> > > > > > > > > the switch clause in the RegistryImpl.rewind() is like
> > > > > > > this:
> > > > > > > > >
> > > > > > > > > switch (rli.getType())
> > > > > > > > >                 {
> > > > > > > > >                 case RegistryLogItem.CREATED_KEY:
> > > > > > > > >                     deleteKeyIfEmpty( rli.getRoot(),
> > > > > > > rli.getKey());
> > > > > > > > >                     break;
> > > > > > > > >                 case RegistryLogItem.REMOVED_KEY:
> > > > > > > > >                     createKeyN(rli.getRoot(), rli.getKey
> > > > > > > ());
> > > > > > > > >                     break;
> > > > > > > > >                 case RegistryLogItem.CREATED_VALUE:
> > > > > > > > >                     RegDataContainer currentContents =
> > > > > > > null;
> > > > > > > > >                     // Delete value only if reg entry
> > > > > > > exists and is
> > > > > > > > > equal to the stored value.
> > > > > > > > >                     try
> > > > > > > > >                     {
> > > > > > > > >                         currentContents = getValue(
> > > > > > > rli.getRoot(),
> > > > > > > > > rli.getKey(),
> > > > > > > > > rliValueName);
> > > > > > > > >                     }
> > > > > > > > >                     catch (NativeLibException nle)
> > > > > > > > >                     {
> > > > > > > > >                         break;
> > > > > > > > >                     }
> > > > > > > > >                     if ( currentContents.equals(
> > > > > > > rli.getNewValue()))
> > > > > > > > >                     {
> > > > > > > > >                         deleteValueN(rli.getRoot(),
> > > > > > > rli.getKey(),
> > > > > > > > > rliValueName);
> > > > > > > > >                     }
> > > > > > > > >                     // TODO: what todo if value has
> > > > > > > changed?
> > > > > > > > >                     break;
> > > > > > > > >                 case RegistryLogItem.REMOVED_VALUE:
> > > > > > > > >                     // Set old value only if reg entry not
> > > > > > > exists.
> > > > > > > > >                     try
> > > > > > > > >                     {
> > > > > > > > >                         getValue(rli.getRoot(), rli.getKey
> > > > > > > (),
> > > > > > > > > rliValueName);
> > > > > > > > >                     }
> > > > > > > > >                     catch (NativeLibException nle)
> > > > > > > > >                     {
> > > > > > > > >                         setValueN(rli.getRoot(),
> > > > > > > rli.getKey(),
> > > > > > > > > rliValueName,
> > > > > > > > > rli
> > > > > > > > >                                 .getOldValue());
> > > > > > > > >                     }
> > > > > > > > >                     break;
> > > > > > > > >                 case RegistryLogItem.CHANGED_VALUE:
> > > > > > > > >                     // Change to old value only if reg
> > > > > > > > entry exists and
> > > > > > > > > equal to
> > > > > > > > >                     // the
> > > > > > > > >                     // stored value.
> > > > > > > > >                     try
> > > > > > > > >                     {
> > > > > > > > >                         currentContents = getValue(
> > > > > > > rli.getRoot(),
> > > > > > > > > rli.getKey(),
> > > > > > > > > rliValueName);
> > > > > > > > >                     }
> > > > > > > > >                     catch (NativeLibException nle)
> > > > > > > > >                     {
> > > > > > > > >                         break;
> > > > > > > > >                     }
> > > > > > > > >                     if (currentContents.equals(
> > > > > > > rli.getNewValue()))
> > > > > > > > >                     {
> > > > > > > > >                         setValueN(rli.getRoot(),
> > > > > > > rli.getKey (),
> > > > > > > > > rliValueName,
> > > > > > > > > rli
> > > > > > > > >                                 .getOldValue());
> > > > > > > > >                     }
> > > > > > > > >                     break;
> > > > > > > > >                 }
> > > > > > > > >
> > > > > > > > > On 7/24/07, fxa <fxa_01 at yahoo.com> wrote:
> > > > > > > > >>
> > > > > > > > >>
> > > > > > > > >> Actually what is happening is:  it rolls back
> > > > > > > entries.  Look at
> > > > > > > > >> "rewind" method in registry handler.  If you start with
> > > > > > > no
> > > > > > > > entries,
> > > > > > > > >> uninstall will delete entries otherwise it roll them back
> > > > > > > > to previous
> > > > > > > > >> settings.
> > > > > > > > >>
> > > > > > > > >>
> > > > > > > > >> Bartz, Klaus wrote:
> > > > > > > > >> >
> > > > > > > > >> > Hi Daniel,
> > > > > > > > >> > I am not secure that I have understand right. Do it now
> > > > > > > work or
> > > > > > > > >> > not? You can have as much Listener as you need. The
> > > > > > > > RegistryHandler
> > > > > > > > >> > will be used internal in the RegistryInstallerListener,
> > > > > > > > but it can
> > > > > > > > >> > be used also at an other place. Then it is needed
> > > > > > > > >> > to use only one instance of it. But I assume that you
> > > > > > > do not use
> > > > > > > > >> registry
> > > > > > > > >> > at an other point.
> > > > > > > > >> >
> > > > > > > > >> > I have just tested the IzPack 3.10.2 installation and
> > > > > > > > >> > uninstallation.
> > > > > > > > >> It
> > > > > > > > >> > works as assumed.
> > > > > > > > >> > My box has Windows XP SP2, I use Java SDK 1.5.0_11.
> > > > > > > > >> > If the uninstallation of IzPack after a clean
> > > > > > > > installation (without
> > > > > > > > >> > preexistent keys) will not clean the regkeys I do not
> > > > > > > know why.
> > > > > > > > >> > Test it on an other computer.
> > > > > > > > >> >
> > > > > > > > >> > Cheers
> > > > > > > > >> >
> > > > > > > > >> > Klaus
> > > > > > > > >> >
> > > > > > > > >> >       -----Original Message-----
> > > > > > > > >> >       From: izpack-users-bounces at lists.berlios.de
> > > > > > > > >> > [mailto: izpack-users-bounces at lists.berlios.de ] On
> > > > > > > Behalf
> > > > > > > > Of Daniel
> > > > > > > > >> Silva
> > > > > > > > >> >       Sent: Tuesday, July 24, 2007 1:48 PM
> > > > > > > > >> >       To: izpack-users at lists.berlios.de
> > > > > > > > >> >       Subject: Re: [izpack-users] Windows XP Registry
> > > > > > > Entries
> > > > > > > > >> > cleaning
> > > > > > > > >> up
> > > > > > > > >> >
> > > > > > > > >> >
> > > > > > > > >> >       also, I´m using Windows XP as an administrator,
> > > > > > > so I must
> > > > > > > > >> > have
> > > > > > > > >> all
> > > > > > > > >> the
> > > > > > > > >> > rights to change the registry.
> > > > > > > > >> >
> > > > > > > > >> >
> > > > > > > > >> >       On 7/24/07, Daniel Silva < ddso.01 at gmail.com>
> > > > > > > wrote:
> > > > > > > > >> >
> > > > > > > > >> >               Hi Klaus, thanks again.
> > > > > > > > >> >
> > > > > > > > >> >               I removed the registries myself after
> > > > > > > uninstalling.
> > > > > > > > >> Installed again and
> > > > > > > > >> > uninstalled all over. The registries are still not
> > > > > > > automatically
> > > > > > > > >> removed.
> > > > > > > > >> >
> > > > > > > > >> >               I didnt understand what you said about
> > > > > > > > using a second
> > > > > > > > >> RegistryHandler,
> > > > > > > > >> > but the registries that my installation process creates
> > > > > > > never
> > > > > > > > >> > change.
> > > > > > > > >> I´m
> > > > > > > > >> > only using one for the installation and one for the
> > > > > > > > uninstallation:
> > > > > > > > >> >
> > > > > > > > >> >
> > > > > > > > >> >
> > > > > > > <listener  installer="RegistryInstallerListener"
> > > > > > > > >> >
> > > > > > > > uninstaller="RegistryUninstallerListener">
> > > > > > > > >> >                             <os family="windows"/>
> > > > > > > > >> >               </listener>
> > > > > > > > >> >
> > > > > > > > >> >               I´m using another for the installation,
> > > > > > > but there´s
> > > > > > > > >> nothing to do with
> > > > > > > > >> > the registry:
> > > > > > > > >> >
> > > > > > > > >> >               <listener
> > > > > > > > >> > installer="SummaryLoggerInstallerListener"/>
> > > > > > > > >> >
> > > > > > > > >> >               Also, I changed the $APP_NAME to
> > > > > > > $UNINSTALL_NAME in
> > > > > > > > >> RegistrySpec.xml and
> > > > > > > > >> > CheckedHelloPanel started working the way the manual
> > > > > > > > said it would.
> > > > > > > > >> That´s
> > > > > > > > >> > something, all right. Thanks for that clue.
> > > > > > > > >> >
> > > > > > > > >> >
> > > > > > > > >> >
> > > > > > > > >> >               On 7/24/07, Bartz, Klaus
> > > > > > > > <Klaus.Bartz at coi.de > wrote:
> > > > > > > > >> >
> > > > > > > > >> >                       Hi Daniel,
> > > > > > > > >> >                       if you do not use a second
> > > > > > > RegistryHandler
> > > > > > > > >> > all
> > > > > > > > >> keys (except some with
> > > > > > > > >> > format multi string) have to
> > > > > > > > >> >                       be removed after uninstall, if
> > > > > > > the have not
> > > > > > > > >> changed after install.
> > > > > > > > >> >                       If the keys exist before
> > > > > > > installing, they
> > > > > > > > >> > will
> > > > > > > > >> also exist after
> > > > > > > > >> > uninstall. This can be if you have forgotten the dll
> > > > > > > > >> >                       in the uninstaller (keyword
> > > > > > > "both") in a
> > > > > > > > >> > previos
> > > > > > > > >> test. The uninstaller
> > > > > > > > >> > do not simple remove the entries else
> > > > > > > > >> >                       it changes the entries to the
> > > > > > > state before
> > > > > > > > >> installation.
> > > > > > > > >> >                       Therefore remove the not
> > > > > > > automatically
> > > > > > > > >> > removed
> > > > > > > > >> keys after uninstall and
> > > > > > > > >> > test again with install - uninstall.
> > > > > > > > >> >
> > > > > > > > >> >                       This work only with a direct call
> > > > > > > of the
> > > > > > > > >> uninstaller.jar, not at
> > > > > > > > >> > debugging with e.g. Eclipse. For the last
> > > > > > > > >> >                       see my email to "fxa".
> > > > > > > > >> >
> > > > > > > > >> >                       Cheers
> > > > > > > > >> >
> > > > > > > > >> >                       Klaus
> > > > > > > > >> >
> > > > > > > > >> >                               -----Original
> > > > > > > Message-----
> > > > > > > > >> >                               From:
> > > > > > > > >> izpack-users-bounces at lists.berlios.de
> > > > > > > > >> > [mailto:izpack-users-bounces at lists.berlios.de ] On
> > > > > > > Behalf
> > > > > > > > Of Daniel
> > > > > > > > >> Silva
> > > > > > > > >> >                               Sent: Monday, July 23,
> > > > > > > 2007 7:53 PM
> > > > > > > > >> >                               To:
> > > > > > > izpack-users at lists.berlios.de
> > > > > > > > >> >
> > > > > > > > >> >                               Subject: Re:
> > > > > > > > [izpack-users] Windows
> > > > > > > > >> > XP
> > > > > > > > >> Registry Entries cleaning up
> > > > > > > > >> >
> > > > > > > > >> >
> > > > > > > > >> >
> > > > > > > > >> >                               Hi Klaus, thans for the
> > > > > > > reply.
> > > > > > > > >> >
> > > > > > > > >> >                               the "registryEntries",
> > > > > > > > >> native\COIOSHelper.dll  and the
> > > > > > > > >> >
> > > > > > > > com\izforge\izpack\event\RegistryUninstallerListener.class
> > > > > > > are all
> > > > > > > > >> there.
> > > > > > > > >> >                               I really dont know if the
> > > > > > > key are
> > > > > > > > >> persistent or not. How do I know
> > > > > > > > >> > that?
> > > > > > > > >> >
> > > > > > > > >> >                               Even izPack entries are
> > > > > > > not erase
> > > > > > > > >> > when I
> > > > > > > > >> uninstall it.
> > > > > > > > >> >
> > > > > > > > >> >
> > > > > > > > >> >
> > > > > > > > >> >                               On 7/23/07, Bartz, Klaus
> > > > > > > <
> > > > > > > > >> Klaus.Bartz at coi.de > wrote:
> > > > > > > > >> >
> > > > > > > > >> >                                       Hi Daniel,
> > > > > > > > >> >                                       sorry for late
> > > > > > > > answer, but I
> > > > > > > > >> > was
> > > > > > > > >> on a workshop.
> > > > > > > > >> >                                       I do not really
> > > > > > > know why
> > > > > > > > >> uninstall
> > > > > > > > >> do not work correctly with your
> > > > > > > > >> > program.
> > > > > > > > >> >                                       We use
> > > > > > > $UNINSTALL_NAME
> > > > > > > > >> > instead of
> > > > > > > > >> $APP_NAME, but this should produce
> > > > > > > > >> > only problems
> > > > > > > > >> >                                       with multiple
> > > > > > > > installations
> > > > > > > > >> > of
> > > > > > > > >> the
> > > > > > > > >> same program.
> > > > > > > > >> >
> > > > > > > > >> >                                       Try with some
> > > > > > > additional
> > > > > > > > >> > other
> > > > > > > > >> keys, may be with the root HKCU.
> > > > > > > > >> >
> > > > > > > > >> >                                       Are all keys
> > > > > > > > persistent, or
> > > > > > > > >> > only
> > > > > > > > >> some?
> > > > > > > > >> >                                       Look into your
> > > > > > > > >> uninstaller.jar(may be with an unzipper or with jar).
> > > > > > > > >> >                                       Is there a file
> > > > > > > > >> > "registryEntries"
> > > > > > > > >> in the root? It is a java object
> > > > > > > > >> > stream, but with some editors
> > > > > > > > >> >                                       you can look
> > > > > > > into. If you
> > > > > > > > >> > can, is
> > > > > > > > >> there the entry
> > > > > > > > >> >
> > > > > > > > >> SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\<your
> > > > > > > APP_NAME>
> > > > > > > > >> > ?
> > > > > > > > >> >                                       Is in the
> > > > > > > uninstaller
> > > > > > > > >> >
> > > > > > > > >>
> > > > > > > com\izforge\izpack\event\RegistryUninstallerListener.class
> > > > > > > > >> >                                       and
> > > > > > > > >> >
> > > > > > > > native\COIOSHelper.dll        ?
> > > > > > > > >> >
> > > > > > > > >> >                                       Cheers
> > > > > > > > >> >
> > > > > > > > >> >
> > > > > > > > >> >                                       Klaus
> > > > > > > > >> >
> > > > > > > > >> >
> > > > > > > > >> >                                       -----Original
> > > > > > > Message-----
> > > > > > > > >> >                                       From:
> > > > > > > > >> izpack-users-bounces at lists.berlios.de
> > > > > > > > >> > [mailto:izpack-users-bounces at lists.berlios.de ] On
> > > > > > > Behalf
> > > > > > > > Of Daniel
> > > > > > > > >> Silva
> > > > > > > > >> >                                       Sent: Monday,
> > > > > > > July
> > > > > > > > 16, 2007
> > > > > > > > >> > 10:38
> > > > > > > > >> PM
> > > > > > > > >> >                                       To:
> > > > > > > > izpack-users at lists.berlios.de
> > > > > > > > >> >                                       Subject:
> > > > > > > [izpack-users]
> > > > > > > > >> > Windows
> > > > > > > > >> XP
> > > > > > > > >> Registry Entries cleaning up
> > > > > > > > >> >
> > > > > > > > >> >
> > > > > > > > >> >                                       Hi,
> > > > > > > > >> >
> > > > > > > > >> >                                       I´ve just started
> > > > > > > using
> > > > > > > > >> > izPack
> > > > > > > > >> for
> > > > > > > > >> my applications and I had some
> > > > > > > > >> > trouble with Windows XP registry entries.
> > > > > > > > >> >
> > > > > > > > >> >                                       I have a
> > > > > > > > InstallSpec.xml file
> > > > > > > > >> > for
> > > > > > > > >> the installer creating procedure
> > > > > > > > >> > with the following lines
> > > > > > > > >> >
> > > > > > > > >> >                                       <?xml version="
> > > > > > > 1.0"
> > > > > > > > >> encoding="UTF-8" standalone="yes" ?>
> > > > > > > > >> >                                       <installation
> > > > > > > > version="1.0">
> > > > > > > > >> >                                          (...)
> > > > > > > > >> >                                          <native
> > > > > > > type="izpack"
> > > > > > > > >> > name="
> > > > > > > > >> ShellLink.dll"/>
> > > > > > > > >> >                                             <native
> > > > > > > > type="3rdparty"
> > > > > > > > >> name="COIOSHelper.dll" stage="both">
> > > > > > > > >> >                                             <os
> > > > > > > > family="windows"/>
> > > > > > > > >> >                                          </native>
> > > > > > > > >> >                                          (...)
> > > > > > > > >> >                                          <resources>
> > > > > > > > >> >                                             (...)
> > > > > > > > >> >                                             <res
> > > > > > > > >> src="./spec/RegistrySpec.xml" id="RegistrySpec.xml "/>
> > > > > > > > >> >                                             (...)
> > > > > > > > >> >                                          </resources>
> > > > > > > > >> >                                          (...)
> > > > > > > > >> >                                          <listeners>
> > > > > > > > >> >                                             <listener
> > > > > > > > >> installer="SummaryLoggerInstallerListener"/>
> > > > > > > > >> >                                             <listener
> > > > > > > > >> installer="RegistryInstallerListener"
> > > > > > > > >>
> > > > > > > > >> >
> > > > > > > > >> uninstaller="RegistryUninstallerListener">
> > > > > > > > >> >                                                <os
> > > > > > > > family="windows"/>
> > > > > > > > >> >                                             </listener>
> > > > > > > > >> >                                          </listeners>
> > > > > > > > >> >                                          (...)
> > > > > > > > >> >                                       </installation>
> > > > > > > > >> >
> > > > > > > > >> >                                       And a
> > > > > > > > RegistrySpec.xml like
> > > > > > > > >> > this:
> > > > > > > > >> >
> > > > > > > > >> >                                       <?xml version="
> > > > > > > 1.0"
> > > > > > > > >> encoding="UTF-8" standalone="yes" ?>
> > > > > > > > >> >
> > > > > > > > >> >                                       <registry>
> > > > > > > > >> >                                        <pack
> > > > > > > > name="UninstallStuff">
> > > > > > > > >> >                                         <value
> > > > > > > name="DisplayName"
> > > > > > > > >> >
> > > > > > > > >> >
> > > > > > > >
> > > > > > > keypath="SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$
> > > > > > > > APP_NAME"
> > > > > > > > >> >                                          root="HKLM"
> > > > > > > > >>
> > > > > > > >                                          string="$APP_NAME"/>
> > > > > > > > >> >                                         <value
> > > > > > > > >> > name="UninstallString"
> > > > > > > > >> >
> > > > > > > > >> >
> > > > > > > >
> > > > > > > keypath="SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$
> > > > > > > > APP_NAME"
> > > > > > > > >> >                                          root="HKLM"
> > > > > > > > >> >
> > > > > > > > >> string=""$JAVA_HOME\bin\javaw.exe"
> > > > > > > > >> -jar
> > > > > > > > >> > "$INSTALL_PATH\Uninstaller\uninstaller.jar""/>
> > > > > > > > >> >                                         <value
> > > > > > > name="DisplayIcon"
> > > > > > > > >> >
> > > > > > > > >> >
> > > > > > > >
> > > > > > > keypath="SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$
> > > > > > > > APP_NAME"
> > > > > > > > >> >                                          root="HKLM"
> > > > > > > > >>
> > > > > > > > >> >
> > > > > > > > >> string="$INSTALL_PATH\icons\SCarimbo.ico"/>
> > > > > > > > >> >                                         <value
> > > > > > > name="HelpLink"
> > > > > > > > >> >
> > > > > > > > >> >
> > > > > > > >
> > > > > > > keypath="SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$
> > > > > > > > APP_NAME"
> > > > > > > > >> >                                          root="HKLM"
> > > > > > > > >>
> > > > > > > >                                          string="$APP_URL"/>
> > > > > > > > >> >                                             </pack>
> > > > > > > > >> >                                       </registry>
> > > > > > > > >> >
> > > > > > > > >> >                                       I'm using
> > > > > > > > CheckedHelloPanel,
> > > > > > > > >> > so
> > > > > > > > >> $APP_NAME is declared. My problem is
> > > > > > > > >> > that when I uninstall the application, the registry
> > > > > > > > entries are not
> > > > > > > > >> > erased. The application is still listed as installed in
> > > > > > > Control
> > > > > > > > >> > Panel
> > > > > > > > >> ->
> > > > > > > > >> > Add or Remove Programs.
> > > > > > > > >> >
> > > > > > > > >> >                                       Am I doing
> > > > > > > something wrong?
> > > > > > > > >> >
> > > > > > > > >> >                                       Obs.: I've notice
> > > > > > > > that when I
> > > > > > > > >> uninstall izPack itself, its registry
> > > > > > > > >> > entries are not erased either.
> > > > > > > > >> >                                       --
> > > > > > > > >> >                                       Abraços,
> > > > > > > > >> >                                       Daniel Silva
> > > > > > > > >> >
> > > > > > > > >> >
> > > > > > > > >> >
> > > > > > > > >> _______________________________________________
> > > > > > > > >> >                                       izpack-users
> > > > > > > mailing list
> > > > > > > > >> >
> > > > > > > > izpack-users at lists.berlios.de
> > > > > > > > >> >
> > > > > > > > >> https://lists.berlios.de/mailman/listinfo/izpack-users
> > > > > > > > >> >
> > > > > > > > >> >
> > > > > > > > >> >
> > > > > > > > >> >
> > > > > > > > >> >
> > > > > > > > >> >
> > > > > > > > >> >                               --
> > > > > > > > >> >                               Abraços,
> > > > > > > > >> >                               Daniel Silva
> > > > > > > > >> >
> > > > > > > > >> >
> > > > > > > > >> >
> > > > > > > > _______________________________________________
> > > > > > > > >> >                       izpack-users mailing list
> > > > > > > > >> >                       izpack-users at lists.berlios.de
> > > > > > > > >> >
> > > > > > > > >> https://lists.berlios.de/mailman/listinfo/izpack-users
> > > > > > > > >> >
> > > > > > > > >> >
> > > > > > > > >> >
> > > > > > > > >> >
> > > > > > > > >> >
> > > > > > > > >> >
> > > > > > > > >> >               --
> > > > > > > > >> >               Abraços,
> > > > > > > > >> >               Daniel Silva
> > > > > > > > >> >
> > > > > > > > >> >
> > > > > > > > >> >
> > > > > > > > >> >
> > > > > > > > >> >       --
> > > > > > > > >> >       Abraços,
> > > > > > > > >> >       Daniel Silva
> > > > > > > > >> >
> > > > > > > > >> >
> > > > > > > > >> > _______________________________________________
> > > > > > > > >> > izpack-users mailing list
> > > > > > > > >> > izpack-users at lists.berlios.de
> > > > > > > > >> > https://lists.berlios.de/mailman/listinfo/izpack-users
> > > > > > > > >> >
> > > > > > > > >> >
> > > > > > > > >>
> > > > > > > > >> --
> > > > > > > > >> View this message in context:
> > > > > > > > >>
> > > > > > > > http://www.nabble.com/Windows-XP-Registry-Entries-cleaning-up-tf40910
> > > > > > >
> > > > > > > > >> 26.html#a11766768
> > > > > > > > >> Sent from the izpack users mailing list archive at
> > > > > > > Nabble.com <http://nabble.com/>.
> > > > > > > > >>
> > > > > > > > >> _______________________________________________
> > > > > > > > >> izpack-users mailing list
> > > > > > > > >> izpack-users at lists.berlios.de
> > > > > > > > >> https://lists.berlios.de/mailman/listinfo/izpack-users
> > > > > > > > >>
> > > > > > > > >
> > > > > > > > >
> > > > > > > > >
> > > > > > > > > --
> > > > > > > > > Abraços,
> > > > > > > > > Daniel Silva
> > > > > > > > >
> > > > > > > > > _______________________________________________
> > > > > > > > > izpack-users mailing list
> > > > > > > > > izpack-users at lists.berlios.de
> > > > > > > > > https://lists.berlios.de/mailman/listinfo/izpack-users
> > > > > > > > >
> > > > > > > > >
> > > > > > > >
> > > > > > > > --
> > > > > > > > View this message in context:
> > > > > > > > http://www.nabble.com/Windows-XP-Registry-Entries-cleaning-up-
> > > > > > >
> > > > > > > tf4091026.html#a11773078
> > > > > > > Sent from the izpack users mailing list archive at Nabble.com<http://nabble.com/>
> > > > > > > .
> > > > > > >
> > > > > > > _______________________________________________
> > > > > > > izpack-users mailing list
> > > > > > > izpack-users at lists.berlios.de https://lists.berlios.de/mailman/listinfo/izpack-users
> > > > > > >
> > > > > > > _______________________________________________
> > > > > > > izpack-users mailing list
> > > > > > > izpack-users at lists.berlios.de
> > > > > > > https://lists.berlios.de/mailman/listinfo/izpack-users
> > > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > > --
> > > > > > Abraços,
> > > > > > Daniel Silva
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > --
> > > > > Abraços,
> > > > > Daniel Silva
> > > > >
> > > > >
> > > > > _______________________________________________
> > > > > izpack-users mailing list
> > > > > izpack-users at lists.berlios.de
> > > > > https://lists.berlios.de/mailman/listinfo/izpack-users
> > > > >
> > > > >
> > > >
> > > >
> > > > --
> > > > Abraços,
> > > > Daniel Silva
> > > >
> > > >
> > >
> > >
> > > --
> > > Abraços,
> > > Daniel Silva
> >
> >
> >
> >
> > --
> > Abraços,
> > Daniel Silva
>
>
>
>
> --
> Abraços,
> Daniel Silva
>
>
> _______________________________________________
> izpack-users mailing list
> izpack-users at lists.berlios.de
> https://lists.berlios.de/mailman/listinfo/izpack-users
>
>


-- 
Abraços,
Daniel Silva
-------------- next part --------------
An HTML attachment was scrubbed...
URL: https://lists.berlios.de/pipermail/izpack-users/attachments/20070726/8ff9b668/attachment-0001.html 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Librarian.java
Type: application/octet-stream
Size: 29113 bytes
Desc: not available
Url : https://lists.berlios.de/pipermail/izpack-users/attachments/20070726/8ff9b668/attachment-0001.obj 


More information about the izpack-users mailing list