# Google Chrome Portable Help

## a new way to get online

Google Chrome Portable automatically downloads and installs Google's innovative Chrome browser and converts it into a portable form. Google Chrome is built for speed, security, and simplicity, so it will run well even on your aunt's ancient PC. Learn more about Google Chrome Portable...

- Support PortableApps.com's Hosting and Development

Go to the Google Chrome Portable Homepage >>

Get more portable apps at PortableApps.com

## Google Chrome Portable-Specific Issues

Installer and launcher licensed under GPLv2. More License Info.

### Known Issues

- The built-in update feature in Google Chrome will not function.
- Google Chrome Portable and local Chrome may not work simultaneously unless they are both the same exact version. This cannot be fixed with the current way Google Chrome's update system works.
- Google Chrome does not appear to run properly under some unofficial minimalistic Windows distributions. Only official RTM builds of Windows from Microsoft are supported.
- Currently, Java plugins will not integrate with Java Portable, but will only be able to use a locally installed Java. A future release of Java Portable or the PortableApps.com Platform may add the ability for Java Portable to work in Google Chrome Portable.
- When opting in to Portable Passwords (see GooglechromePortable.ini), a malicious individual will be able to determine the length of your passwords.

### Using an arbitrary version of Chrome, Chromium, or Iron

There are a few ways you can set up Google Chrome Portable to use a different version of Chrome or variants. First you must install Google Chrome Portable. Then you can remove the existing version of Chrome from App\Chrome-bin and replace it.

If your final program executable name is not App\Chrome-bin\chrome.exe you can use a GoogleChromePortable.ini file to have the launcher launch a different file. See the file in Other\Source for more info, you can use it as a template in the same directory as the launcher.

The following methods have been known to work for installing an arbitrary Chrome:

1. Copy a local Chrome installation

   Press Win+R to open the Run dialog. On XP and below type:

       %USERPROFILE%\Local Settings\Application Data\Google\Chrome\Application

   On Vista and above you type:

       %USERPROFILE%\AppData\Local\Google\Chrome\Application

   And click OK. This is the Google Chrome application directory. There are two ways to copy the files:

   1. Open the directory corresponding with the version number you want to copy, and then the Installer directory inside that. If you extract the Chrome.7z file you find therein into your App folder it will create a Chrome-bin directory and populate it with the proper files.

      OR

   2. Copy the entire directory you are in. You will want to exclude the following files:
      - old_chrome.exe
      - Any version number directory other than the newest (chrome.exe will only work with the newest).
      - The Installer directory inside the version number directory.

      All the files and directories go into App\Chrome-bin.

2. Download an arbitrary version installer

   This url will download any Chrome version you want, provided it's still on the server (old versions seem to be removed periodically):

       http://dl.google.com/chrome/install/<X>.<Y>/chrome_installer.exe

   Replace <X> and <Y> with the third and fourth numbers from the version. Example: 3.0.197.11 has a download url of http://dl.google.com/chrome/install/197.11/chrome_installer.exe

   Do not run this installer as it will silently update your local Chrome! Instead unpack it with an archiver program (7-zip works) and you will end up with a single .7z file. Extract this file into App and it will create the Chrome-bin file and populate it with the proper files.

### Installing plugins

If you wish to have portable plugins, be aware that many plugins are linked to locally installed programs and will not function correctly in a portable environment. When testing plugins be sure to test them on a system that does not have the plugin installed locally.

Note that if a system has plugins installed locally for Firefox or Chrome, your portable Google Chrome should find and use them automatically.

Since verison 5.0 Chrome includes a built-in Flash player so no Flash plugin is needed.

Starting with 6.0 (currently only in the Dev channel) Chrome will have a PDF plugin capable of rendering PDF files. No PDF plugin will be needed externally.

To install a plugin, first you need to find the location of a locally installed plugin. Run a local Firefox or Chrome and navigate to about:plugins. In Chrome, click "Details" on the right.

You should now see each plugin's details including the file path.

