Get the new PortableApps.com Platform 12.0.3. Better, stronger, faster, and prettier. Download Now or Buy on a Flash Drive
Instant access to over 300 free and legal portable apps (over 9GB) including the new Solfege (Aug 30, 2014)
PortableApps.com needs your help: Please consider making a donation today

Windows Vista compatibility

Yaytay - September 22, 2006 - 1:25pm
Share on Facebook

Hi,

The current way that Firefox Portable and Thunderbird Portable work triggers the UAC and failed installation warnings in Windows Vista.
Given that half the point of having portable apps is so that they can be used on machines that the user doesn't control it's not sufficient to blame Vista and say that UAB should eb turned off.

My understanding is that the current portable apps actually work by installing themselves one start up and then uninstalling themselves on shutdown.

Do you have plans for moving to an alternative way of packaging these apps that will work without requiring any elevated privileges?

Jim

( categories: )

Vista Issues

The apps have all been tested on Vista and work as expected. The apps DO NOT install themselves and then uninstall. They run from the portable drive and copy a couple files into TEMP while running. The error is on the part of Vista in terms of detecting it as a failed install.

Keep in mind that Vista is only a release candidate and not intended for ANY production use. The only Vista box you'll encounter before January/February 2007 will be one you own... and even after that, they will be few and far between (I know of no companies or universities planning on upgrading within the first 6 months). Most software does not yet support Vista (including Firefox) though it may happen to work correctly at the moment.

As Vista solidifies more and works out more of its bugs (it's still pretty buggy... and I have RC1 for testing), we'll do more work around getting Vista to work right with portable apps. I'm planning on having it be ironed out around the time Vista finally releases next year.

Actually, if you know of any resources on how Vista determines if a file is an installer and if it failed, please share them. From what I've determined, it looks like Vista uses "heuristics" to determine if it's an installer or not, based on the installers out there. In other words, there's no standard way to indicate whether it's an installer or not and if Vista is too dumb to figure it out right (which it is in this case), you're out of luck. Heck, part of the way it determines it is by looking for the word "setup" or "install" in the exe name... so it's not really that bright.

Sometimes, the impossible can become possible, if you're awesome!

Vista API

I was wondering if you were going to work with the problem, where you can not update Portable Firefox running on Vista RC1. This problem even occurs when running as administrator. The only way I can get it to work is if I turn off "User Account Control".

That's a Firefox Issue

And it's something that likely won't be fixed until after Firefox 2.0 comes out and Vista gets closer to release.

Keep in mind that no software publisher should feel like they should be Vista compatible today. Vista's a release candidate that should not be used on production systems and isn't coming out until December/January. Anyone choosing to use it as their everyday operating systems knows full well what they're getting into and will simply have to live with that until Vista is actually released.

Sometimes, the impossible can become possible, if you're awesome!

Try This

Ok, so it looks like with the addition of a manifest, we may be able to avoid the issue on Vista. I had to manually hack it in with Resource Hacker because NSIS doesn't yet support manifests (since they're still in flux as Vista solidifies) and disable the launcher's CRC check (leaving it more vulnerable to virus infections).

Anyway, I hacked the Firefox Portable Launcher from the current Firefox Portable 1.5.0.7 Pre-Release build (which should be the final version) to include a manifest for Vista. Grab yourself a copy of Firefox Portable 1.5.0.7 Pre-Release from the Beta Forum and then add the launcher below to the FirefoxPortable directory. Use it to launch Firefox Portable rather than the existing one.

Firefox Portable Launcher 1.3.0.0 with Vista manifest hacked on:
http://portableapps.com/temp/FirefoxPortable1300VistaHack.exe

Please let me know if it works as expected.

Sometimes, the impossible can become possible, if you're awesome!

That worked perfectly - no

That worked perfectly - no initial elevation required and no "failed installation" message.
That's on an internal build.

Can you get NSIS to make the manifest change for all their apps?

Thanks.

Future Release

Poking around in the NSIS change logs, a patch was submitted on Sept 16 to allow NSIS to generate manifest files and request the correct execution level. It's not a part of the current NSIS release (Released on Sept 9) but it should be a part of later ones as this affects all NSIS installers and applications. There doesn't appear to be a huge rush as, even in the comments, they mention that Vista is unreleased and still in flux, so the way it works may have to change yet again. Since Vista is only a test release and isn't for use on production systems, this won't really affect anyone until January.

Since it doesn't support it now, I'm not going to hack it into the launchers now at the expense of the CRC checks (which help detect virus infections or corruption of the launchers). But, I think the next NSIS release will probably have at least some support for it, so I'll be adding in the manifests on the production releases at that point.

Sometimes, the impossible can become possible, if you're awesome!

A workaround is to create a

A workaround is to create a manifest yourself ... this same code should work for any portable application

Create the following file in notepad:
============================BEGIN BELOW===========================

<?xml version="1.0" encoding="utf-8" ?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
	<assemblyIdentity version="1.0.0.0"
         processorArchitecture="X86" 
         name="Sample" 
         type="win32" />
	<description>Test Application</description>
	<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
		<security>
			<requestedPrivileges>
				<requestedExecutionLevel level="asInvoker" />
			</requestedPrivileges>
		</security>
	</trustInfo>
</assembly>

============================END ABOVE===========================

Save it as <executablename>.exe.manifest in the same folder as the executable.

Then run the portable executable and UAC promt should go away.

miji2

*sigh*

This is one of the reasons I will not be upgrading to Vista for as long as possible... Too many changes to have to fix.

It's here

In case folks looking at this topic missed it, I released the first Vista-compatible launcher here:
http://portableapps.com/node/3425

Sometimes, the impossible can become possible, if you're awesome!