It seems environment variables can't be used with ZIP2EXE. I think this is a kind of bug!
I tried to create with ZIP2EXE a simple installer to bring the latest CleanerML files to BleachBit users with Windows XP.
My intension was to write them direct into the right sub-folder under %ProgramFiles(x86)%, but this doesn't work!
You need to write a real installer instead of using Zip2Exe if you want to expand a custom environment variable but Zip2Exe has built-in support for $ProgramFiles (see the dropdown for the Default Folder item). $ProgramFiles is the 32-bit x86 folder in 32-bit installers.
So there are no plans to support system environment variables, right?
Zip2Exe already supports a couple of variables that are basically the same as standard environment variables and in your case you want $ProgramFiles. Supporting random environment variables does not make a lot of sense because the user might not have them set.