If you open the folder up and copy any relevant looking files to Google Chrome Portable\App\Chrome-bin\plugins (you'll have to create the plugins folder) it should work if the plugin supports being used this way.

You can open about:plugins in Google Chrome Portable to verify which plugins are being loaded and used. Again be sure to test the plugin on a computer without that plugin installed locally!

### Removing unneeded components

NOTE: This section is out of date. Be sure to keep backups in case your removals break something you want. Test thoroughly.

Chrome ships with a few features that can be safely removed:

To remove languages, open the App\Chrome-bin\<version number>\Locales directory, and remove any language file you do not need. en-US.dll is US English and may be the only one you want.

To remove DOM Inspector, remove the App\Chrome-bin\<version number>\Resources\Inspector directory. DOM Inspector will still be available within Chrome as an option but will not function (the popup window will have an error message).

To remove packaged Web Apps (GMail, Calendar, Docs) remove the appropriate directories from App\Chrome-bin\<version number>\Resources. Probably not worth it since they're mostly just a few icons.

In addition if you installed a custom Chrome version by hand keep in mind that the App\Chrome-bin\<version number>\Installer directory is not needed and should be removed. Normal Chrome only seems to keep it around for uninstallation purposes.

You can also experiment with removing App\Chrome-bin\<version number>\gears.dll to remove Google Gears support but I don't know if that will work or not. :) Same with gcswf32.dll and pdf.dll for the internal flash and PDF plugins.

wow_helper.exe is used for 64-bit support for the sandbox and if you don't intend to run on 64-bit you don't need it. It is not installed on 32-bit machines by the Chrome installer. There are also nacl64.* files which are probably 64-bit Native Client plugin stuff.

### Enabling Chrome's First Run dialog

You can trigger the first run dialog in Google Chrome to import bookmarks from the local machine by deleting App\Chrome-bin\First Run and then running Google Chrome Portable. Note that it works even if you have a profile, but I don't know if it'll preserve or wipe out your bookmarks when it imports, so be careful!

### Compressing with UPX

Though PAF has allowed the installer for Google Chrome Portable to be simplified, a downside is that UPX cannot be used to automatically compress the downloaded Chrome files. You can compress some of them by hand if you wish.

Do not compress the following files:

- avcodec*.dll - Random crashes with <video>/<audio>. UPX detects errors when you try to decompress.
- chrome.exe - Tabs no longer show content.
- chrome.dll - Not supported by UPX.
- wow_helper.exe, nacl64.dll, nacl64.exe - 64-bit binaries not supported by UPX.
- Locale DLLs - Chrome starts up with no text, pops up a blank dialog, and crashes.

The following files CAN be compressed without breaking Chrome:

- avformat*.dll
- avutil*.dll
- chrome_launcher.exe
- d3dcompiler*.dll
- d3dx9*.dll
- gcswf32.dll
- gears.dll
- icudt*.dll
- libegl.dll
- libglesv2.dll
- npchrome_frame.dll (Compacts in Chrome 6, not in Chrome 7)
- pdf.dll

New versions of Chrome may add more binaries, be sure to test Chrome thoroughly if you compress any of them.

### Copying a local profile

Press Win+R to open the Run dialog. On XP and below type:

    %USERPROFILE%\Local Settings\Application Data\Google\Chrome\User Data

On Vista and above you type:

    %LOCALAPPDATA%\Google\Chrome\User Data

This is your profile dir and should be copied to Data\profile. If you did it right you will end up with a Default directory and a Local State file in Data\profile. You may also have a few more files and folders depending on your profile settings.

You should exempt Default\Cache and Default\Media Cache from the copy. You may also want to trim your profile down a bit regularly, in particular the History Index files can get large. You should use the in-Chrome options for purging old data, or if you know how, vaccuum the SQLLite databases in your profile. Note that removing the Thumbnails file may seem like a good idea but then your icons on your bookmarks will be gone.

You can further reduce the profile size by disabling malware and phishing protection in Chrome and then removing the Safe Browsing files from the profile.

In the end it may be prudent to simply export your bookmarks from Chrome and then re-import them in a fresh profile to keep file sizes down.

### Cleaning up in case of a launcher crash

If the GoogleChromePortable process does not exit normally, it will leave some bits and pieces that need to be cleaned up, as most portable launchers will:

1. HKEY_CURRENT_USER\Software\Google\Update\Clients\{8A69D345-D564-463c-AFF1-A69D9E530F96}\pv will be set to the Portable Chrome version. If the local Chrome is a different version this value will need to be adjusted to match. If there is no local Chrome the entire key should be deleted.
2. HKEY_CURRENT_USER\Software\Google\Update\Clients\{4ea16ac7-fd5a-47c3-875b-dbf4a2008c20}\pv will be set to the Portable Chrome version. If the local Chrome CANARY is a different version this value will need to be adjusted to match. If there is no local Chrome CANARY the entire key should be deleted.
3. HKEY_CURRENT_USER\Software\Google\Update\ClientState\{8A69D345-D564-463c-AFF1-A69D9E530F96} should be deleted if Chrome is not installed locally.
4. HKEY_CURRENT_USER\Software\Google\Update\ClientState\{4ea16ac7-fd5a-47c3-875b-dbf4a2008c20} should be deleted if Chrome CANARY is not installed locally.
5. HKEY_CURRENT_USER\Software\Google\Rlz should be deleted.
6. If there is no local Chrome HKEY_CLASSES_ROOT\Applications\chrome.exe, HKEY_CLASSES_ROOT\.htm\OpenWithList\chrome.exe, and HKEY_CLASSES_ROOT\.html\OpenWithList\chrome.exe should all be deleted. Otherwise HKEY_CLASSES_ROOT\Applications\chrome.exe\shell\open\command should be set to the location of the local chrome using the following templates.

   For XP:

       "C:\Documents and Settings\<Username>\Local Settings\Application Data\Google\Chrome\Application\chrome.exe" -- "%1"

   Vista and 7:

       "C:\Users\<Username>\AppData\Local\Google\Chrome\Application\chrome.exe" -- "%1"

   Chrome overwrites this value with it's own location when run portably so the launcher will restore it on close.

7. Make sure there is no Data\settings\GoogleChromePortableShuttingDown and delete it if it exists.
8. %TEMP%\GoogleChromePortable\profile should be copied back to Data\profile to avoid losing any profile data changed last session, if copying the profile locally was on. %TEMP%\GoogleChromePortable\profile\Default\Cache should be excluded if it exists.
9. %TEMP%\GoogleChromePortable\rlz.reg should be merged into the registry if it exists.
10. %TEMP%\GoogleChromePortable should be deleted.

### Command line options

Google Chrome has some experimental features which require command line parameters to activate. Some others are for diagnostic purposes. You can enable these by copying GoogleChromePortable\Other\Source\GoogleChromePortable.ini to GoogleChromePortable\ and adding the parameters to the AdditionalParameters field. For example:

    [GoogleChromePortable]
    AdditionalParameters=--disable-extensions --enable-webgl

This disables extension support in Chrome and enables experimental WebGL support.

## Changelog

#### 2.3.0.0

- 7.0.517.44 Stable, 8.0.552.200 Beta, 9.0.576.0 Dev/Canary
- Updated to PA.c Installer 2.0.6.
- Merged in Language files from John's latest GCP installer builds.
- Renamed Test to Beta to match John's builds.
- Tweaked Canary online installer's download url (I may have been explictly selecting a download mirror).
- Regenerated DefaultData for each Chrome version... previously Dev would have DefaultData from a Stable Chrome etc so it would have to import the old profile causing some glitches (most notably missing thumbnails).
- Fixed Portable Passwords (Chrome moved its password storage).

#### 2.2.0.0

- 6.0.472.55 Stable/Beta, 7.0.517.0 Dev, and introducing 7.0.521.0 Canary
- Now Chrome is run in Chrome-SxS mode, which deactivates the "Set as default browser" feature to make it more portable-friendly. As a side effect the about dialog will always say "canary" and the window icon will be the Chrome Canary icon. To turn this off, comment out the CHROMESXSMODE define in the launcher NSI and recompile.
- Tweaked and updated help.
- Updated to PA.c Installer 2.0.3.
- Added support for PortableApps.com AppCompactor (Chrome should work now if you use it).
- Fixed thumbnails not showing up on the very first new tab page with a new profile.

#### 2.1.2.0

- 5.0.375.99 Stable, 5.0.375.86 Beta, 6.0.458.1 Dev
- Tweaked some help wording, added section on plugins.
- Updated to PA.c Installer 2.0.2.

#### 2.1.1.3

- 5.0.375.55 Stable/Beta, 6.0.408.1 Dev

#### 2.1.1.2

- 4.1.249.1045 Stable, 5.0.342.9 Beta, 5.0.375.9 Dev

#### 2.1.1.1

- Updated Dev to 4.0.302.3 and Stable/Beta to 4.0.249.78.
- Updated "Google Chrome, Portable Edition" reference to "Google Chrome Portable".
- Updated to PA.c Installer 1.0.2.

#### 2.1.1.0

- Updated Dev to 4.0.266.0 and Beta to 4.0.249.30. Google Chrome Extension gallery is live!
- Installer now shows the version of Chrome being downloaded.
- Updated the sample INI with some new notes.
- msvcr100.dll beta 2 is no longer required by the NSIS plugin. 200kb has been shaved off the launcher.
- Changes to Portable Passwords to improve security and prevent possible vulnerabilities. If you were previously using Portable Passwords you will need to import your passwords to Chrome before updating, see the sample INI for notes on how to keep your saved passwords.
- Fixed bug in NSIS plugin where memory was freed twice (oops).
- Added EncryptPortablePasswords switch to INI, so you can choose to store saved passwords in plaintext. This may be useful if you already use an encryption solution such as TrueCrupt to protect your PortableApps and have no need for additional protection. This is also removes the need for a master password.
- Installer window no longer shows. DialogEx is used instead for the master password prompt.
- Tidied up some things in the launcher code (all language strings are in the appropriate NSH now).
- Updated to PA.c Installer 1.0.1.

#### 2.1.0.0

- Updated Dev to 4.0.249.11
- Merged with John's recommended changes to the launcher/installer.
- Updated to PAF 1.0
- Fixed some details in the docs. 4.0 beta doesn't have extension support at all.
- Fixed network paths not working with the theme path fixer. Note that running from a network folder is not supported. If you encounter problems, try mapping a drive letter to the folder and running GCP from there.
- exclude.txt has been removed from Source since it is no longer needed.
- Local Chrome will no longer lose track of its profile if "User Data" was set up as an NTFS junction.
- Passwords can now be preserved accross user accounts and computers by setting PortablePasswords to true in GoogleChromePortable.ini. You will need to provide a master password as an alternative to Chrome's built-in encryption to keep your passwords safe. See GoogleChromePortable.ini for more details.

#### 2.0.1.0

- Updated Stable to 3.0.195.33 and Dev to 4.0.245.0
- Fixed launcher compile warnings.
- Splash screen can now be removed from the launcher by commenting out an !define.
- It was possible that, if a problem occurred restoring the local RLZ registry key, the portable RLZ data would not be wiped. The portable RLZ data is now always wiped.
- Updated docs to reflect that the 4.0 beta does not have extensions enabled by default and needs the command line switch.

#### 2.0.0.0

- Updated Stable to 3.0.195.32, Beta to 4.0.223.16, Dev to 4.0.237.0
- Using new versions based on launcher versions rather than Google Chrome versions.
- Default locations for Beta and Dev builds changed to "GoogleChromePortableTest" and "GoogleChromePortableDev" to fit with PAF.
- Fixed bug where themes would stop working when GCP's path or drive letter changed.
- Added support for PortableApps.com Menu language selection. Set UsePAMLanguage to false in the INI to use the user-selected language in Chrome instead.
- On request of PA community, did more agressive cleanup of registry keys and directories left behind after quitting.
- Backup and restore local Chrome's unique identifier information used for collecting usage data.
- Updated launcher crash cleanup guide.

#### 4.0.223.9 R2

- Removed nsexec plugin and used CopyFiles instead.

#### 4.0.223.9

- Quick update with a new dev build.

#### 4.0.222.12

- Merged John Haller's changes into my own source.
- Fixed help links to point to Google Chrome Portable page.
- Pinned PortableApps.com to the new tab page for new profiles.
- Removed "don't set as default browser" release note since we use DefaultData now.
- Chrome occasionally spits out a debug.log in the Chrome-bin folder. This is now cleaned up on close.
- Fixed bug where RunLocally was forced to true.
- Fixed bug where RunLocally would not copy some theme images back on close, causing theming problems.

#### 4.0.206.1 R2

- Fixed sample INI file inaccuracy.

#### 4.0.206.1

- Help files were not properly synced between the three releases.
- Removed Java Portable support as per John Haller's request.
  - Due to security concerns the automatic plugin import is disabled, but it can be reenabled (see Other\Source\GoogleChromePortable.ini for details). However without the Java Portable support, it will only be able to utilize a locally installed Java. The security risk lies from the plugin possibly using an outdated, exploitable Java installed locally.
- Replaced tagline with one from a catchy Google Chrome Japan commercial I like.
- I keep calling "Java Portable" "Portable Java". Maybe I subconsciously like the old naming sceme? Regardless, fixed.
- Fixed GoogleChromePortable.ini being ignored.
- Updated list of compressable DLLs.
- Added help topics on experimental features and the switches uses to activate them.
- Minor help changes.

#### 3.0.197.11

- Attempted to add Java Portable support, but it seems Java will still use a higher-version locally installed Java if it finds one... even if there are no references in the registry to it. If not the Java Portable should be utilized.
- Cleaned up launcher by using LogicLib.
- Eliminated the need for version.txt, version is now detected automatically.

#### 3.0.190.4

- Replaced Chromium icon with Chrome icon from the Chromium SVN.
- Tweaked code that copies the profile back from %TEMP% to prevent it from copying the new Media Cache.
- Removed a couple files left over from the old installer.
- Added more release notes to help fill in the gaps the old installer used to fill.

#### 3.0.190.4 Development Test 1

- Redid installer to fit PortableApps.com Format. Less options. :'(
- Moved documentation into help file.

#### 3.0.187.0

- Updated to PortableApps.com Installer 0.91.0
- Added help file modeled (OK so I copied one >_>) after standard PortableApps.com help files

#### 2.0.180.0

- Uses PortableApps.com Installer 0.90.0 framework
- If the user cancels the download the installer will abort.

#### 2.0.170.0

- Updated download locations as 162.0 is no longer downloadable.
- You can now opt to not install any Chrome version automatically, if you want to do it yourself. Keep in mind you need to make sure Data\settings\version.txt contains the Google Chrome version installed or else Google Chrome Portable will not work.
- The installer will no longer automatically advance past the installation progress dialog so you can copy any errors that occur for an error report.

#### 2.0.162.0

- Updated download locations
- Cache will be stored in %TEMP% in 162.0 and up.

#### 2.0.156.1

- Updated download locations

#### 1.0.154.42

- Updated hardcoded download locations in installer (if anyone has a better idea, especially an auto-updating static link, let me know).
- Fixed appinfo.ini version info getting out of sync, need to remember to update that. >_>
- Launcher now checks for GoogleChromePortable instead of Chrome running so local Chrome running won't affect how the launcher works.
- Compiling the launcher now requires this plugin.
- INI file reading is now more forgiving of missing entries (it will fall back to defaults for every missing entry).
- RunLocally is now OFF by default for privacy concerns, as passwords and other sensitive information could be recoverable on the local computer you run Google Chrome Portable on if RunLocally is on. Use this GoogleChomePortable.ini in the same directory as GoogleChromePortable.exe to turn it on if you want a performance boost from running the profile off of a faster local hard drive:

      [GoogleChromePortable]
      RunLocally=true

- When RunLocally is true, the launcher will attempt to prevent you from running it when Google Chrome Portable is copying your profile back to your portable drive in the background, which may take some time depending on the speed of your device.
- Bunch of other bug fixes relating to stuff being broken.

#### 0.4.154.29

- Chrome 0.4.154.29 was released into the beta channel. Updated download.
- This installer will now preserve plugins when updating an existing installation.
- Minor typo fix.

#### 0.4.154.25

- Chrome 0.4.154.25 was released into the beta channel. Updated download.

#### 0.4.154.23

- Fixed misreported version in installer
- Download url updated
- Commented out line that called newadvsplash functions... should have been commented out all along.

#### 0.4.154.22

- Started keeping this log
- Rewrote some of the installer code to make it cleaner.
- Added ability to download Chrome installer. Due to the way Google organizes the installers, I have to hard-code a specific version.
- Fixed appinfo.ini data.
- Added proper Chromium icon from Chromium.
- Launcher will now, by default, copy the user profile to $TEMP and copy it back when Chrome closes, sans Cache.
- Launcher will now back up and restore the "Open With" keys Google Chrome creates (deleting them if the Portable copy created them).