diff --git a/Resources/GoogleChromePortable/App/AppInfo/EULA.txt b/Resources/GoogleChromePortable/App/AppInfo/EULA.txt new file mode 100644 index 00000000..f88b1c94 --- /dev/null +++ b/Resources/GoogleChromePortable/App/AppInfo/EULA.txt @@ -0,0 +1,11 @@ +Please note that you MUST sign into Google Chrome with your associated Google account in order to have a fully functional browser when used portably. Unlike other browsers, components of Google Chrome are locked to a given PC and will be lost if you move from PC to PC including extensions, extension settings and data, homepage and search settings, etc. This is by design of the Google Chrome team. + +Passwords are not portable by default but can be made portable using a configuration option within the launcher's INI file. They may be portable while signed into Google. + +Certificates and Chrome apps installed outside the browser are not portable and are installed on the local machine. + +By installing, you are agreeing to the current Google Chrome End User License Agreement as published here: http://www.google.com/chrome/eula.html + +Portableapps.com is not affiliated with Google. Google and Chrome are trademarks or registered trademarks of Google Inc. + +Portions of Google Chrome Portable utilize SQLite3. The license is available here: http://www.sqlite.org/copyright.html diff --git a/Resources/GoogleChromePortable/App/AppInfo/appcompactor.ini b/Resources/GoogleChromePortable/App/AppInfo/appcompactor.ini new file mode 100644 index 00000000..da19746e --- /dev/null +++ b/Resources/GoogleChromePortable/App/AppInfo/appcompactor.ini @@ -0,0 +1,2 @@ +[PortableApps.comAppCompactor] +FilesExcluded=avcodec-52.dll|chrome.exe|am.dll|ar.dll|bg.dll|bn.dll|ca.dll|cs.dll|da.dll|de.dll|el.dll|en-GB.dll|en-US.dll|es.dll|es-419.dll|et.dll|fi.dll|fil.dll|fr.dll|gu.dll|he.dll|hi.dll|hr.dll|hu.dll|id.dll|it.dll|ja.dll|kn.dll|ko.dll|lt.dll|lv.dll|ml.dll|mr.dll|nb.dll|nl.dll|pl.dll|pt-BR.dll|pt-PT.dll|ro.dll|ru.dll|sk.dll|sl.dll|sr.dll|sv.dll|sw.dll|ta.dll|te.dll|th.dll|tr.dll|uk.dll|vi.dll|zh-CN.dll|zh-TW.dll \ No newline at end of file diff --git a/Resources/GoogleChromePortable/App/AppInfo/appicon.ico b/Resources/GoogleChromePortable/App/AppInfo/appicon.ico new file mode 100644 index 00000000..88816acc Binary files /dev/null and b/Resources/GoogleChromePortable/App/AppInfo/appicon.ico differ diff --git a/Resources/GoogleChromePortable/App/AppInfo/appicon_128.png b/Resources/GoogleChromePortable/App/AppInfo/appicon_128.png new file mode 100644 index 00000000..fee84a34 Binary files /dev/null and b/Resources/GoogleChromePortable/App/AppInfo/appicon_128.png differ diff --git a/Resources/GoogleChromePortable/App/AppInfo/appicon_16.png b/Resources/GoogleChromePortable/App/AppInfo/appicon_16.png new file mode 100644 index 00000000..236f2661 Binary files /dev/null and b/Resources/GoogleChromePortable/App/AppInfo/appicon_16.png differ diff --git a/Resources/GoogleChromePortable/App/AppInfo/appicon_256.png b/Resources/GoogleChromePortable/App/AppInfo/appicon_256.png new file mode 100644 index 00000000..b17c0d51 Binary files /dev/null and b/Resources/GoogleChromePortable/App/AppInfo/appicon_256.png differ diff --git a/Resources/GoogleChromePortable/App/AppInfo/appicon_32.png b/Resources/GoogleChromePortable/App/AppInfo/appicon_32.png new file mode 100644 index 00000000..103297f4 Binary files /dev/null and b/Resources/GoogleChromePortable/App/AppInfo/appicon_32.png differ diff --git a/Resources/GoogleChromePortable/App/AppInfo/appicon_75.png b/Resources/GoogleChromePortable/App/AppInfo/appicon_75.png new file mode 100644 index 00000000..b6eba312 Binary files /dev/null and b/Resources/GoogleChromePortable/App/AppInfo/appicon_75.png differ diff --git a/Resources/GoogleChromePortable/App/AppInfo/appinfo.ini b/Resources/GoogleChromePortable/App/AppInfo/appinfo.ini new file mode 100644 index 00000000..34e2a148 --- /dev/null +++ b/Resources/GoogleChromePortable/App/AppInfo/appinfo.ini @@ -0,0 +1,39 @@ +[Format] +Type=PortableApps.comFormat +Version=3.5 + +[Details] +Name=Google Chrome Portable +AppId=GoogleChromePortable +Publisher=Google & PortableApps.com +Homepage=https://portableapps.com/apps/internet/google_chrome_portable +Category=Internet +Description=Web browser +Language=Multilingual +Trademarks= +InstallType= + +[License] +Shareable=true +OpenSource=false +Freeware=true +CommercialUse=true +EULAVersion=2 + +[Version] +PackageVersion=84.0.4147.89 +DisplayVersion=84.0.4147.89 + +[SpecialPaths] +Plugins=Chrome-bin\Plugins + +[Control] +BaseAppID=Chrome.ZQNWJZRJIK3UCX77OAOZ4G6E.profile.Default +Icons=1 +Start=GoogleChromePortable.exe + +[Associations] +FileTypes=htm,html,shtml,xht,xhtml +FileTypeCommandLine=-- "%1" +Protocols=ftp,http,https +ProtocolCommandLine=-- "%1" diff --git a/Resources/GoogleChromePortable/App/AppInfo/installer.ini b/Resources/GoogleChromePortable/App/AppInfo/installer.ini new file mode 100644 index 00000000..0ae64517 --- /dev/null +++ b/Resources/GoogleChromePortable/App/AppInfo/installer.ini @@ -0,0 +1,13 @@ +[DownloadFiles] +DownloadURL=https://dl.google.com/release2/chrome/AIHcSO5F2NZdUg_Cy-Cbgy8_84.0.4147.89/84.0.4147.89_chrome_installer.exe +DownloadName=Google Chrome (Stable) +DownloadFilename=84.0.4147.89_chrome_installer.exe +DownloadMD5=50bf8fbac5eb9f540b3cf6b33bff744f +AdditionalInstallSize=182000 +DoubleExtractFilename=chrome.7z +DoubleExtract1To=App +DoubleExtract1Filter=Chrome-bin\** + +[DirectoriesToPreserve] +PreserveDirectory1=App\Chrome-bin\Plugins +PreserveDirectory2=App\Chrome-bin\Dictionaries diff --git a/Resources/GoogleChromePortable/App/AppInfo/pac_installer_log.ini b/Resources/GoogleChromePortable/App/AppInfo/pac_installer_log.ini new file mode 100644 index 00000000..804dc37e --- /dev/null +++ b/Resources/GoogleChromePortable/App/AppInfo/pac_installer_log.ini @@ -0,0 +1,11 @@ +[PortableApps.comInstaller] +Info1=Do not delete or modify this file. It may be necessary for this app to function correctly. +Info2=This file was generated by the PortableApps.com Installer wizard and modified by the official PortableApps.com Installer TM Rare Ideas, LLC as the app was installed. +Info3=This file should be excluded from git repositories by using the appropriate gitignore. +Run=true +WizardVersion=3.5.16.0 +PackagingDate=2020-07-14 +PackagingTime=21:22:13 +InstallerVersion=3.5.16.0 +InstallDate=2020-07-22 +InstallTime=21:54:21 diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/84.0.4147.89.manifest b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/84.0.4147.89.manifest new file mode 100644 index 00000000..7a259567 --- /dev/null +++ b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/84.0.4147.89.manifest @@ -0,0 +1,8 @@ + + + + diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Extensions/external_extensions.json b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Extensions/external_extensions.json new file mode 100644 index 00000000..1ef50f3b --- /dev/null +++ b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Extensions/external_extensions.json @@ -0,0 +1,5 @@ +// This json file will contain a list of extensions that will be included +// in the installer. + +{ +} \ No newline at end of file diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/am.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/am.pak new file mode 100644 index 00000000..6a69412b Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/am.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/ar.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/ar.pak new file mode 100644 index 00000000..95b15393 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/ar.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/bg.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/bg.pak new file mode 100644 index 00000000..ccf79d2d Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/bg.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/bn.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/bn.pak new file mode 100644 index 00000000..45215d44 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/bn.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/ca.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/ca.pak new file mode 100644 index 00000000..9669df55 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/ca.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/cs.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/cs.pak new file mode 100644 index 00000000..60d93930 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/cs.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/da.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/da.pak new file mode 100644 index 00000000..b71bb50b Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/da.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/de.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/de.pak new file mode 100644 index 00000000..0816db39 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/de.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/el.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/el.pak new file mode 100644 index 00000000..3156450d Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/el.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/en-GB.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/en-GB.pak new file mode 100644 index 00000000..343bfa42 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/en-GB.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/en-US.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/en-US.pak new file mode 100644 index 00000000..be7d53cf Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/en-US.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/es-419.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/es-419.pak new file mode 100644 index 00000000..7a41b3c0 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/es-419.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/es.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/es.pak new file mode 100644 index 00000000..1e7ac596 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/es.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/et.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/et.pak new file mode 100644 index 00000000..5155121b Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/et.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/fa.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/fa.pak new file mode 100644 index 00000000..230bfdee Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/fa.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/fi.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/fi.pak new file mode 100644 index 00000000..a424174f Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/fi.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/fil.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/fil.pak new file mode 100644 index 00000000..23e57ee4 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/fil.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/fr.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/fr.pak new file mode 100644 index 00000000..1d1b0052 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/fr.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/gu.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/gu.pak new file mode 100644 index 00000000..00687ed1 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/gu.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/he.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/he.pak new file mode 100644 index 00000000..ff8c0610 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/he.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/hi.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/hi.pak new file mode 100644 index 00000000..391c17da Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/hi.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/hr.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/hr.pak new file mode 100644 index 00000000..e7d98587 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/hr.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/hu.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/hu.pak new file mode 100644 index 00000000..2ede6560 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/hu.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/id.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/id.pak new file mode 100644 index 00000000..de32832b Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/id.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/it.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/it.pak new file mode 100644 index 00000000..c423c32b Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/it.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/ja.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/ja.pak new file mode 100644 index 00000000..378de552 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/ja.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/kn.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/kn.pak new file mode 100644 index 00000000..51a84dfe Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/kn.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/ko.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/ko.pak new file mode 100644 index 00000000..42acbc55 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/ko.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/lt.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/lt.pak new file mode 100644 index 00000000..2a4372e7 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/lt.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/lv.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/lv.pak new file mode 100644 index 00000000..3a2519d2 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/lv.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/ml.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/ml.pak new file mode 100644 index 00000000..a866cc73 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/ml.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/mr.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/mr.pak new file mode 100644 index 00000000..81c88780 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/mr.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/ms.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/ms.pak new file mode 100644 index 00000000..209fc3c3 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/ms.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/nb.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/nb.pak new file mode 100644 index 00000000..dda83791 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/nb.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/nl.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/nl.pak new file mode 100644 index 00000000..3f1e2eb6 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/nl.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/pl.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/pl.pak new file mode 100644 index 00000000..e4fe4560 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/pl.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/pt-BR.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/pt-BR.pak new file mode 100644 index 00000000..faa6dd5e Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/pt-BR.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/pt-PT.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/pt-PT.pak new file mode 100644 index 00000000..57b656b0 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/pt-PT.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/ro.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/ro.pak new file mode 100644 index 00000000..1a8f3a23 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/ro.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/ru.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/ru.pak new file mode 100644 index 00000000..b361b5e0 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/ru.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/sk.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/sk.pak new file mode 100644 index 00000000..a8943081 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/sk.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/sl.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/sl.pak new file mode 100644 index 00000000..ec4276c1 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/sl.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/sr.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/sr.pak new file mode 100644 index 00000000..973a5e35 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/sr.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/sv.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/sv.pak new file mode 100644 index 00000000..2ee3a60d Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/sv.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/sw.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/sw.pak new file mode 100644 index 00000000..8e1440bc Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/sw.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/ta.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/ta.pak new file mode 100644 index 00000000..cfb92d30 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/ta.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/te.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/te.pak new file mode 100644 index 00000000..262a8d1c Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/te.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/th.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/th.pak new file mode 100644 index 00000000..8b57b1e7 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/th.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/tr.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/tr.pak new file mode 100644 index 00000000..60314285 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/tr.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/uk.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/uk.pak new file mode 100644 index 00000000..1ecc8578 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/uk.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/vi.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/vi.pak new file mode 100644 index 00000000..5e2017d4 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/vi.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/zh-CN.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/zh-CN.pak new file mode 100644 index 00000000..148a7a7d Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/zh-CN.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/zh-TW.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/zh-TW.pak new file mode 100644 index 00000000..ea330154 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/Locales/zh-TW.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/MEIPreload/manifest.json b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/MEIPreload/manifest.json new file mode 100644 index 00000000..4c62adf7 --- /dev/null +++ b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/MEIPreload/manifest.json @@ -0,0 +1,8 @@ +{ + "description": "Contains preloaded data for Media Engagement", + "icons": {}, + "version": "1.0.5.0", + "manifest_version": 2, + "update_url": "https://clients2.google.com/service/update2/crx", + "name": "MEI Preload" +} \ No newline at end of file diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/MEIPreload/preloaded_data.pb b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/MEIPreload/preloaded_data.pb new file mode 100644 index 00000000..c4af8f20 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/MEIPreload/preloaded_data.pb differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/VisualElements/Logo.png b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/VisualElements/Logo.png new file mode 100644 index 00000000..152e6616 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/VisualElements/Logo.png differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/VisualElements/LogoBeta.png b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/VisualElements/LogoBeta.png new file mode 100644 index 00000000..bac233f7 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/VisualElements/LogoBeta.png differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/VisualElements/LogoCanary.png b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/VisualElements/LogoCanary.png new file mode 100644 index 00000000..2c5cc431 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/VisualElements/LogoCanary.png differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/VisualElements/LogoDev.png b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/VisualElements/LogoDev.png new file mode 100644 index 00000000..63914df5 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/VisualElements/LogoDev.png differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/VisualElements/SmallLogo.png b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/VisualElements/SmallLogo.png new file mode 100644 index 00000000..6c093e91 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/VisualElements/SmallLogo.png differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/VisualElements/SmallLogoBeta.png b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/VisualElements/SmallLogoBeta.png new file mode 100644 index 00000000..9ef2ed5f Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/VisualElements/SmallLogoBeta.png differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/VisualElements/SmallLogoCanary.png b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/VisualElements/SmallLogoCanary.png new file mode 100644 index 00000000..fb297cab Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/VisualElements/SmallLogoCanary.png differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/VisualElements/SmallLogoDev.png b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/VisualElements/SmallLogoDev.png new file mode 100644 index 00000000..b36ad794 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/VisualElements/SmallLogoDev.png differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/WidevineCdm/LICENSE b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/WidevineCdm/LICENSE new file mode 100644 index 00000000..e711887a --- /dev/null +++ b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/WidevineCdm/LICENSE @@ -0,0 +1,8 @@ +Google LLC and its affiliates ("Google") own all legal right, title and +interest in and to the content decryption module software ("Software") and +related documentation, including any intellectual property rights in the +Software. You may not use, modify, sell, or otherwise distribute the Software +without a separate license agreement with Google. The Software is not open +source software. + +If you are interested in licensing the Software, please contact www.widevine.com diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/WidevineCdm/_platform_specific/win_x86/widevinecdm.dll b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/WidevineCdm/_platform_specific/win_x86/widevinecdm.dll new file mode 100644 index 00000000..52190966 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/WidevineCdm/_platform_specific/win_x86/widevinecdm.dll differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/WidevineCdm/_platform_specific/win_x86/widevinecdm.dll.sig b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/WidevineCdm/_platform_specific/win_x86/widevinecdm.dll.sig new file mode 100644 index 00000000..f7fe72b5 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/WidevineCdm/_platform_specific/win_x86/widevinecdm.dll.sig differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/WidevineCdm/manifest.json b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/WidevineCdm/manifest.json new file mode 100644 index 00000000..8db7d6c8 --- /dev/null +++ b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/WidevineCdm/manifest.json @@ -0,0 +1,35 @@ +{ + "manifest_version": 2, + "update_url": "https://clients2.google.com/service/update2/crx", + "name": "WidevineCdm", + "description": "Widevine Content Decryption Module", + "version": "4.10.1679.0", + "minimum_chrome_version": "68.0.3430.0", + "x-cdm-module-versions": "4", + "x-cdm-interface-versions": "10", + "x-cdm-host-versions": "10", + "x-cdm-codecs": "vp8,vp09,avc1,av01", + "x-cdm-persistent-license-support": true, + "x-cdm-supported-encryption-schemes": ["cenc","cbcs"], + "icons": { + "16": "imgs/icon-128x128.png", + "128": "imgs/icon-128x128.png" + }, + "platforms": [ + { + "os": "win", + "arch": "x86", + "sub_package_path": "_platform_specific/win_x86/" + }, + { + "os": "win", + "arch": "x64", + "sub_package_path": "_platform_specific/win_x64/" + }, + { + "os": "mac", + "arch": "x64", + "sub_package_path": "_platform_specific/mac_x64/" + } + ] +} diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/chrome.dll b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/chrome.dll new file mode 100644 index 00000000..41b9d7ec Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/chrome.dll differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/chrome.dll.sig b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/chrome.dll.sig new file mode 100644 index 00000000..e5a982bf Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/chrome.dll.sig differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/chrome.exe.sig b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/chrome.exe.sig new file mode 100644 index 00000000..e35b5428 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/chrome.exe.sig differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/chrome_100_percent.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/chrome_100_percent.pak new file mode 100644 index 00000000..bf4663fb Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/chrome_100_percent.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/chrome_200_percent.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/chrome_200_percent.pak new file mode 100644 index 00000000..860af2d7 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/chrome_200_percent.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/chrome_elf.dll b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/chrome_elf.dll new file mode 100644 index 00000000..2f659c15 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/chrome_elf.dll differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/chrome_pwa_launcher.exe b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/chrome_pwa_launcher.exe new file mode 100644 index 00000000..2f08c7e7 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/chrome_pwa_launcher.exe differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/d3dcompiler_47.dll b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/d3dcompiler_47.dll new file mode 100644 index 00000000..dbfe9cee Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/d3dcompiler_47.dll differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/default_apps/docs.crx b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/default_apps/docs.crx new file mode 100644 index 00000000..6156e316 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/default_apps/docs.crx differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/default_apps/drive.crx b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/default_apps/drive.crx new file mode 100644 index 00000000..36e8395c Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/default_apps/drive.crx differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/default_apps/external_extensions.json b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/default_apps/external_extensions.json new file mode 100644 index 00000000..59a0f9ad --- /dev/null +++ b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/default_apps/external_extensions.json @@ -0,0 +1,38 @@ +// Dictionary of default apps to install into new profiles. Each entry maps +// the extension's id to its crx's path (relative to this file) and the version +// of the extension contained in the crx. +// +// When an extension is added or removed here, the two lists 'default_apps_list' +// and 'default_apps_list_linux_dest' in build/common.gypi must also be updated. +{ + "blpcfgokakmgnkcojhhkbfbldkacnbeo" : { + "external_crx": "youtube.crx", + "external_version": "4.2.5", + "is_bookmark_app": true + }, + "pjkljhegncpnkpknbcohdijeoejaedia" : { + "external_crx": "gmail.crx", + "external_version": "7" + }, + "apdfllckaahabafndbhieahigkjlhalf" : { + "external_crx": "drive.crx", + "external_version": "6.2" + }, + "aohghmighlieiainnegkcijnfilokake" : { + "external_crx": "docs.crx", + "external_version": "0.0.0.6" + }, + // Google Sheets + "aapocclcgogkmnckokdopfmhonfmgoek" : { + "external_update_url": "https://clients2.google.com/service/update2/crx" + }, + // Google Slides + "felcaaldnbdncclmgdcncolpebgiejap" : { + "external_update_url": "https://clients2.google.com/service/update2/crx" + }, + // Drive extension + "ghbmnnjooekpmoecnnnilnnbdlolhkhi" : { + "external_update_url": "https://clients2.google.com/service/update2/crx" + } +} + diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/default_apps/gmail.crx b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/default_apps/gmail.crx new file mode 100644 index 00000000..c9c0cc35 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/default_apps/gmail.crx differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/default_apps/youtube.crx b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/default_apps/youtube.crx new file mode 100644 index 00000000..33ba72aa Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/default_apps/youtube.crx differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/elevation_service.exe b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/elevation_service.exe new file mode 100644 index 00000000..108b603e Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/elevation_service.exe differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/eventlog_provider.dll b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/eventlog_provider.dll new file mode 100644 index 00000000..ec2bebe5 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/eventlog_provider.dll differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/icudtl.dat b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/icudtl.dat new file mode 100644 index 00000000..3464a081 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/icudtl.dat differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/libEGL.dll b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/libEGL.dll new file mode 100644 index 00000000..b6a50bba Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/libEGL.dll differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/libGLESv2.dll b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/libGLESv2.dll new file mode 100644 index 00000000..8180f36b Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/libGLESv2.dll differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/nacl64.exe b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/nacl64.exe new file mode 100644 index 00000000..bfaa81a3 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/nacl64.exe differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/nacl_irt_x86_32.nexe b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/nacl_irt_x86_32.nexe new file mode 100644 index 00000000..3f3c4459 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/nacl_irt_x86_32.nexe differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/nacl_irt_x86_64.nexe b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/nacl_irt_x86_64.nexe new file mode 100644 index 00000000..3eaeb091 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/nacl_irt_x86_64.nexe differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/notification_helper.exe b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/notification_helper.exe new file mode 100644 index 00000000..64ccf4c4 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/notification_helper.exe differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/resources.pak b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/resources.pak new file mode 100644 index 00000000..0f3e066f Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/resources.pak differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/swiftshader/libEGL.dll b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/swiftshader/libEGL.dll new file mode 100644 index 00000000..9f3def36 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/swiftshader/libEGL.dll differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/swiftshader/libGLESv2.dll b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/swiftshader/libGLESv2.dll new file mode 100644 index 00000000..d5e04797 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/swiftshader/libGLESv2.dll differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/v8_context_snapshot.bin b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/v8_context_snapshot.bin new file mode 100644 index 00000000..7af22cdb Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/84.0.4147.89/v8_context_snapshot.bin differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/First Run b/Resources/GoogleChromePortable/App/Chrome-bin/First Run new file mode 100644 index 00000000..e69de29b diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/chrome.exe b/Resources/GoogleChromePortable/App/Chrome-bin/chrome.exe new file mode 100644 index 00000000..d2a421f5 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/chrome.exe differ diff --git a/Resources/GoogleChromePortable/App/Chrome-bin/chrome_proxy.exe b/Resources/GoogleChromePortable/App/Chrome-bin/chrome_proxy.exe new file mode 100644 index 00000000..6abcd130 Binary files /dev/null and b/Resources/GoogleChromePortable/App/Chrome-bin/chrome_proxy.exe differ diff --git a/Resources/GoogleChromePortable/App/DefaultData/profile/Default/Bookmarks b/Resources/GoogleChromePortable/App/DefaultData/profile/Default/Bookmarks new file mode 100644 index 00000000..c0562836 --- /dev/null +++ b/Resources/GoogleChromePortable/App/DefaultData/profile/Default/Bookmarks @@ -0,0 +1,36 @@ +{ + "checksum": "2cf42d4f179a8b7766a445c1270dd4c0", + "roots": { + "bookmark_bar": { + "children": [ { + "date_added": "13028788410338143", + "id": "5", + "name": "PortableApps.com", + "type": "url", + "url": "http://portableapps.com/" + } ], + "date_added": "0", + "date_modified": "13028788410338143", + "id": "1", + "name": "Bookmarks bar", + "type": "folder" + }, + "other": { + "children": [ ], + "date_added": "0", + "date_modified": "0", + "id": "2", + "name": "Other bookmarks", + "type": "folder" + }, + "synced": { + "children": [ ], + "date_added": "13028788397005139", + "date_modified": "0", + "id": "4", + "name": "Mobile bookmarks", + "type": "folder" + } + }, + "version": 1 +} diff --git a/Resources/GoogleChromePortable/App/DefaultData/profile/Default/Favicons b/Resources/GoogleChromePortable/App/DefaultData/profile/Default/Favicons new file mode 100644 index 00000000..92aedd66 Binary files /dev/null and b/Resources/GoogleChromePortable/App/DefaultData/profile/Default/Favicons differ diff --git a/Resources/GoogleChromePortable/App/DefaultData/profile/Default/History b/Resources/GoogleChromePortable/App/DefaultData/profile/Default/History new file mode 100644 index 00000000..bda971e5 Binary files /dev/null and b/Resources/GoogleChromePortable/App/DefaultData/profile/Default/History differ diff --git a/Resources/GoogleChromePortable/App/DefaultData/profile/Default/Preferences b/Resources/GoogleChromePortable/App/DefaultData/profile/Default/Preferences new file mode 100644 index 00000000..ff7d9047 --- /dev/null +++ b/Resources/GoogleChromePortable/App/DefaultData/profile/Default/Preferences @@ -0,0 +1,163 @@ +{ + "browser": { + "check_default_browser": false, + "clear_lso_data_enabled": true, + "default_browser_infobar_last_declined":"15398273680000000", + "last_known_google_url": "https://www.google.com/", + "last_prompted_google_url": "https://www.google.com/", + "ntp": { + "theme_promo_remaining": -2 + }, + "pepper_flash_settings_enabled": true, + "should_reset_check_default_browser":false, + "window_placement": { + "bottom": 738, + "left": 10, + "maximized": false, + "right": 955, + "top": 0, + "work_area_bottom": 738, + "work_area_left": 0, + "work_area_right": 1024, + "work_area_top": 0 + } + }, + "countryid_at_install": 21843, + "default_apps_install_state": 2, + "default_search_provider": { + "id": "2", + "prepopulate_id": "1", + "suggest_url": "{google:baseSuggestURL}search?client=chrome&hl={language}&q={searchTerms}" + }, + "dns_prefetching": { + "host_referral_list": [ 2 ], + "startup_list": [ 1, "https://clients2.google.com/", "https://clients2.googleusercontent.com/", "https://www.google.com/" ] + }, + "download": { + "directory_upgrade": true, + "extensions_to_open": "" + }, + "enhanced_bookmarks_enabled": 0, + "extensions": { + "alerts": { + "initialized": true + }, + "autoupdate": { + "next_check": "15398273680000000" + }, + "chrome_url_overrides": { + "bookmarks": [ "chrome-extension://eemcgdkfndhakfknompkggombfjjjeno/main.html" ] + }, + "last_chrome_version": "37.0.2062.120" + }, + "http_throttling": { + "enabled": false + }, + "intl": { + "accept_languages": "en-US,en" + }, + "invalidator": { + "client_id": "WPR/kEKBYQJvDFQytu38qg==" + }, + "media": { + "device_id_salt": "hV42eI2dh8XX3Ch/EBuMCg==" + }, + "net": { + "http_server_properties": { + "servers": { + "clients2.google.com:443": { + "alternate_protocol": { + "port": 443, + "protocol_str": "quic" + }, + "settings": { + "4": 100 + }, + "supports_spdy": true + }, + "clients2.googleusercontent.com:443": { + "alternate_protocol": { + "port": 443, + "protocol_str": "quic" + }, + "settings": { + "4": 100 + }, + "supports_spdy": true + }, + "www.google.com:443": { + "alternate_protocol": { + "port": 443, + "protocol_str": "quic" + }, + "settings": { + "4": 100 + }, + "supports_spdy": true + } + }, + "version": 3 + } + }, + "ntp": { + "alt_logo_end": 0.0, + "alt_logo_resource_server": "https://www.google.com/support/chrome/bin/topic/30248/inproduct", + "alt_logo_start": 0.0, + "pinned_urls": { + "af4775052a19379b5cfb577f90adaf0d": { + "direction": "ltr", + "index": 0, + "title": "PortableApps.com - Portable software for USB drives", + "url": "http://portableapps.com/" + } + }, + "pref_version": 3, + "promo_build": 2, + "promo_closed": false, + "promo_end": 1316246340.0, + "promo_group": 11, + "promo_group_max": 1, + "promo_group_timeslice": 0, + "promo_line": "Like Chrome? You might like the Chromebook, too. \u003Ca href=\"http://www.google.com/chromebook/buynow.html#utm_campaign=en&utm_source=en-ntp-na-us-bkws&utm_medium=ntp\">Learn more.\u003C/a>", + "promo_start": 1315641480.0, + "shown_sections": 1, + "web_resource_cache_update": "1289679884.902772", + "webstore_last_promo_id": "1335115" + }, + "plugins": { + "enabled_internal_pdf3": true, + "enabled_nacl": true, + "migrated_to_pepper_flash": true, + "plugins_list": [ ], + "removed_old_component_pepper_flash_settings": true + }, + "profile": { + "avatar_index": 0, + "content_settings": { + "clear_on_exit_migrated": true, + "pattern_pairs": { + + }, + "pref_version": 1 + }, + "exit_type": "Normal", + "exited_cleanly": true, + "managed_user_id": "", + "name": "First user", + "per_host_zoom_levels": { + + } + }, + "session": { + "restore_on_startup_migrated": true, + "startup_urls_migration_time": "15398273680000000" + }, + "tabs": { + "use_compact_navigation_bar": false, + "use_vertical_tabs": false + }, + "translate_blocked_languages": [ "en" ], + "translate_whitelists": { + + } +} diff --git a/Resources/GoogleChromePortable/App/DefaultData/profile/Default/Top Sites b/Resources/GoogleChromePortable/App/DefaultData/profile/Default/Top Sites new file mode 100644 index 00000000..7e3fa6be Binary files /dev/null and b/Resources/GoogleChromePortable/App/DefaultData/profile/Default/Top Sites differ diff --git a/Resources/GoogleChromePortable/App/DefaultData/profile/Default/Web Data b/Resources/GoogleChromePortable/App/DefaultData/profile/Default/Web Data new file mode 100644 index 00000000..17496c0e Binary files /dev/null and b/Resources/GoogleChromePortable/App/DefaultData/profile/Default/Web Data differ diff --git a/Resources/GoogleChromePortable/App/readme.txt b/Resources/GoogleChromePortable/App/readme.txt new file mode 100644 index 00000000..e5f7636c --- /dev/null +++ b/Resources/GoogleChromePortable/App/readme.txt @@ -0,0 +1 @@ +The files in this directory are necessary for Google Chrome Portable to function. There is normally no need to directly access or alter any of the files within these directories. \ No newline at end of file diff --git a/Resources/GoogleChromePortable/Data/PortableApps.comInstaller/license.ini b/Resources/GoogleChromePortable/Data/PortableApps.comInstaller/license.ini new file mode 100644 index 00000000..83323b1e --- /dev/null +++ b/Resources/GoogleChromePortable/Data/PortableApps.comInstaller/license.ini @@ -0,0 +1,2 @@ +[PortableApps.comInstaller] +EULAVersion=2 diff --git a/Resources/GoogleChromePortable/Data/profile/BrowserMetrics/BrowserMetrics-5F188B94-23E4.pma b/Resources/GoogleChromePortable/Data/profile/BrowserMetrics/BrowserMetrics-5F188B94-23E4.pma new file mode 100644 index 00000000..c2acd19f Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/BrowserMetrics/BrowserMetrics-5F188B94-23E4.pma differ diff --git a/Resources/GoogleChromePortable/Data/profile/Crashpad/metadata b/Resources/GoogleChromePortable/Data/profile/Crashpad/metadata new file mode 100644 index 00000000..e69de29b diff --git a/Resources/GoogleChromePortable/Data/profile/Crashpad/settings.dat b/Resources/GoogleChromePortable/Data/profile/Crashpad/settings.dat new file mode 100644 index 00000000..81798c55 Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Crashpad/settings.dat differ diff --git a/Resources/GoogleChromePortable/Data/profile/CrashpadMetrics-active.pma b/Resources/GoogleChromePortable/Data/profile/CrashpadMetrics-active.pma new file mode 100644 index 00000000..42975918 Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/CrashpadMetrics-active.pma differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/AutofillStrikeDatabase/CURRENT b/Resources/GoogleChromePortable/Data/profile/Default/AutofillStrikeDatabase/CURRENT new file mode 100644 index 00000000..7ed683d1 --- /dev/null +++ b/Resources/GoogleChromePortable/Data/profile/Default/AutofillStrikeDatabase/CURRENT @@ -0,0 +1 @@ +MANIFEST-000001 diff --git a/Resources/GoogleChromePortable/Data/profile/Default/AutofillStrikeDatabase/LOCK b/Resources/GoogleChromePortable/Data/profile/Default/AutofillStrikeDatabase/LOCK new file mode 100644 index 00000000..e69de29b diff --git a/Resources/GoogleChromePortable/Data/profile/Default/AutofillStrikeDatabase/LOG b/Resources/GoogleChromePortable/Data/profile/Default/AutofillStrikeDatabase/LOG new file mode 100644 index 00000000..62f47c66 --- /dev/null +++ b/Resources/GoogleChromePortable/Data/profile/Default/AutofillStrikeDatabase/LOG @@ -0,0 +1 @@ +2020/07/22-21:55:21.047 10c4 Reusing MANIFEST C:\Users\ND\Downloads\GoogleChromePortable\Data\profile\Default\AutofillStrikeDatabase/MANIFEST-000001 diff --git a/Resources/GoogleChromePortable/Data/profile/Default/AutofillStrikeDatabase/MANIFEST-000001 b/Resources/GoogleChromePortable/Data/profile/Default/AutofillStrikeDatabase/MANIFEST-000001 new file mode 100644 index 00000000..18e5cab7 Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/AutofillStrikeDatabase/MANIFEST-000001 differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Bookmarks b/Resources/GoogleChromePortable/Data/profile/Default/Bookmarks new file mode 100644 index 00000000..e890e0d7 --- /dev/null +++ b/Resources/GoogleChromePortable/Data/profile/Default/Bookmarks @@ -0,0 +1,40 @@ +{ + "checksum": "afd1545039f81748ee6590053366431f", + "roots": { + "bookmark_bar": { + "children": [ { + "date_added": "13028788410338143", + "guid": "8bd459c7-c1f3-4ba7-8295-5117925f5137", + "id": "5", + "name": "PortableApps.com", + "type": "url", + "url": "http://portableapps.com/" + } ], + "date_added": "0", + "date_modified": "13028788410338143", + "guid": "00000000-0000-4000-a000-000000000002", + "id": "1", + "name": "Панель закладок", + "type": "folder" + }, + "other": { + "children": [ ], + "date_added": "0", + "date_modified": "0", + "guid": "00000000-0000-4000-a000-000000000003", + "id": "2", + "name": "Другие закладки", + "type": "folder" + }, + "synced": { + "children": [ ], + "date_added": "13028788397005139", + "date_modified": "0", + "guid": "00000000-0000-4000-a000-000000000004", + "id": "4", + "name": "Моб. закладки", + "type": "folder" + } + }, + "version": 1 +} diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Bookmarks.bak b/Resources/GoogleChromePortable/Data/profile/Default/Bookmarks.bak new file mode 100644 index 00000000..c0562836 --- /dev/null +++ b/Resources/GoogleChromePortable/Data/profile/Default/Bookmarks.bak @@ -0,0 +1,36 @@ +{ + "checksum": "2cf42d4f179a8b7766a445c1270dd4c0", + "roots": { + "bookmark_bar": { + "children": [ { + "date_added": "13028788410338143", + "id": "5", + "name": "PortableApps.com", + "type": "url", + "url": "http://portableapps.com/" + } ], + "date_added": "0", + "date_modified": "13028788410338143", + "id": "1", + "name": "Bookmarks bar", + "type": "folder" + }, + "other": { + "children": [ ], + "date_added": "0", + "date_modified": "0", + "id": "2", + "name": "Other bookmarks", + "type": "folder" + }, + "synced": { + "children": [ ], + "date_added": "13028788397005139", + "date_modified": "0", + "id": "4", + "name": "Mobile bookmarks", + "type": "folder" + } + }, + "version": 1 +} diff --git a/Resources/GoogleChromePortable/Data/profile/Default/BudgetDatabase/CURRENT b/Resources/GoogleChromePortable/Data/profile/Default/BudgetDatabase/CURRENT new file mode 100644 index 00000000..7ed683d1 --- /dev/null +++ b/Resources/GoogleChromePortable/Data/profile/Default/BudgetDatabase/CURRENT @@ -0,0 +1 @@ +MANIFEST-000001 diff --git a/Resources/GoogleChromePortable/Data/profile/Default/BudgetDatabase/LOCK b/Resources/GoogleChromePortable/Data/profile/Default/BudgetDatabase/LOCK new file mode 100644 index 00000000..e69de29b diff --git a/Resources/GoogleChromePortable/Data/profile/Default/BudgetDatabase/LOG b/Resources/GoogleChromePortable/Data/profile/Default/BudgetDatabase/LOG new file mode 100644 index 00000000..4a94c6af --- /dev/null +++ b/Resources/GoogleChromePortable/Data/profile/Default/BudgetDatabase/LOG @@ -0,0 +1 @@ +2020/07/22-21:55:20.991 10c4 Reusing MANIFEST C:\Users\ND\Downloads\GoogleChromePortable\Data\profile\Default\BudgetDatabase/MANIFEST-000001 diff --git a/Resources/GoogleChromePortable/Data/profile/Default/BudgetDatabase/MANIFEST-000001 b/Resources/GoogleChromePortable/Data/profile/Default/BudgetDatabase/MANIFEST-000001 new file mode 100644 index 00000000..18e5cab7 Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/BudgetDatabase/MANIFEST-000001 differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Cookies b/Resources/GoogleChromePortable/Data/profile/Default/Cookies new file mode 100644 index 00000000..653a9a4f Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/Cookies differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Cookies-journal b/Resources/GoogleChromePortable/Data/profile/Default/Cookies-journal new file mode 100644 index 00000000..e69de29b diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Current Session b/Resources/GoogleChromePortable/Data/profile/Default/Current Session new file mode 100644 index 00000000..52d3cf29 Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/Current Session differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Current Tabs b/Resources/GoogleChromePortable/Data/profile/Default/Current Tabs new file mode 100644 index 00000000..79f17609 Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/Current Tabs differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Extension State/CURRENT b/Resources/GoogleChromePortable/Data/profile/Default/Extension State/CURRENT new file mode 100644 index 00000000..7ed683d1 --- /dev/null +++ b/Resources/GoogleChromePortable/Data/profile/Default/Extension State/CURRENT @@ -0,0 +1 @@ +MANIFEST-000001 diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Extension State/LOCK b/Resources/GoogleChromePortable/Data/profile/Default/Extension State/LOCK new file mode 100644 index 00000000..e69de29b diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Extension State/LOG b/Resources/GoogleChromePortable/Data/profile/Default/Extension State/LOG new file mode 100644 index 00000000..e67bf366 --- /dev/null +++ b/Resources/GoogleChromePortable/Data/profile/Default/Extension State/LOG @@ -0,0 +1 @@ +2020/07/22-21:55:17.658 1064 Reusing MANIFEST C:\Users\ND\Downloads\GoogleChromePortable\Data\profile\Default\Extension State/MANIFEST-000001 diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Extension State/MANIFEST-000001 b/Resources/GoogleChromePortable/Data/profile/Default/Extension State/MANIFEST-000001 new file mode 100644 index 00000000..18e5cab7 Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/Extension State/MANIFEST-000001 differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Favicons b/Resources/GoogleChromePortable/Data/profile/Default/Favicons new file mode 100644 index 00000000..ff43da16 Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/Favicons differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Favicons-journal b/Resources/GoogleChromePortable/Data/profile/Default/Favicons-journal new file mode 100644 index 00000000..e69de29b diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Feature Engagement Tracker/AvailabilityDB/CURRENT b/Resources/GoogleChromePortable/Data/profile/Default/Feature Engagement Tracker/AvailabilityDB/CURRENT new file mode 100644 index 00000000..7ed683d1 --- /dev/null +++ b/Resources/GoogleChromePortable/Data/profile/Default/Feature Engagement Tracker/AvailabilityDB/CURRENT @@ -0,0 +1 @@ +MANIFEST-000001 diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Feature Engagement Tracker/AvailabilityDB/LOCK b/Resources/GoogleChromePortable/Data/profile/Default/Feature Engagement Tracker/AvailabilityDB/LOCK new file mode 100644 index 00000000..e69de29b diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Feature Engagement Tracker/AvailabilityDB/LOG b/Resources/GoogleChromePortable/Data/profile/Default/Feature Engagement Tracker/AvailabilityDB/LOG new file mode 100644 index 00000000..b6d15522 --- /dev/null +++ b/Resources/GoogleChromePortable/Data/profile/Default/Feature Engagement Tracker/AvailabilityDB/LOG @@ -0,0 +1 @@ +2020/07/22-21:55:20.946 10c4 Reusing MANIFEST C:\Users\ND\Downloads\GoogleChromePortable\Data\profile\Default\Feature Engagement Tracker\AvailabilityDB/MANIFEST-000001 diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Feature Engagement Tracker/AvailabilityDB/MANIFEST-000001 b/Resources/GoogleChromePortable/Data/profile/Default/Feature Engagement Tracker/AvailabilityDB/MANIFEST-000001 new file mode 100644 index 00000000..18e5cab7 Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/Feature Engagement Tracker/AvailabilityDB/MANIFEST-000001 differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Feature Engagement Tracker/EventDB/CURRENT b/Resources/GoogleChromePortable/Data/profile/Default/Feature Engagement Tracker/EventDB/CURRENT new file mode 100644 index 00000000..7ed683d1 --- /dev/null +++ b/Resources/GoogleChromePortable/Data/profile/Default/Feature Engagement Tracker/EventDB/CURRENT @@ -0,0 +1 @@ +MANIFEST-000001 diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Feature Engagement Tracker/EventDB/LOCK b/Resources/GoogleChromePortable/Data/profile/Default/Feature Engagement Tracker/EventDB/LOCK new file mode 100644 index 00000000..e69de29b diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Feature Engagement Tracker/EventDB/LOG b/Resources/GoogleChromePortable/Data/profile/Default/Feature Engagement Tracker/EventDB/LOG new file mode 100644 index 00000000..82bfa6af --- /dev/null +++ b/Resources/GoogleChromePortable/Data/profile/Default/Feature Engagement Tracker/EventDB/LOG @@ -0,0 +1 @@ +2020/07/22-21:55:20.884 10c4 Reusing MANIFEST C:\Users\ND\Downloads\GoogleChromePortable\Data\profile\Default\Feature Engagement Tracker\EventDB/MANIFEST-000001 diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Feature Engagement Tracker/EventDB/MANIFEST-000001 b/Resources/GoogleChromePortable/Data/profile/Default/Feature Engagement Tracker/EventDB/MANIFEST-000001 new file mode 100644 index 00000000..18e5cab7 Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/Feature Engagement Tracker/EventDB/MANIFEST-000001 differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/GCM Store/Encryption/CURRENT b/Resources/GoogleChromePortable/Data/profile/Default/GCM Store/Encryption/CURRENT new file mode 100644 index 00000000..7ed683d1 --- /dev/null +++ b/Resources/GoogleChromePortable/Data/profile/Default/GCM Store/Encryption/CURRENT @@ -0,0 +1 @@ +MANIFEST-000001 diff --git a/Resources/GoogleChromePortable/Data/profile/Default/GCM Store/Encryption/LOCK b/Resources/GoogleChromePortable/Data/profile/Default/GCM Store/Encryption/LOCK new file mode 100644 index 00000000..e69de29b diff --git a/Resources/GoogleChromePortable/Data/profile/Default/GCM Store/Encryption/LOG b/Resources/GoogleChromePortable/Data/profile/Default/GCM Store/Encryption/LOG new file mode 100644 index 00000000..6017d707 --- /dev/null +++ b/Resources/GoogleChromePortable/Data/profile/Default/GCM Store/Encryption/LOG @@ -0,0 +1 @@ +2020/07/22-21:55:20.664 1e08 Reusing MANIFEST C:\Users\ND\Downloads\GoogleChromePortable\Data\profile\Default\GCM Store\Encryption/MANIFEST-000001 diff --git a/Resources/GoogleChromePortable/Data/profile/Default/GCM Store/Encryption/MANIFEST-000001 b/Resources/GoogleChromePortable/Data/profile/Default/GCM Store/Encryption/MANIFEST-000001 new file mode 100644 index 00000000..18e5cab7 Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/GCM Store/Encryption/MANIFEST-000001 differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/GPUCache/data_0 b/Resources/GoogleChromePortable/Data/profile/Default/GPUCache/data_0 new file mode 100644 index 00000000..d76fb77e Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/GPUCache/data_0 differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/GPUCache/data_1 b/Resources/GoogleChromePortable/Data/profile/Default/GPUCache/data_1 new file mode 100644 index 00000000..dcaafa97 Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/GPUCache/data_1 differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/GPUCache/data_2 b/Resources/GoogleChromePortable/Data/profile/Default/GPUCache/data_2 new file mode 100644 index 00000000..c7e2eb9a Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/GPUCache/data_2 differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/GPUCache/data_3 b/Resources/GoogleChromePortable/Data/profile/Default/GPUCache/data_3 new file mode 100644 index 00000000..5eec9735 Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/GPUCache/data_3 differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/GPUCache/index b/Resources/GoogleChromePortable/Data/profile/Default/GPUCache/index new file mode 100644 index 00000000..aae77c16 Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/GPUCache/index differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/History b/Resources/GoogleChromePortable/Data/profile/Default/History new file mode 100644 index 00000000..436af19b Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/History differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/History Provider Cache b/Resources/GoogleChromePortable/Data/profile/Default/History Provider Cache new file mode 100644 index 00000000..68a83b16 Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/History Provider Cache differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/History-journal b/Resources/GoogleChromePortable/Data/profile/Default/History-journal new file mode 100644 index 00000000..e69de29b diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Local Storage/leveldb/CURRENT b/Resources/GoogleChromePortable/Data/profile/Default/Local Storage/leveldb/CURRENT new file mode 100644 index 00000000..7ed683d1 --- /dev/null +++ b/Resources/GoogleChromePortable/Data/profile/Default/Local Storage/leveldb/CURRENT @@ -0,0 +1 @@ +MANIFEST-000001 diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Local Storage/leveldb/LOCK b/Resources/GoogleChromePortable/Data/profile/Default/Local Storage/leveldb/LOCK new file mode 100644 index 00000000..e69de29b diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Local Storage/leveldb/LOG b/Resources/GoogleChromePortable/Data/profile/Default/Local Storage/leveldb/LOG new file mode 100644 index 00000000..4805b5df --- /dev/null +++ b/Resources/GoogleChromePortable/Data/profile/Default/Local Storage/leveldb/LOG @@ -0,0 +1 @@ +2020/07/22-21:55:16.287 1738 Reusing MANIFEST C:\Users\ND\Downloads\GoogleChromePortable\Data\profile\Default\Local Storage\leveldb/MANIFEST-000001 diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Local Storage/leveldb/MANIFEST-000001 b/Resources/GoogleChromePortable/Data/profile/Default/Local Storage/leveldb/MANIFEST-000001 new file mode 100644 index 00000000..18e5cab7 Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/Local Storage/leveldb/MANIFEST-000001 differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Login Data b/Resources/GoogleChromePortable/Data/profile/Default/Login Data new file mode 100644 index 00000000..1fa0d4d5 Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/Login Data differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Login Data-journal b/Resources/GoogleChromePortable/Data/profile/Default/Login Data-journal new file mode 100644 index 00000000..e69de29b diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Network Action Predictor b/Resources/GoogleChromePortable/Data/profile/Default/Network Action Predictor new file mode 100644 index 00000000..bade2286 Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/Network Action Predictor differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Network Action Predictor-journal b/Resources/GoogleChromePortable/Data/profile/Default/Network Action Predictor-journal new file mode 100644 index 00000000..e69de29b diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Network Persistent State b/Resources/GoogleChromePortable/Data/profile/Default/Network Persistent State new file mode 100644 index 00000000..2590bec5 --- /dev/null +++ b/Resources/GoogleChromePortable/Data/profile/Default/Network Persistent State @@ -0,0 +1 @@ +{"net":{"http_server_properties":{"servers":[],"version":5},"network_qualities":{"CAESABiAgICA+P////8B":"4G"}}} \ No newline at end of file diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Platform Notifications/CURRENT b/Resources/GoogleChromePortable/Data/profile/Default/Platform Notifications/CURRENT new file mode 100644 index 00000000..7ed683d1 --- /dev/null +++ b/Resources/GoogleChromePortable/Data/profile/Default/Platform Notifications/CURRENT @@ -0,0 +1 @@ +MANIFEST-000001 diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Platform Notifications/LOCK b/Resources/GoogleChromePortable/Data/profile/Default/Platform Notifications/LOCK new file mode 100644 index 00000000..e69de29b diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Platform Notifications/LOG b/Resources/GoogleChromePortable/Data/profile/Default/Platform Notifications/LOG new file mode 100644 index 00000000..3d4c07d5 --- /dev/null +++ b/Resources/GoogleChromePortable/Data/profile/Default/Platform Notifications/LOG @@ -0,0 +1 @@ +2020/07/22-21:55:16.476 1ec0 Reusing MANIFEST C:\Users\ND\Downloads\GoogleChromePortable\Data\profile\Default\Platform Notifications/MANIFEST-000001 diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Platform Notifications/MANIFEST-000001 b/Resources/GoogleChromePortable/Data/profile/Default/Platform Notifications/MANIFEST-000001 new file mode 100644 index 00000000..18e5cab7 Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/Platform Notifications/MANIFEST-000001 differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Preferences b/Resources/GoogleChromePortable/Data/profile/Default/Preferences new file mode 100644 index 00000000..0e9a9590 --- /dev/null +++ b/Resources/GoogleChromePortable/Data/profile/Default/Preferences @@ -0,0 +1 @@ +{"account_id_migration_state":2,"account_tracker_service_last_update":"13239917716415911","announcement_notification_service_first_run_time":"13239917716231926","autocomplete":{"retention_policy_last_version":84},"autofill":{"orphan_rows_removed":true},"browser":{"check_default_browser":false,"clear_lso_data_enabled":true,"default_browser_infobar_last_declined":"15398273680000000","has_seen_welcome_page":true,"navi_onboard_group":"","ntp":{"theme_promo_remaining":-2},"pepper_flash_settings_enabled":true,"should_reset_check_default_browser":false,"window_placement":{"bottom":738,"left":10,"maximized":false,"right":955,"top":0,"work_area_bottom":1010,"work_area_left":0,"work_area_right":1680,"work_area_top":0}},"countryid_at_install":21843,"data_reduction":{"daily_original_length":[],"daily_received_length":[],"last_update_date":"0","this_week_number":2637},"default_apps_install_state":2,"default_search_provider":{"id":"2","prepopulate_id":"1","suggest_url":"{google:baseSuggestURL}search?client=chrome&hl={language}&q={searchTerms}"},"dns_prefetching":{"host_referral_list":[2],"startup_list":[1,"https://clients2.google.com/","https://clients2.googleusercontent.com/","https://www.google.com/"]},"domain_diversity":{"last_reporting_timestamp":"13239917719943788"},"download":{"directory_upgrade":true,"extensions_to_open":""},"enhanced_bookmarks_enabled":0,"extensions":{"alerts":{"initialized":true},"autoupdate":{"next_check":"15398273680000000"},"chrome_url_overrides":{"bookmarks":[]},"last_chrome_version":"84.0.4147.89"},"gcm":{"product_category_for_subtypes":"com.chrome.windows"},"google":{"services":{"signin_scoped_device_id":"77f00010-d28d-4bf4-8689-611a1f3dfde3"}},"http_original_content_length":"0","http_received_content_length":"0","http_throttling":{"enabled":false},"intl":{"accept_languages":"en-US,en"},"invalidation":{"per_sender_topics_to_handler":{"1013309121859":{},"8181035976":{}}},"media":{"device_id_salt":"hV42eI2dh8XX3Ch/EBuMCg==","engagement":{"schema_version":4}},"media_router":{"receiver_id_hash_token":"5rb6DEiibBat0/s+o4CM6V9dKZNyKD2n3NArDiq78JbrRTjRs4g0vLfcaIgEtK7wSDdbPLoB19ikpoW9sf+V+Q=="},"net":{"http_server_properties":{"servers":{"clients2.google.com:443":{"alternate_protocol":{"port":443,"protocol_str":"quic"},"settings":{"4":100},"supports_spdy":true},"clients2.googleusercontent.com:443":{"alternate_protocol":{"port":443,"protocol_str":"quic"},"settings":{"4":100},"supports_spdy":true},"www.google.com:443":{"alternate_protocol":{"port":443,"protocol_str":"quic"},"settings":{"4":100},"supports_spdy":true}},"version":3}},"ntp":{"alt_logo_end":0.0,"alt_logo_resource_server":"https://www.google.com/support/chrome/bin/topic/30248/inproduct","alt_logo_start":0.0,"num_personal_suggestions":3,"pinned_urls":{"af4775052a19379b5cfb577f90adaf0d":{"direction":"ltr","index":0,"title":"PortableApps.com - Portable software for USB drives","url":"http://portableapps.com/"}},"pref_version":3,"promo_build":2,"promo_closed":false,"promo_end":1316246340.0,"promo_group":11,"promo_group_max":1,"promo_group_timeslice":0,"promo_line":"Like Chrome? You might like the Chromebook, too. \u003Ca href=\"http://www.google.com/chromebook/buynow.html#utm_campaign=en&utm_source=en-ntp-na-us-bkws&utm_medium=ntp\">Learn more.\u003C/a>","promo_start":1315641480.0,"shown_sections":1,"web_resource_cache_update":"1289679884.902772","webstore_last_promo_id":"1335115"},"plugins":{"enabled_internal_pdf3":true,"enabled_nacl":true,"migrated_to_pepper_flash":true,"plugins_list":[],"removed_old_component_pepper_flash_settings":true},"previews":{"litepage":{"user-needs-notification":false},"offline_helper":{"available_pages":{}}},"profile":{"avatar_bubble_tutorial_shown":2,"avatar_index":0,"content_settings":{"clear_on_exit_migrated":true,"exceptions":{"accessibility_events":{},"app_banner":{},"ar":{},"auto_select_certificate":{},"automatic_downloads":{},"autoplay":{},"background_sync":{},"bluetooth_chooser_data":{},"bluetooth_guard":{},"bluetooth_scanning":{},"camera_pan_tilt_zoom":{},"client_hints":{},"clipboard":{},"cookies":{},"durable_storage":{},"flash_data":{},"geolocation":{},"hid_chooser_data":{},"hid_guard":{},"images":{},"important_site_info":{},"installed_web_app_metadata":{},"intent_picker_auto_display":{},"javascript":{},"legacy_cookie_access":{},"media_engagement":{},"media_stream_camera":{},"media_stream_mic":{},"midi_sysex":{},"mixed_script":{},"native_file_system_read_guard":{},"native_file_system_write_guard":{},"nfc":{},"notifications":{},"password_protection":{},"payment_handler":{},"permission_autoblocking_data":{},"plugins":{},"popups":{},"ppapi_broker":{},"protocol_handler":{},"safe_browsing_url_check_data":{},"sensors":{},"serial_chooser_data":{},"serial_guard":{},"site_engagement":{},"sound":{},"ssl_cert_decisions":{},"storage_access":{},"subresource_filter":{},"subresource_filter_data":{},"usb_chooser_data":{},"usb_guard":{},"vr":{},"window_placement":{}},"pattern_pairs":{},"pref_version":1},"created_by_version":"84.0.4147.89","creation_time":"13239917715227438","exit_type":"Normal","exited_cleanly":true,"managed_user_id":"","name":"First user","per_host_zoom_levels":{}},"session":{"restore_on_startup_migrated":true,"startup_urls_migration_time":"15398273680000000"},"signin":{"DiceMigrationComplete":true,"allowed":true},"spellcheck":{"dictionaries":["ru"],"dictionary":""},"tabs":{"use_compact_navigation_bar":false,"use_vertical_tabs":false},"token_service":{"dice_compatible":true},"translate_blocked_languages":["en"],"translate_site_blacklist_with_time":{},"translate_whitelists":{},"unified_consent":{"migration_state":10},"web_apps":{"system_web_app_last_installed_language":"ru","system_web_app_last_update":"84.0.4147.89"}} \ No newline at end of file diff --git a/Resources/GoogleChromePortable/Data/profile/Default/QuotaManager b/Resources/GoogleChromePortable/Data/profile/Default/QuotaManager new file mode 100644 index 00000000..277a6313 Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/QuotaManager differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/QuotaManager-journal b/Resources/GoogleChromePortable/Data/profile/Default/QuotaManager-journal new file mode 100644 index 00000000..e69de29b diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Reporting and NEL b/Resources/GoogleChromePortable/Data/profile/Default/Reporting and NEL new file mode 100644 index 00000000..4106edea Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/Reporting and NEL differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Reporting and NEL-journal b/Resources/GoogleChromePortable/Data/profile/Default/Reporting and NEL-journal new file mode 100644 index 00000000..e69de29b diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Secure Preferences b/Resources/GoogleChromePortable/Data/profile/Default/Secure Preferences new file mode 100644 index 00000000..fea5d836 --- /dev/null +++ b/Resources/GoogleChromePortable/Data/profile/Default/Secure Preferences @@ -0,0 +1 @@ +{"extensions":{"settings":{"ahfgeienlihckogmohjhadlkjgocpleb":{"active_permissions":{"api":["management","system.display","system.storage","webstorePrivate","system.cpu","system.memory","system.network"],"manifest_permissions":[]},"app_launcher_ordinal":"t","commands":{},"content_settings":[],"creation_flags":1,"events":[],"from_bookmark":false,"from_webstore":false,"incognito_content_settings":[],"incognito_preferences":{},"install_time":"13239917716234996","location":5,"manifest":{"app":{"launch":{"web_url":"https://chrome.google.com/webstore"},"urls":["https://chrome.google.com/webstore"]},"description":"Широкий выбор приложений, игр, расширений и тем для Google Chrome.","icons":{"128":"webstore_icon_128.png","16":"webstore_icon_16.png"},"key":"MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCtl3tO0osjuzRsf6xtD2SKxPlTfuoy7AWoObysitBPvH5fE1NaAA1/2JkPWkVDhdLBWLaIBPYeXbzlHp3y4Vv/4XG+aN5qFE3z+1RU/NqkzVYHtIpVScf3DjTYtKVL66mzVGijSoAIwbFCC3LpGdaoe6Q1rSRDp76wR6jjFzsYwQIDAQAB","name":"Интернет-магазин Chrome","permissions":["webstorePrivate","management","system.cpu","system.display","system.memory","system.network","system.storage"],"version":"0.2"},"needs_sync":true,"never_activated_since_loaded":true,"page_ordinal":"n","path":"C:\\Users\\ND\\Downloads\\GoogleChromePortable\\App\\Chrome-bin\\84.0.4147.89\\resources\\web_store","preferences":{},"regular_only_preferences":{},"state":1,"was_installed_by_default":false,"was_installed_by_oem":false},"gfdkimpbcpahaombhbimeihdjnejgicl":{"active_permissions":{"api":["feedbackPrivate"],"explicit_host":["chrome://resources/*"],"manifest_permissions":[]},"commands":{},"content_settings":[],"creation_flags":1,"events":["feedbackPrivate.onFeedbackRequested"],"from_bookmark":false,"from_webstore":false,"incognito_content_settings":[],"incognito_preferences":{},"install_time":"13239917716238168","location":5,"manifest":{"app":{"background":{"scripts":["js/event_handler.js"]},"content_security_policy":"default-src 'none'; script-src 'self' blob: filesystem: chrome://resources; style-src 'unsafe-inline' blob: chrome: file: filesystem: data: *; img-src * blob: chrome: file: filesystem: data:; media-src 'self' blob: filesystem:"},"description":"User feedback extension","display_in_launcher":false,"display_in_new_tab_page":false,"icons":{"192":"images/icon192.png","48":"images/icon48.png"},"incognito":"split","key":"MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDMZElzFX2J1g1nRQ/8S3rg/1CjFyDltWOxQg+9M8aVgNVxbutEWFQz+oQzIP9BB67mJifULgiv12ToFKsae4NpEUR8sPZjiKDIHumc6pUdixOm8SJ5Rs16SMR6+VYxFUjlVW+5CA3IILptmNBxgpfyqoK0qRpBDIhGk1KDEZ4zqQIDAQAB","manifest_version":2,"name":"Feedback","permissions":["feedbackPrivate","chrome://resources/"],"version":"1.0"},"never_activated_since_loaded":true,"path":"C:\\Users\\ND\\Downloads\\GoogleChromePortable\\App\\Chrome-bin\\84.0.4147.89\\resources\\feedback","preferences":{},"regular_only_preferences":{},"running":true,"state":1,"was_installed_by_default":false,"was_installed_by_oem":false},"kmendfapggjehodndflmmgagdbamhnfd":{"active_permissions":{"api":["cryptotokenPrivate","externally_connectable.all_urls","tabs"],"explicit_host":["http://*/*","https://*/*"],"manifest_permissions":[]},"commands":{},"content_settings":[],"creation_flags":1,"events":["runtime.onConnectExternal"],"from_bookmark":false,"from_webstore":false,"incognito_content_settings":[],"incognito_preferences":{},"install_time":"13239917716240106","location":5,"manifest":{"background":{"persistent":false,"scripts":["util.js","b64.js","cbor.js","sha256.js","timer.js","countdown.js","countdowntimer.js","devicestatuscodes.js","approvedorigins.js","errorcodes.js","webrequest.js","messagetypes.js","factoryregistry.js","requesthelper.js","asn1.js","enroller.js","requestqueue.js","signer.js","origincheck.js","textfetcher.js","appid.js","watchdog.js","logging.js","webrequestsender.js","window-timer.js","cryptotokenorigincheck.js","cryptotokenapprovedorigins.js","inherits.js","individualattest.js","googlecorpindividualattest.js","cryptotokenbackground.js"]},"description":"CryptoToken Component Extension","externally_connectable":{"ids":["fjajfjhkeibgmiggdfehjplbhmfkialk"],"matches":["https://*/*"]},"incognito":"split","key":"MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAq7zRobvA+AVlvNqkHSSVhh1sEWsHSqz4oR/XptkDe/Cz3+gW9ZGumZ20NCHjaac8j1iiesdigp8B1LJsd/2WWv2Dbnto4f8GrQ5MVphKyQ9WJHwejEHN2K4vzrTcwaXqv5BSTXwxlxS/mXCmXskTfryKTLuYrcHEWK8fCHb+0gvr8b/kvsi75A1aMmb6nUnFJvETmCkOCPNX5CHTdy634Ts/x0fLhRuPlahk63rdf7agxQv5viVjQFk+tbgv6aa9kdSd11Js/RZ9yZjrFgHOBWgP4jTBqud4+HUglrzu8qynFipyNRLCZsaxhm+NItTyNgesxLdxZcwOz56KD1Q4IQIDAQAB","manifest_version":2,"name":"CryptoTokenExtension","permissions":["cryptotokenPrivate","externally_connectable.all_urls","tabs","https://*/*","http://*/*"],"version":"0.9.74"},"never_activated_since_loaded":true,"path":"C:\\Users\\ND\\Downloads\\GoogleChromePortable\\App\\Chrome-bin\\84.0.4147.89\\resources\\cryptotoken","preferences":{},"regular_only_preferences":{},"state":1,"was_installed_by_default":false,"was_installed_by_oem":false},"mfehgcgbbipciphmccgaenjidiccnmng":{"active_permissions":{"api":["cloudPrintPrivate"],"manifest_permissions":[]},"commands":{},"content_settings":[],"creation_flags":1,"events":[],"from_bookmark":false,"from_webstore":false,"incognito_content_settings":[],"incognito_preferences":{},"install_time":"13239917716233350","location":5,"manifest":{"app":{"launch":{"web_url":"https://www.google.com/cloudprint"},"urls":["https://www.google.com/cloudprint/enable_chrome_connector"]},"description":"Cloud Print","display_in_launcher":false,"icons":{},"key":"MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDqOhnwk4+HXVfGyaNsAQdU/js1Na56diW08oF1MhZiwzSnJsEaeuMN9od9q9N4ZdK3o1xXOSARrYdE+syV7Dl31nf6qz3A6K+D5NHe6sSB9yvYlIiN37jdWdrfxxE0pRYEVYZNTe3bzq3NkcYJlOdt1UPcpJB+isXpAGUKUvt7EQIDAQAB","name":"Cloud Print","permissions":["cloudPrintPrivate"],"version":"0.1"},"never_activated_since_loaded":true,"path":"C:\\Users\\ND\\Downloads\\GoogleChromePortable\\App\\Chrome-bin\\84.0.4147.89\\resources\\cloud_print","preferences":{},"regular_only_preferences":{},"state":1,"was_installed_by_default":false,"was_installed_by_oem":false},"mhjfbmdgcfjbbpaeojofohoefgiehjai":{"active_permissions":{"api":["contentSettings","fileSystem","fileSystem.write","metricsPrivate","resourcesPrivate"],"explicit_host":["chrome://resources/*"],"manifest_permissions":[]},"commands":{},"content_settings":[],"creation_flags":1,"events":[],"from_bookmark":false,"from_webstore":false,"incognito_content_settings":[],"incognito_preferences":{},"install_time":"13239917716235898","location":5,"manifest":{"content_security_policy":"script-src 'self' 'wasm-eval' blob: filesystem: chrome://resources; object-src * blob: externalfile: file: filesystem: data:; plugin-types application/x-google-chrome-pdf","description":"","incognito":"split","key":"MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDN6hM0rsDYGbzQPQfOygqlRtQgKUXMfnSjhIBL7LnReAVBEd7ZmKtyN2qmSasMl4HZpMhVe2rPWVVwBDl6iyNE/Kok6E6v6V3vCLGsOpQAuuNVye/3QxzIldzG/jQAdWZiyXReRVapOhZtLjGfywCvlWq7Sl/e3sbc0vWybSDI2QIDAQAB","manifest_version":2,"mime_types":["application/pdf"],"mime_types_handler":"index.html","name":"Chrome PDF Viewer","offline_enabled":true,"permissions":["chrome://resources/","contentSettings","metricsPrivate","resourcesPrivate",{"fileSystem":["write"]}],"version":"1"},"never_activated_since_loaded":true,"path":"C:\\Users\\ND\\Downloads\\GoogleChromePortable\\App\\Chrome-bin\\84.0.4147.89\\resources\\pdf","preferences":{},"regular_only_preferences":{},"state":1,"was_installed_by_default":false,"was_installed_by_oem":false},"neajdppkdcdipfabeoofebfddakdcjhd":{"active_permissions":{"api":["systemPrivate","ttsEngine"],"explicit_host":["https://www.google.com/*"],"manifest_permissions":[]},"commands":{},"content_settings":[],"creation_flags":1,"events":["ttsEngine.onPause","ttsEngine.onResume","ttsEngine.onSpeak","ttsEngine.onStop"],"from_bookmark":false,"from_webstore":false,"incognito_content_settings":[],"incognito_preferences":{},"install_time":"13239917716239290","location":5,"manifest":{"background":{"persistent":false,"scripts":["tts_extension.js"]},"description":"Component extension providing speech via the Google network text-to-speech service.","key":"MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA8GSbNUMGygqQTNDMFGIjZNcwXsHLzkNkHjWbuY37PbNdSDZ4VqlVjzbWqODSe+MjELdv5Keb51IdytnoGYXBMyqKmWpUrg+RnKvQ5ibWr4MW9pyIceOIdp9GrzC1WZGgTmZismYR3AjaIpufZ7xDdQQv+XrghPWCkdVqLN+qZDA1HU+DURznkMICiDDSH2sU0egm9UbWfS218bZqzKeQDiC3OnTPlaxcbJtKUuupIm5knjze3Wo9Ae9poTDMzKgchg0VlFCv3uqox+wlD8sjXBoyBCCK9HpImdVAF1a7jpdgiUHpPeV/26oYzM9/grltwNR3bzECQgSpyXp0eyoegwIDAQAB","manifest_version":2,"name":"Google Network Speech","permissions":["systemPrivate","ttsEngine","https://www.google.com/"],"tts_engine":{"voices":[{"event_types":["start","end","error"],"gender":"female","lang":"de-DE","remote":true,"voice_name":"Google Deutsch"},{"event_types":["start","end","error"],"gender":"female","lang":"en-US","remote":true,"voice_name":"Google US English"},{"event_types":["start","end","error"],"gender":"female","lang":"en-GB","remote":true,"voice_name":"Google UK English Female"},{"event_types":["start","end","error"],"gender":"male","lang":"en-GB","remote":true,"voice_name":"Google UK English Male"},{"event_types":["start","end","error"],"gender":"female","lang":"es-ES","remote":true,"voice_name":"Google español"},{"event_types":["start","end","error"],"gender":"female","lang":"es-US","remote":true,"voice_name":"Google español de Estados Unidos"},{"event_types":["start","end","error"],"gender":"female","lang":"fr-FR","remote":true,"voice_name":"Google français"},{"event_types":["start","end","error"],"gender":"female","lang":"hi-IN","remote":true,"voice_name":"Google हिन्दी"},{"event_types":["start","end","error"],"gender":"female","lang":"id-ID","remote":true,"voice_name":"Google Bahasa Indonesia"},{"event_types":["start","end","error"],"gender":"female","lang":"it-IT","remote":true,"voice_name":"Google italiano"},{"event_types":["start","end","error"],"gender":"female","lang":"ja-JP","remote":true,"voice_name":"Google 日本語"},{"event_types":["start","end","error"],"gender":"female","lang":"ko-KR","remote":true,"voice_name":"Google 한국의"},{"event_types":["start","end","error"],"gender":"female","lang":"nl-NL","remote":true,"voice_name":"Google Nederlands"},{"event_types":["start","end","error"],"gender":"female","lang":"pl-PL","remote":true,"voice_name":"Google polski"},{"event_types":["start","end","error"],"gender":"female","lang":"pt-BR","remote":true,"voice_name":"Google português do Brasil"},{"event_types":["start","end","error"],"gender":"female","lang":"ru-RU","remote":true,"voice_name":"Google русский"},{"event_types":["start","end","error"],"gender":"female","lang":"zh-CN","remote":true,"voice_name":"Google 普通话(中国大陆)"},{"event_types":["start","end","error"],"gender":"female","lang":"zh-HK","remote":true,"voice_name":"Google 粤語(香港)"},{"event_types":["start","end","error"],"gender":"female","lang":"zh-TW","remote":true,"voice_name":"Google 國語(臺灣)"}]},"version":"1.0"},"never_activated_since_loaded":true,"path":"C:\\Users\\ND\\Downloads\\GoogleChromePortable\\App\\Chrome-bin\\84.0.4147.89\\resources\\network_speech_synthesis","preferences":{},"regular_only_preferences":{},"state":1,"was_installed_by_default":false,"was_installed_by_oem":false},"nkeimhogjdpnpccoofpliimaahmaaome":{"active_permissions":{"api":["desktopCapture","processes","webrtcAudioPrivate","webrtcDesktopCapturePrivate","webrtcLoggingPrivate","system.cpu","enterprise.hardwarePlatform"],"manifest_permissions":[]},"commands":{},"content_settings":[],"creation_flags":1,"events":["runtime.onConnectExternal"],"from_bookmark":false,"from_webstore":false,"incognito_content_settings":[],"incognito_preferences":{},"install_time":"13239917716237202","location":5,"manifest":{"background":{"page":"background.html","persistent":false},"externally_connectable":{"matches":["https://*.google.com/*","*://localhost/*"]},"incognito":"split","key":"MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDAQt2ZDdPfoSe/JI6ID5bgLHRCnCu9T36aYczmhw/tnv6QZB2I6WnOCMZXJZlRdqWc7w9jo4BWhYS50Vb4weMfh/I0On7VcRwJUgfAxW2cHB+EkmtI1v4v/OU24OqIa1Nmv9uRVeX0GjhQukdLNhAE6ACWooaf5kqKlCeK+1GOkQIDAQAB","manifest_version":2,"name":"Google Hangouts","permissions":["desktopCapture","enterprise.hardwarePlatform","processes","system.cpu","webrtcAudioPrivate","webrtcDesktopCapturePrivate","webrtcLoggingPrivate"],"version":"1.3.15"},"never_activated_since_loaded":true,"path":"C:\\Users\\ND\\Downloads\\GoogleChromePortable\\App\\Chrome-bin\\84.0.4147.89\\resources\\hangout_services","preferences":{},"regular_only_preferences":{},"state":1,"was_installed_by_default":false,"was_installed_by_oem":false}}},"pinned_tabs":[],"protection":{"macs":{"browser":{"show_home_button":"ABFB3E43FB07E63C1714836B2184EB4E9859B28FCB84F241C2408197E26DC286"},"default_search_provider_data":{"template_url_data":"F0E453B77C6C4FAD4500F559F0E066EE7612D497DA4DF627260318FBFAA9D77B"},"extensions":{"settings":{"ahfgeienlihckogmohjhadlkjgocpleb":"89DCC6121DF8A084780BA4315B5877C5A8A2131962DC6E720C49EE406128E18D","gfdkimpbcpahaombhbimeihdjnejgicl":"4DD94807617D8684FA3CE12742E6906EA1C6ACEA1BB0C7B9DA30FEF471EFEE25","kmendfapggjehodndflmmgagdbamhnfd":"4724600C24B1F8C5D713875256621B2C20093298AA86B58C05B5293C7589396B","mfehgcgbbipciphmccgaenjidiccnmng":"D86AF900CDF96C1674E2D8E66957059C788EC0E30791A1AE0C086A07EC29D9A1","mhjfbmdgcfjbbpaeojofohoefgiehjai":"88925E4F91B69C5140A0E5E1AEBF24BDCFAF8DC9AF4E5666E7E99E4D2CC3EDCE","neajdppkdcdipfabeoofebfddakdcjhd":"842DDD05BC2BA70BBE9FD12B9730431F90E4810CD39308F9C0BAF16DE8DB00A8","nkeimhogjdpnpccoofpliimaahmaaome":"C6BF334629BE3D4D0D695ED9C72BD64468153B396A8F9C39AD6B5DC19150B1A1"}},"google":{"services":{"account_id":"95D37965554047E5C9A4F279BC0546261D827F2A1EE360DDDE3D033503C70AAF","last_account_id":"D8F1BB097303A2128F87F6A473F3F8CAA97B46BE7C37F824B83AA18C3AD471B3","last_username":"8B4F41EA1F09266158FB2CF906C75775EC7794BAB849F4DAEE061B121B03F8FB"}},"homepage":"97C3A169AB3D09E64D8866873A2A344A5D77CF95E9487896BA5E98D4FEDD1833","homepage_is_newtabpage":"76F53ADA999938B766D1E10FB558D61B8AF7E72992984E55DBD613E41971E1F5","media":{"storage_id_salt":"B3DEB61CCD656CCDE0786A49EA285E1160B1C17FBF1902F85242CD979F78B1BE"},"module_blacklist_cache_md5_digest":"4CA038F945BB3D48FB0D3D0DEF52CB5A739A53509AC82498DA954D54D8334DCC","pinned_tabs":"D38CFCCAE69BBA2D076460FAD72FCA3FDAF4A2C79765AB91892C6E72D42E6489","prefs":{"preference_reset_time":"71081A8B30EC86FB414C2BD06EE69C425460FDE7987AACA0BF47D1A8EABC0E93"},"safebrowsing":{"incidents_sent":"0E2385226DDBE8814EC5DCDE1A419D43B265395BEF408006904C871C2DA71947"},"search_provider_overrides":"5A5CF9BBBF3347251E72B863385E140E6F2C9349A38791BB18829C1769851BDD","session":{"restore_on_startup":"9C0A49A4D083A3044F718B8D9D3AA317CB2D92AF7AD28C8C17657F6595B3DC6B","startup_urls":"E51A2FE7156D3AC3C4ABEDF1E3579588D9FB1436A21231994BCC6F708EE9C99E"},"settings_reset_prompt":{"last_triggered_for_default_search":"CC0F5C47EA33AAF10E8AB9AB95CFD89A2E6D64A6490665C556AE46A88023C4B7","last_triggered_for_homepage":"399CCEBBD7553D68F695A2DCA1E89669688EC7C588B7174AABA5FE44F8407B11","last_triggered_for_startup_urls":"6C1D93AAE0A96303AC4B1367AB067EA4E586FC16D29FBBA438D862842FB241A9","prompt_wave":"39F762F7FCF47007A411320C239FE9141C46FC6815E53CB68924A7B261404145"},"software_reporter":{"prompt_seed":"B6103501B837FCD92FFD29ABF3FE69800B674132C00458CA47684068794F52A9","prompt_version":"0992AA112AD2139FE8794B36900BEE54C6EBE7D7C2FABFD83B2C09D5C4794229","reporting":"B2586AFEC00585D5137F3FD9E8F4EAED9AC6DE22295ACF62BCF1FDBFEE59C620"}},"super_mac":"45028B89EF1608C84595379A85B74389CB901BE7812648CE63D31E1431C4DBCD"}} \ No newline at end of file diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Session Storage/CURRENT b/Resources/GoogleChromePortable/Data/profile/Default/Session Storage/CURRENT new file mode 100644 index 00000000..7ed683d1 --- /dev/null +++ b/Resources/GoogleChromePortable/Data/profile/Default/Session Storage/CURRENT @@ -0,0 +1 @@ +MANIFEST-000001 diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Session Storage/LOCK b/Resources/GoogleChromePortable/Data/profile/Default/Session Storage/LOCK new file mode 100644 index 00000000..e69de29b diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Session Storage/LOG b/Resources/GoogleChromePortable/Data/profile/Default/Session Storage/LOG new file mode 100644 index 00000000..86f5253f --- /dev/null +++ b/Resources/GoogleChromePortable/Data/profile/Default/Session Storage/LOG @@ -0,0 +1 @@ +2020/07/22-21:55:16.445 1e8c Reusing MANIFEST C:\Users\ND\Downloads\GoogleChromePortable\Data\profile\Default\Session Storage/MANIFEST-000001 diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Session Storage/MANIFEST-000001 b/Resources/GoogleChromePortable/Data/profile/Default/Session Storage/MANIFEST-000001 new file mode 100644 index 00000000..18e5cab7 Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/Session Storage/MANIFEST-000001 differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Shortcuts b/Resources/GoogleChromePortable/Data/profile/Default/Shortcuts new file mode 100644 index 00000000..c877de43 Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/Shortcuts differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Shortcuts-journal b/Resources/GoogleChromePortable/Data/profile/Default/Shortcuts-journal new file mode 100644 index 00000000..e69de29b diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Site Characteristics Database/CURRENT b/Resources/GoogleChromePortable/Data/profile/Default/Site Characteristics Database/CURRENT new file mode 100644 index 00000000..7ed683d1 --- /dev/null +++ b/Resources/GoogleChromePortable/Data/profile/Default/Site Characteristics Database/CURRENT @@ -0,0 +1 @@ +MANIFEST-000001 diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Site Characteristics Database/LOCK b/Resources/GoogleChromePortable/Data/profile/Default/Site Characteristics Database/LOCK new file mode 100644 index 00000000..e69de29b diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Site Characteristics Database/LOG b/Resources/GoogleChromePortable/Data/profile/Default/Site Characteristics Database/LOG new file mode 100644 index 00000000..7e2e2628 --- /dev/null +++ b/Resources/GoogleChromePortable/Data/profile/Default/Site Characteristics Database/LOG @@ -0,0 +1 @@ +2020/07/22-21:55:16.269 13e4 Reusing MANIFEST C:\Users\ND\Downloads\GoogleChromePortable\Data\profile\Default\Site Characteristics Database/MANIFEST-000001 diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Site Characteristics Database/MANIFEST-000001 b/Resources/GoogleChromePortable/Data/profile/Default/Site Characteristics Database/MANIFEST-000001 new file mode 100644 index 00000000..18e5cab7 Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/Site Characteristics Database/MANIFEST-000001 differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Cookies b/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Cookies new file mode 100644 index 00000000..653a9a4f Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Cookies differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Cookies-journal b/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Cookies-journal new file mode 100644 index 00000000..e69de29b diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/GPUCache/data_0 b/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/GPUCache/data_0 new file mode 100644 index 00000000..d76fb77e Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/GPUCache/data_0 differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/GPUCache/data_1 b/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/GPUCache/data_1 new file mode 100644 index 00000000..dcaafa97 Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/GPUCache/data_1 differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/GPUCache/data_2 b/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/GPUCache/data_2 new file mode 100644 index 00000000..c7e2eb9a Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/GPUCache/data_2 differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/GPUCache/data_3 b/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/GPUCache/data_3 new file mode 100644 index 00000000..5eec9735 Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/GPUCache/data_3 differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/GPUCache/index b/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/GPUCache/index new file mode 100644 index 00000000..a0d190b2 Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/GPUCache/index differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Local Storage/leveldb/CURRENT b/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Local Storage/leveldb/CURRENT new file mode 100644 index 00000000..7ed683d1 --- /dev/null +++ b/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Local Storage/leveldb/CURRENT @@ -0,0 +1 @@ +MANIFEST-000001 diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Local Storage/leveldb/LOCK b/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Local Storage/leveldb/LOCK new file mode 100644 index 00000000..e69de29b diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Local Storage/leveldb/LOG b/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Local Storage/leveldb/LOG new file mode 100644 index 00000000..322f8101 --- /dev/null +++ b/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Local Storage/leveldb/LOG @@ -0,0 +1 @@ +2020/07/22-21:55:16.450 1738 Reusing MANIFEST C:\Users\ND\Downloads\GoogleChromePortable\Data\profile\Default\Storage\ext\gfdkimpbcpahaombhbimeihdjnejgicl\def\Local Storage\leveldb/MANIFEST-000001 diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Local Storage/leveldb/MANIFEST-000001 b/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Local Storage/leveldb/MANIFEST-000001 new file mode 100644 index 00000000..18e5cab7 Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Local Storage/leveldb/MANIFEST-000001 differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Network Persistent State b/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Network Persistent State new file mode 100644 index 00000000..2590bec5 --- /dev/null +++ b/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Network Persistent State @@ -0,0 +1 @@ +{"net":{"http_server_properties":{"servers":[],"version":5},"network_qualities":{"CAESABiAgICA+P////8B":"4G"}}} \ No newline at end of file diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Platform Notifications/CURRENT b/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Platform Notifications/CURRENT new file mode 100644 index 00000000..7ed683d1 --- /dev/null +++ b/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Platform Notifications/CURRENT @@ -0,0 +1 @@ +MANIFEST-000001 diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Platform Notifications/LOCK b/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Platform Notifications/LOCK new file mode 100644 index 00000000..e69de29b diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Platform Notifications/LOG b/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Platform Notifications/LOG new file mode 100644 index 00000000..995085f7 --- /dev/null +++ b/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Platform Notifications/LOG @@ -0,0 +1 @@ +2020/07/22-21:55:16.510 2b0 Reusing MANIFEST C:\Users\ND\Downloads\GoogleChromePortable\Data\profile\Default\Storage\ext\gfdkimpbcpahaombhbimeihdjnejgicl\def\Platform Notifications/MANIFEST-000001 diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Platform Notifications/MANIFEST-000001 b/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Platform Notifications/MANIFEST-000001 new file mode 100644 index 00000000..18e5cab7 Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Platform Notifications/MANIFEST-000001 differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Session Storage/CURRENT b/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Session Storage/CURRENT new file mode 100644 index 00000000..7ed683d1 --- /dev/null +++ b/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Session Storage/CURRENT @@ -0,0 +1 @@ +MANIFEST-000001 diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Session Storage/LOCK b/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Session Storage/LOCK new file mode 100644 index 00000000..e69de29b diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Session Storage/LOG b/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Session Storage/LOG new file mode 100644 index 00000000..e1c50828 --- /dev/null +++ b/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Session Storage/LOG @@ -0,0 +1 @@ +2020/07/22-21:55:26.409 1738 Reusing MANIFEST C:\Users\ND\Downloads\GoogleChromePortable\Data\profile\Default\Storage\ext\gfdkimpbcpahaombhbimeihdjnejgicl\def\Session Storage/MANIFEST-000001 diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Session Storage/MANIFEST-000001 b/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Session Storage/MANIFEST-000001 new file mode 100644 index 00000000..18e5cab7 Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Session Storage/MANIFEST-000001 differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Sync Data/LevelDB/CURRENT b/Resources/GoogleChromePortable/Data/profile/Default/Sync Data/LevelDB/CURRENT new file mode 100644 index 00000000..7ed683d1 --- /dev/null +++ b/Resources/GoogleChromePortable/Data/profile/Default/Sync Data/LevelDB/CURRENT @@ -0,0 +1 @@ +MANIFEST-000001 diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Sync Data/LevelDB/LOCK b/Resources/GoogleChromePortable/Data/profile/Default/Sync Data/LevelDB/LOCK new file mode 100644 index 00000000..e69de29b diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Sync Data/LevelDB/LOG b/Resources/GoogleChromePortable/Data/profile/Default/Sync Data/LevelDB/LOG new file mode 100644 index 00000000..fb599b65 --- /dev/null +++ b/Resources/GoogleChromePortable/Data/profile/Default/Sync Data/LevelDB/LOG @@ -0,0 +1 @@ +2020/07/22-21:55:16.272 1064 Reusing MANIFEST C:\Users\ND\Downloads\GoogleChromePortable\Data\profile\Default\Sync Data\LevelDB/MANIFEST-000001 diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Sync Data/LevelDB/MANIFEST-000001 b/Resources/GoogleChromePortable/Data/profile/Default/Sync Data/LevelDB/MANIFEST-000001 new file mode 100644 index 00000000..18e5cab7 Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/Sync Data/LevelDB/MANIFEST-000001 differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Top Sites b/Resources/GoogleChromePortable/Data/profile/Default/Top Sites new file mode 100644 index 00000000..11457e22 Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/Top Sites differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Top Sites-journal b/Resources/GoogleChromePortable/Data/profile/Default/Top Sites-journal new file mode 100644 index 00000000..e69de29b diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Visited Links b/Resources/GoogleChromePortable/Data/profile/Default/Visited Links new file mode 100644 index 00000000..b68e0360 Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/Visited Links differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Web Data b/Resources/GoogleChromePortable/Data/profile/Default/Web Data new file mode 100644 index 00000000..877fe240 Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/Web Data differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/Web Data-journal b/Resources/GoogleChromePortable/Data/profile/Default/Web Data-journal new file mode 100644 index 00000000..e69de29b diff --git a/Resources/GoogleChromePortable/Data/profile/Default/data_reduction_proxy_leveldb/CURRENT b/Resources/GoogleChromePortable/Data/profile/Default/data_reduction_proxy_leveldb/CURRENT new file mode 100644 index 00000000..1a848522 --- /dev/null +++ b/Resources/GoogleChromePortable/Data/profile/Default/data_reduction_proxy_leveldb/CURRENT @@ -0,0 +1 @@ +MANIFEST-000002 diff --git a/Resources/GoogleChromePortable/Data/profile/Default/data_reduction_proxy_leveldb/LOCK b/Resources/GoogleChromePortable/Data/profile/Default/data_reduction_proxy_leveldb/LOCK new file mode 100644 index 00000000..e69de29b diff --git a/Resources/GoogleChromePortable/Data/profile/Default/data_reduction_proxy_leveldb/LOG b/Resources/GoogleChromePortable/Data/profile/Default/data_reduction_proxy_leveldb/LOG new file mode 100644 index 00000000..426941d9 --- /dev/null +++ b/Resources/GoogleChromePortable/Data/profile/Default/data_reduction_proxy_leveldb/LOG @@ -0,0 +1 @@ +2020/07/22-21:55:20.261 10c4 Delete type=3 #1 diff --git a/Resources/GoogleChromePortable/Data/profile/Default/data_reduction_proxy_leveldb/MANIFEST-000002 b/Resources/GoogleChromePortable/Data/profile/Default/data_reduction_proxy_leveldb/MANIFEST-000002 new file mode 100644 index 00000000..bbbc5856 Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/data_reduction_proxy_leveldb/MANIFEST-000002 differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/databases/Databases.db b/Resources/GoogleChromePortable/Data/profile/Default/databases/Databases.db new file mode 100644 index 00000000..611cf3fc Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/databases/Databases.db differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/databases/Databases.db-journal b/Resources/GoogleChromePortable/Data/profile/Default/databases/Databases.db-journal new file mode 100644 index 00000000..e69de29b diff --git a/Resources/GoogleChromePortable/Data/profile/Default/heavy_ad_intervention_opt_out.db b/Resources/GoogleChromePortable/Data/profile/Default/heavy_ad_intervention_opt_out.db new file mode 100644 index 00000000..e924fbed Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/heavy_ad_intervention_opt_out.db differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/heavy_ad_intervention_opt_out.db-journal b/Resources/GoogleChromePortable/Data/profile/Default/heavy_ad_intervention_opt_out.db-journal new file mode 100644 index 00000000..e69de29b diff --git a/Resources/GoogleChromePortable/Data/profile/Default/previews_opt_out.db b/Resources/GoogleChromePortable/Data/profile/Default/previews_opt_out.db new file mode 100644 index 00000000..dfef8620 Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/previews_opt_out.db differ diff --git a/Resources/GoogleChromePortable/Data/profile/Default/previews_opt_out.db-journal b/Resources/GoogleChromePortable/Data/profile/Default/previews_opt_out.db-journal new file mode 100644 index 00000000..e69de29b diff --git a/Resources/GoogleChromePortable/Data/profile/Default/shared_proto_db/LOCK b/Resources/GoogleChromePortable/Data/profile/Default/shared_proto_db/LOCK new file mode 100644 index 00000000..e69de29b diff --git a/Resources/GoogleChromePortable/Data/profile/Default/shared_proto_db/LOG b/Resources/GoogleChromePortable/Data/profile/Default/shared_proto_db/LOG new file mode 100644 index 00000000..e69de29b diff --git a/Resources/GoogleChromePortable/Data/profile/Default/shared_proto_db/metadata/CURRENT b/Resources/GoogleChromePortable/Data/profile/Default/shared_proto_db/metadata/CURRENT new file mode 100644 index 00000000..7ed683d1 --- /dev/null +++ b/Resources/GoogleChromePortable/Data/profile/Default/shared_proto_db/metadata/CURRENT @@ -0,0 +1 @@ +MANIFEST-000001 diff --git a/Resources/GoogleChromePortable/Data/profile/Default/shared_proto_db/metadata/LOCK b/Resources/GoogleChromePortable/Data/profile/Default/shared_proto_db/metadata/LOCK new file mode 100644 index 00000000..e69de29b diff --git a/Resources/GoogleChromePortable/Data/profile/Default/shared_proto_db/metadata/LOG b/Resources/GoogleChromePortable/Data/profile/Default/shared_proto_db/metadata/LOG new file mode 100644 index 00000000..fc20196e --- /dev/null +++ b/Resources/GoogleChromePortable/Data/profile/Default/shared_proto_db/metadata/LOG @@ -0,0 +1 @@ +2020/07/22-21:55:21.075 1064 Reusing MANIFEST C:\Users\ND\Downloads\GoogleChromePortable\Data\profile\Default\shared_proto_db\metadata/MANIFEST-000001 diff --git a/Resources/GoogleChromePortable/Data/profile/Default/shared_proto_db/metadata/MANIFEST-000001 b/Resources/GoogleChromePortable/Data/profile/Default/shared_proto_db/metadata/MANIFEST-000001 new file mode 100644 index 00000000..18e5cab7 Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Default/shared_proto_db/metadata/MANIFEST-000001 differ diff --git a/Resources/GoogleChromePortable/Data/profile/First Run b/Resources/GoogleChromePortable/Data/profile/First Run new file mode 100644 index 00000000..e69de29b diff --git a/Resources/GoogleChromePortable/Data/profile/Last Browser b/Resources/GoogleChromePortable/Data/profile/Last Browser new file mode 100644 index 00000000..a8a2baec Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/Last Browser differ diff --git a/Resources/GoogleChromePortable/Data/profile/Last Version b/Resources/GoogleChromePortable/Data/profile/Last Version new file mode 100644 index 00000000..d3766c5a --- /dev/null +++ b/Resources/GoogleChromePortable/Data/profile/Last Version @@ -0,0 +1 @@ +84.0.4147.89 \ No newline at end of file diff --git a/Resources/GoogleChromePortable/Data/profile/Local State b/Resources/GoogleChromePortable/Data/profile/Local State new file mode 100644 index 00000000..1195e167 --- /dev/null +++ b/Resources/GoogleChromePortable/Data/profile/Local State @@ -0,0 +1 @@ +{"browser":{"shortcut_migration_version":"84.0.4147.89"},"hardware_acceleration_mode_previous":true,"legacy":{"profile":{"name":{"migrated":true}}},"os_crypt":{"encrypted_key":"RFBBUEkBAAAA0Iyd3wEV0RGMegDAT8KX6wEAAAALruBKvM8nQqZVUwsRVG2xAAAAAAIAAAAAABBmAAAAAQAAIAAAAL/OZCi7yEVpSNaNw8sMFoHuCOJJUT4ZmNW2axgzqDt1AAAAAA6AAAAAAgAAIAAAAPyVwj9qXQKvpMFu0fYwNhiVK4BD8HXwInsTiW/N6s0AMAAAAOy0KHTFao9RaxvAcD7YNsbxnl7wNzY3BZIbEt8jIC65vHpDvqbZ83JijJI5iQc3PkAAAABONVQnceZVwnuu/azIHCHRj1a4ND5eA+nynLdJXx1BZZoN7NiDsLoSwzNW8Ld35E5XBdrKQMQ7C/bbjbzCiqx5"},"policy":{"last_statistics_update":"13239917716190519"},"profile":{"info_cache":{"Default":{"active_time":1595444116.398669,"avatar_icon":"chrome://theme/IDR_PROFILE_AVATAR_0","background_apps":false,"gaia_id":"","is_consented_primary_account":false,"is_ephemeral":false,"is_omitted_from_profile_list":false,"is_using_default_avatar":true,"is_using_default_name":false,"managed_user_id":"","metrics_bucket_index":1,"name":"First user","user_name":""}},"last_active_profiles":[],"metrics":{"next_bucket_index":2},"profile_counts_reported":"13239917716202259"},"profile_network_context_service":{"http_cache_finch_experiment_groups":"None None None"},"rappor":{"cohort_seed":452,"secret":"HnQ7YwhgMRa/D9v+NsMxd8eNwHN61Xyd6/pigoWmFNsDVPAn8nYM5ZMRpSssUnQe"},"shutdown":{"num_processes":6,"num_processes_slow":0,"type":1},"subresource_filter":{"ruleset_version":{"checksum":0,"content":"","format":0}},"tab_stats":{"last_daily_sample":"13239917716400468","max_tabs_per_window":2,"total_tab_count_max":2,"window_count_max":1},"ukm":{"persisted_logs":[]},"uninstall_metrics":{"installation_date2":"1595444116","launch_count":"1","page_load_count":"6"},"user_experience_metrics":{"low_entropy_source3":1711,"machine_id":14538530,"session_id":0,"stability":{"breakpad_registration_fail":0,"breakpad_registration_ok":0,"browser_last_live_timestamp":"13239917726397463","child_process_crash_count":0,"crash_count":0,"debugger_not_present":1,"debugger_present":0,"deferred_count":0,"discard_count":1,"exited_cleanly":true,"extension_renderer_crash_count":0,"extension_renderer_failed_launch_count":0,"extension_renderer_launch_count":4,"gpu_crash_count":0,"incomplete_session_end_count":0,"launch_count":1,"page_load_count":6,"renderer_crash_count":0,"renderer_failed_launch_count":0,"renderer_hang_count":0,"renderer_launch_count":4,"session_end_completed":true,"stats_buildtime":"1594417592","stats_version":"84.0.4147.89","system_crash_count":0,"version_mismatch_count":0}},"variations_failed_to_fetch_seed_streak":1,"was":{"restarted":false}} \ No newline at end of file diff --git a/Resources/GoogleChromePortable/Data/profile/ShaderCache/GPUCache/data_0 b/Resources/GoogleChromePortable/Data/profile/ShaderCache/GPUCache/data_0 new file mode 100644 index 00000000..1d13392c Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/ShaderCache/GPUCache/data_0 differ diff --git a/Resources/GoogleChromePortable/Data/profile/ShaderCache/GPUCache/data_1 b/Resources/GoogleChromePortable/Data/profile/ShaderCache/GPUCache/data_1 new file mode 100644 index 00000000..f713e15c Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/ShaderCache/GPUCache/data_1 differ diff --git a/Resources/GoogleChromePortable/Data/profile/ShaderCache/GPUCache/data_2 b/Resources/GoogleChromePortable/Data/profile/ShaderCache/GPUCache/data_2 new file mode 100644 index 00000000..c7e2eb9a Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/ShaderCache/GPUCache/data_2 differ diff --git a/Resources/GoogleChromePortable/Data/profile/ShaderCache/GPUCache/data_3 b/Resources/GoogleChromePortable/Data/profile/ShaderCache/GPUCache/data_3 new file mode 100644 index 00000000..4fe0db77 Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/ShaderCache/GPUCache/data_3 differ diff --git a/Resources/GoogleChromePortable/Data/profile/ShaderCache/GPUCache/index b/Resources/GoogleChromePortable/Data/profile/ShaderCache/GPUCache/index new file mode 100644 index 00000000..15428325 Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/ShaderCache/GPUCache/index differ diff --git a/Resources/GoogleChromePortable/Data/profile/chrome_shutdown_ms.txt b/Resources/GoogleChromePortable/Data/profile/chrome_shutdown_ms.txt new file mode 100644 index 00000000..6fb2892a Binary files /dev/null and b/Resources/GoogleChromePortable/Data/profile/chrome_shutdown_ms.txt differ diff --git a/Resources/GoogleChromePortable/GoogleChromePortable.exe b/Resources/GoogleChromePortable/GoogleChromePortable.exe new file mode 100644 index 00000000..65f1a065 Binary files /dev/null and b/Resources/GoogleChromePortable/GoogleChromePortable.exe differ diff --git a/Resources/GoogleChromePortable/Other/Help/images/donation_button.png b/Resources/GoogleChromePortable/Other/Help/images/donation_button.png new file mode 100644 index 00000000..f19dea7a Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Help/images/donation_button.png differ diff --git a/Resources/GoogleChromePortable/Other/Help/images/favicon.ico b/Resources/GoogleChromePortable/Other/Help/images/favicon.ico new file mode 100644 index 00000000..ed849b2d Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Help/images/favicon.ico differ diff --git a/Resources/GoogleChromePortable/Other/Help/images/help_background_footer.png b/Resources/GoogleChromePortable/Other/Help/images/help_background_footer.png new file mode 100644 index 00000000..5ebdc028 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Help/images/help_background_footer.png differ diff --git a/Resources/GoogleChromePortable/Other/Help/images/help_background_header.png b/Resources/GoogleChromePortable/Other/Help/images/help_background_header.png new file mode 100644 index 00000000..cf1ebf76 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Help/images/help_background_header.png differ diff --git a/Resources/GoogleChromePortable/Other/Help/images/help_logo_top.png b/Resources/GoogleChromePortable/Other/Help/images/help_logo_top.png new file mode 100644 index 00000000..1a705050 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Help/images/help_logo_top.png differ diff --git a/Resources/GoogleChromePortable/Other/Source/ChromePasswords/ChromePasswords.sln b/Resources/GoogleChromePortable/Other/Source/ChromePasswords/ChromePasswords.sln new file mode 100644 index 00000000..15160f19 --- /dev/null +++ b/Resources/GoogleChromePortable/Other/Source/ChromePasswords/ChromePasswords.sln @@ -0,0 +1,20 @@ + +Microsoft Visual Studio Solution File, Format Version 11.00 +# Visual Studio 2010 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ChromePasswords", "ChromePasswords\ChromePasswords.vcxproj", "{31E39FE8-0FA6-4D7E-8B1B-3CB3C3DBC2E7}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Win32 = Debug|Win32 + Release|Win32 = Release|Win32 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {31E39FE8-0FA6-4D7E-8B1B-3CB3C3DBC2E7}.Debug|Win32.ActiveCfg = Debug|Win32 + {31E39FE8-0FA6-4D7E-8B1B-3CB3C3DBC2E7}.Debug|Win32.Build.0 = Debug|Win32 + {31E39FE8-0FA6-4D7E-8B1B-3CB3C3DBC2E7}.Release|Win32.ActiveCfg = Release|Win32 + {31E39FE8-0FA6-4D7E-8B1B-3CB3C3DBC2E7}.Release|Win32.Build.0 = Release|Win32 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/Resources/GoogleChromePortable/Other/Source/ChromePasswords/ChromePasswords/ChromePasswords.def b/Resources/GoogleChromePortable/Other/Source/ChromePasswords/ChromePasswords/ChromePasswords.def new file mode 100644 index 00000000..0d99f40a --- /dev/null +++ b/Resources/GoogleChromePortable/Other/Source/ChromePasswords/ChromePasswords/ChromePasswords.def @@ -0,0 +1,5 @@ +LIBRARY +EXPORTS +ExportPasswords +ImportPasswords +HashPassword \ No newline at end of file diff --git a/Resources/GoogleChromePortable/Other/Source/ChromePasswords/ChromePasswords/ChromePasswords.vcxproj b/Resources/GoogleChromePortable/Other/Source/ChromePasswords/ChromePasswords/ChromePasswords.vcxproj new file mode 100644 index 00000000..06e306e8 --- /dev/null +++ b/Resources/GoogleChromePortable/Other/Source/ChromePasswords/ChromePasswords/ChromePasswords.vcxproj @@ -0,0 +1,111 @@ + + + + + Debug + Win32 + + + Release + Win32 + + + + {31E39FE8-0FA6-4D7E-8B1B-3CB3C3DBC2E7} + Win32Proj + ChromePasswords + + + + DynamicLibrary + Unicode + + + DynamicLibrary + true + Unicode + + + + + + + + + + + + + true + + + false + + + + NotUsing + Level3 + true + EditAndContinue + Disabled + EnableFastChecks + MultiThreadedDebug + WIN32;_DEBUG;_WINDOWS;_USRDLL;CHROMEPASSWORDS_EXPORTS;%(PreprocessorDefinitions) + E:\Programs\Programming\NSIS\Examples\Plugin\nsis;F:\User\Programming\sqlite-3_6_20;%(AdditionalIncludeDirectories) + Cdecl + + + Windows + true + E:\Programs\Programming\NSIS\Examples\Plugin\nsis + kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;crypt32.lib;pluginapi.lib;%(AdditionalDependencies) + ChromePasswords.def + LIBC.LIB + + + + + Level3 + NotUsing + ProgramDatabase + MaxSpeed + MultiThreaded + true + true + WIN32;NDEBUG;_WINDOWS;_USRDLL;CHROMEPASSWORDS_EXPORTS;%(PreprocessorDefinitions) + E:\Programs\Programming\NSIS\Examples\Plugin\nsis;F:\User\Programming\sqlite-3_6_20;%(AdditionalIncludeDirectories) + Cdecl + + + Windows + true + true + true + E:\Programs\Programming\NSIS\Examples\Plugin\nsis + kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;crypt32.lib;pluginapi.lib;%(AdditionalDependencies) + ChromePasswords.def + LIBC.LIB + + + + + + false + + + false + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Resources/GoogleChromePortable/Other/Source/ChromePasswords/ChromePasswords/dllmain.cpp b/Resources/GoogleChromePortable/Other/Source/ChromePasswords/ChromePasswords/dllmain.cpp new file mode 100644 index 00000000..d72275a0 --- /dev/null +++ b/Resources/GoogleChromePortable/Other/Source/ChromePasswords/ChromePasswords/dllmain.cpp @@ -0,0 +1,678 @@ +#include +#include +#include +#include "sqlite.h" + +byte* EncryptPassword(byte* blob, DWORD* size, const char* masterPassword, const char* salt, HWND hwndParent) { + HCRYPTPROV csp = NULL; + HCRYPTHASH hash = NULL; + HCRYPTKEY key = NULL; + + if (!CryptAcquireContext(&csp, NULL, MS_STRONG_PROV, PROV_RSA_FULL, 0)) { + if (!CryptAcquireContext(&csp, NULL, MS_STRONG_PROV, PROV_RSA_FULL, CRYPT_NEWKEYSET)) { + MessageBoxA(hwndParent, "Could not create key container!", "ChromePasswords", MB_ICONERROR); + return NULL; + } + } + + if (!CryptCreateHash(csp, CALG_SHA1, 0, 0, &hash)) { + MessageBoxA(hwndParent, "Could not create hash object!", "ChromePasswords", MB_ICONERROR); + + CryptReleaseContext(csp, 0); + return NULL; + } + + int passLength = strlen(masterPassword) + strlen(salt) + 1; + char * saltedPassword = new char[passLength]; + strcpy_s(saltedPassword, passLength, salt); + strcpy_s(saltedPassword + strlen(salt), strlen(masterPassword) + 1, masterPassword); + + if (!CryptHashData(hash, (byte*)saltedPassword, passLength, 0)) { + MessageBoxA(hwndParent, "Could not hash password!", "ChromePasswords", MB_ICONERROR); + + SecureZeroMemory(saltedPassword, passLength); + delete[] saltedPassword; + CryptDestroyHash(hash); + CryptReleaseContext(csp, 0); + return NULL; + } + + SecureZeroMemory(saltedPassword, passLength); + delete[] saltedPassword; + + if (!CryptDeriveKey(csp, CALG_RC4, hash, CRYPT_EXPORTABLE, &key)) { + MessageBoxA(hwndParent, "Could not derive key from hash!", "ChromePasswords", MB_ICONERROR); + + CryptDestroyHash(hash); + CryptReleaseContext(csp, 0); + return NULL; + } + + DWORD encSize = *size; + if (!CryptEncrypt(key, NULL, TRUE, 0, NULL, &encSize, encSize)) { + MessageBoxA(hwndParent, "Could not get the size of the encrypted password!", "ChromePasswords", MB_ICONERROR); + + CryptDestroyKey(key); + CryptDestroyHash(hash); + CryptReleaseContext(csp, 0); + return NULL; + } + + byte* text = new byte[encSize]; + memcpy(text, blob, *size); + + if (!CryptEncrypt(key, NULL, TRUE, 0, text, size, encSize)) { + MessageBoxA(hwndParent, "Could not encrypt the password!", "ChromePasswords", MB_ICONERROR); + + delete[] text; + CryptDestroyKey(key); + CryptDestroyHash(hash); + CryptReleaseContext(csp, 0); + return NULL; + } + + CryptDestroyKey(key); + CryptDestroyHash(hash); + CryptReleaseContext(csp, 0); + return text; +} + +byte* DecryptPassword(byte* blob, DWORD* size, const char* masterPassword, const char* salt, HWND hwndParent) { + HCRYPTPROV csp = NULL; + HCRYPTHASH hash = NULL; + HCRYPTKEY key = NULL; + + if (!CryptAcquireContext(&csp, NULL, MS_STRONG_PROV, PROV_RSA_FULL, 0)) { + if (!CryptAcquireContext(&csp, NULL, MS_STRONG_PROV, PROV_RSA_FULL, CRYPT_NEWKEYSET)) { + MessageBoxA(hwndParent, "Could not create key container!", "ChromePasswords", MB_ICONERROR); + return NULL; + } + } + + if (!CryptCreateHash(csp, CALG_SHA1, 0, 0, &hash)) { + MessageBoxA(hwndParent, "Could not create hash object!", "ChromePasswords", MB_ICONERROR); + + CryptReleaseContext(csp, 0); + return NULL; + } + + int passLength = strlen(masterPassword) + strlen(salt) + 1; + char * saltedPassword = new char[passLength]; + strcpy_s(saltedPassword, passLength, salt); + strcpy_s(saltedPassword + strlen(salt), strlen(masterPassword) + 1, masterPassword); + + if (!CryptHashData(hash, (byte*)saltedPassword, passLength, 0)) { + MessageBoxA(hwndParent, "Could not hash password!", "ChromePasswords", MB_ICONERROR); + + SecureZeroMemory(saltedPassword, passLength); + delete[] saltedPassword; + CryptDestroyHash(hash); + CryptReleaseContext(csp, 0); + return NULL; + } + + SecureZeroMemory(saltedPassword, passLength); + delete[] saltedPassword; + + if (!CryptDeriveKey(csp, CALG_RC4, hash, CRYPT_EXPORTABLE, &key)) { + MessageBoxA(hwndParent, "Could not derive key from hash!", "ChromePasswords", MB_ICONERROR); + + CryptDestroyHash(hash); + CryptReleaseContext(csp, 0); + return NULL; + } + + byte* text = new byte[*size]; + memcpy(text, blob, *size); + + if (!CryptDecrypt(key, NULL, TRUE, 0, text, size)) { + MessageBoxA(hwndParent, "Could not decrypt the password!", "ChromePasswords", MB_ICONERROR); + + delete[] text; + CryptDestroyKey(key); + CryptDestroyHash(hash); + CryptReleaseContext(csp, 0); + return NULL; + } + + CryptDestroyKey(key); + CryptDestroyHash(hash); + CryptReleaseContext(csp, 0); + return text; +} + +void ExportPasswords(HWND hwndParent, int string_size, char* variables, stack_t** stacktop, extra_parameters* extra) { + EXDLL_INIT(); + + char* source = new char[string_size]; + if (popstring(source)) { + MessageBoxA(hwndParent, "Missing parameter.", "ChromePasswords", MB_ICONERROR); + pushstring(""); + return; + } + + char* dest = new char[string_size]; + if (popstring(dest)) { + MessageBoxA(hwndParent, "Missing parameter.", "ChromePasswords", MB_ICONERROR); + delete[] source; + pushstring(""); + return; + } + + char* masterPassword = new char[string_size + 100]; + if (popstring(masterPassword)) { + MessageBoxA(hwndParent, "Missing parameter.", "ChromePasswords", MB_ICONERROR); + delete[] dest; + delete[] source; + pushstring(""); + return; + } + + char* endOfPassword; + if (*masterPassword) { + endOfPassword = masterPassword + strlen(masterPassword); + strcpy_s(endOfPassword, 100, "UT^tQpa\"'Dort;huV&nq?-{@`+AYi}5=Hu[9bdqJQau82X1kw1"); + } + + SQLite* webdata; + try { + webdata = new SQLite(source, SQLITE_OPEN_READONLY, NULL); + } catch (int) { + MessageBoxA(hwndParent, "Failed to open source database.", "ChromePasswords", MB_ICONERROR); + SecureZeroMemory(masterPassword, string_size + 100); + delete[] masterPassword; + delete[] dest; + delete[] source; + return; + } + delete[] source; + + SQLite* portablepasswords; + try { + portablepasswords = new SQLite(dest, SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE, NULL); + } catch (int) { + MessageBoxA(hwndParent, "Failed to open destination database.", "ChromePasswords", MB_ICONERROR); + + webdata->Close(); + delete webdata; + SecureZeroMemory(masterPassword, string_size + 100); + delete[] masterPassword; + delete[] dest; + return; + } + delete[] dest; + + SQLiteSTMT* statement; + try { + statement = portablepasswords->Prepare( + "CREATE TABLE IF NOT EXISTS `logins` (`origin_url` VARCHAR NOT NULL, `username_element` VARCHAR, `username_value` VARCHAR, `password_element` VARCHAR, `password_value` BLOB, `submit_element` VARCHAR, `signon_realm` VARCHAR NOT NULL, UNIQUE (`origin_url`, `username_element`, `username_value`, `password_element`, `submit_element`, `signon_realm`))", + -1, NULL); + } catch (int) { + MessageBoxA(hwndParent, "Failed to prepare create table statement.", "ChromePasswords", MB_ICONERROR); + + portablepasswords->Close(); + delete portablepasswords; + webdata->Close(); + delete webdata; + SecureZeroMemory(masterPassword, string_size + 100); + delete[] masterPassword; + return; + } + + if (statement->Step() != SQLITE_DONE) { + MessageBoxA(hwndParent, "Failed to create database table.", "ChromePasswords", MB_ICONERROR); + + statement->Close(); + delete statement; + portablepasswords->Close(); + delete portablepasswords; + webdata->Close(); + delete webdata; + SecureZeroMemory(masterPassword, string_size + 100); + delete[] masterPassword; + return; + } + statement->Close(); + delete statement; + + try { + statement = portablepasswords->Prepare("DELETE FROM `logins`", -1, NULL); + } catch (int) { + MessageBoxA(hwndParent, "Failed to prepare clear table statement.", "ChromePasswords", MB_ICONERROR); + + portablepasswords->Close(); + delete portablepasswords; + webdata->Close(); + delete webdata; + SecureZeroMemory(masterPassword, string_size + 100); + delete[] masterPassword; + return; + } + + if (statement->Step() != SQLITE_DONE) { + MessageBoxA(hwndParent, "Failed to clear database table.", "ChromePasswords", MB_ICONERROR); + + statement->Close(); + delete statement; + portablepasswords->Close(); + delete portablepasswords; + webdata->Close(); + delete webdata; + SecureZeroMemory(masterPassword, string_size + 100); + delete[] masterPassword; + return; + } + statement->Close(); + delete statement; + + SQLiteSTMT* insert; + try { + insert = portablepasswords->Prepare( + "INSERT INTO `logins` (`origin_url`, `username_element`, `username_value`, `password_element`, `password_value`, `submit_element`, `signon_realm`) VALUES (?, ?, ?, ?, ?, ?, ?)", + -1, NULL); + } catch (int) { + MessageBoxA(hwndParent, "Failed to prepare insert password statement.", "ChromePasswords", MB_ICONERROR); + + portablepasswords->Close(); + delete portablepasswords; + webdata->Close(); + delete webdata; + SecureZeroMemory(masterPassword, string_size + 100); + delete[] masterPassword; + return; + } + + try { + statement = webdata->Prepare( + "SELECT `origin_url`, `username_element`, `username_value`, `password_element`, `password_value`, `submit_element`, `signon_realm` FROM `logins`", + -1, NULL); + } catch (int) { + MessageBoxA(hwndParent, "Failed to prepare dump passwords statement.", "ChromePasswords", MB_ICONERROR); + + insert->Close(); + delete insert; + portablepasswords->Close(); + delete portablepasswords; + webdata->Close(); + delete webdata; + SecureZeroMemory(masterPassword, string_size + 100); + delete[] masterPassword; + return; + } + + int res; + while ((res = statement->Step()) == SQLITE_ROW) { + insert->Reset(); + insert->ClearBindings(); + + const void* blob = statement->ColumnBlob(4); + int blobLen = statement->ColumnBytes(4); + const unsigned char* salt = statement->ColumnText(6); + + DATA_BLOB din; + DATA_BLOB dout; + + din.cbData = blobLen; + din.pbData = new byte[blobLen]; + memcpy(din.pbData, blob, blobLen); + + if (!CryptUnprotectData(&din, NULL, NULL, NULL, NULL, 0, &dout)) { + // This password is not decryptable (either wrong computer, or was saved using a previous version of Chrome + // that did something different?). Skip it. + + //DWORD dw = GetLastError(); + //LPVOID lpMsgBuf; + + //FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS, NULL, dw, + // MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), (LPTSTR)&lpMsgBuf, 0, NULL); + //MessageBox(NULL, (LPCWSTR)lpMsgBuf, L"ChromePasswords", MB_ICONWARNING); + + delete[] din.pbData; + continue; + } + delete[] din.pbData; + + if (*masterPassword) { + byte* encrypted = EncryptPassword(dout.pbData, &(dout.cbData), masterPassword, (char*)salt, hwndParent); + SecureZeroMemory(dout.pbData, dout.cbData); + LocalFree(dout.pbData); + if (!encrypted) { + continue; + } + insert->BindBlob(5, encrypted, dout.cbData, SQLITE_TRANSIENT); + delete[] encrypted; + } else { + insert->BindBlob(5, dout.pbData, dout.cbData, SQLITE_TRANSIENT); + SecureZeroMemory(dout.pbData, dout.cbData); + LocalFree(dout.pbData); + } + + for (int i = 0; i < 7; i += 1) { + if (i != 4) { + insert->Bind(i + 1, (const char*)statement->ColumnText(i), statement->ColumnBytes(i), SQLITE_TRANSIENT); + } + } + + if (insert->Step() != SQLITE_DONE) { + MessageBoxA(hwndParent, "Failed to add password to table.", "ChromePasswords", MB_ICONERROR); + + insert->Close(); + delete insert; + statement->Close(); + delete statement; + portablepasswords->Close(); + delete portablepasswords; + webdata->Close(); + delete webdata; + SecureZeroMemory(masterPassword, string_size + 100); + delete[] masterPassword; + return; + } + } + + insert->Close(); + delete insert; + statement->Close(); + delete statement; + portablepasswords->Close(); + delete portablepasswords; + webdata->Close(); + delete webdata; + SecureZeroMemory(masterPassword, string_size + 100); + delete[] masterPassword; + + if (res != SQLITE_DONE) { + MessageBoxA(hwndParent, "Failed to finish iterating through results.", "ChromePasswords", MB_ICONERROR); + } +} + +void DisplayLastError() { + DWORD dw = GetLastError(); + LPVOID lpMsgBuf; + + FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS, NULL, + dw, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), (LPTSTR)&lpMsgBuf, 0, NULL); + MessageBox(NULL, (LPCWSTR)lpMsgBuf, L"ChromePasswords", MB_ICONWARNING); +} + +void ImportPasswords(HWND hwndParent, int string_size, char* variables, stack_t** stacktop, extra_parameters* extra) { + EXDLL_INIT(); + + char* source = new char[string_size]; + if (popstring(source)) { + MessageBoxA(hwndParent, "Missing parameter.", "ChromePasswords", MB_ICONERROR); + pushstring(""); + return; + } + + char* dest = new char[string_size]; + if (popstring(dest)) { + MessageBoxA(hwndParent, "Missing parameter.", "ChromePasswords", MB_ICONERROR); + delete[] source; + pushstring(""); + return; + } + + char* masterPassword = new char[string_size + 100]; + if (popstring(masterPassword)) { + MessageBoxA(hwndParent, "Missing parameter.", "ChromePasswords", MB_ICONERROR); + delete[] dest; + delete[] source; + pushstring(""); + return; + } + + char* endOfPassword = NULL; + if (*masterPassword) { + endOfPassword = masterPassword + strlen(masterPassword); + strcpy_s(endOfPassword, 100, "UT^tQpa\"'Dort;huV&nq?-{@`+AYi}5=Hu[9bdqJQau82X1kw1"); + } + + SQLite* portablepasswords; + try { + portablepasswords = new SQLite(source, SQLITE_OPEN_READONLY, NULL); + } catch (int) { + MessageBoxA(hwndParent, "Failed to open destination database.", "ChromePasswords", MB_ICONERROR); + SecureZeroMemory(masterPassword, string_size + 100); + delete[] masterPassword; + delete[] dest; + delete[] source; + return; + } + delete[] source; + + SQLite* webdata; + try { + webdata = new SQLite(dest, SQLITE_OPEN_READWRITE, NULL); + } catch (int) { + MessageBoxA(hwndParent, "Failed to open source database.", "ChromePasswords", MB_ICONERROR); + + portablepasswords->Close(); + delete portablepasswords; + SecureZeroMemory(masterPassword, string_size + 100); + delete[] masterPassword; + delete[] dest; + return; + } + delete[] dest; + + SQLiteSTMT* insert; + try { + insert = webdata->Prepare( + "UPDATE OR REPLACE `logins` SET `password_value` = ? WHERE `origin_url` = ? AND `username_element` = ? AND `username_value` = ? AND `password_element` = ? AND `submit_element` = ? AND `signon_realm` = ?", + -1, NULL); + } catch (int) { + MessageBoxA(hwndParent, "Failed to prepare update password statement.", "ChromePasswords", MB_ICONERROR); + + portablepasswords->Close(); + delete portablepasswords; + webdata->Close(); + delete webdata; + SecureZeroMemory(masterPassword, string_size + 100); + delete[] masterPassword; + return; + } + + SQLiteSTMT* statement; + try { + statement = portablepasswords->Prepare( + "SELECT `origin_url`, `username_element`, `username_value`, `password_element`, `password_value`, `submit_element`, `signon_realm` FROM `logins`", + -1, NULL); + } catch (int) { + MessageBoxA(hwndParent, "Failed to prepare select passwords statement.", "ChromePasswords", MB_ICONERROR); + + insert->Close(); + delete insert; + portablepasswords->Close(); + delete portablepasswords; + webdata->Close(); + delete webdata; + SecureZeroMemory(masterPassword, string_size + 100); + delete[] masterPassword; + return; + } + + int res; + while ((res = statement->Step()) == SQLITE_ROW) { + insert->Reset(); + insert->ClearBindings(); + + const void* blob = statement->ColumnBlob(4); + int blobLen = statement->ColumnBytes(4); + const unsigned char* salt = statement->ColumnText(6); + + DATA_BLOB din; + DATA_BLOB dout; + + din.cbData = blobLen; + din.pbData = new byte[blobLen]; + memcpy(din.pbData, blob, blobLen); + + if (*masterPassword) { + byte* decrypted = DecryptPassword(din.pbData, &(din.cbData), masterPassword, (char*)salt, hwndParent); + delete[] din.pbData; + if (!decrypted) { + continue; + } + din.pbData = decrypted; + } + + if (!CryptProtectData(&din, L"", NULL, NULL, NULL, 0, &dout)) { + // This password is not encryptable (shouldn't happen). + + SecureZeroMemory(din.pbData, din.cbData); + + DisplayLastError(); + + delete[] din.pbData; + continue; + } + SecureZeroMemory(din.pbData, din.cbData); + delete[] din.pbData; + + insert->BindBlob(1, dout.pbData, dout.cbData, SQLITE_TRANSIENT); + LocalFree(dout.pbData); + + for (int i = 0; i < 7; i += 1) { + if (i < 4) { + insert->Bind(i + 2, (const char*)statement->ColumnText(i), statement->ColumnBytes(i), SQLITE_TRANSIENT); + } else if (i > 4) { + insert->Bind(i + 1, (const char*)statement->ColumnText(i), statement->ColumnBytes(i), SQLITE_TRANSIENT); + } + } + + if (insert->Step() != SQLITE_DONE) { + MessageBoxA(hwndParent, "Failed to update password to table.", "ChromePasswords", MB_ICONERROR); + + insert->Close(); + delete insert; + statement->Close(); + delete statement; + webdata->Close(); + delete webdata; + portablepasswords->Close(); + delete portablepasswords; + SecureZeroMemory(masterPassword, string_size + 100); + delete[] masterPassword; + return; + } + } + + insert->Close(); + delete insert; + statement->Close(); + delete statement; + webdata->Close(); + delete webdata; + portablepasswords->Close(); + delete portablepasswords; + SecureZeroMemory(masterPassword, string_size + 100); + delete[] masterPassword; + + if (res != SQLITE_DONE) { + MessageBoxA(hwndParent, "Failed to finish iterating through results.", "ChromePasswords", MB_ICONERROR); + } +} + +char GetHexChar(byte val) { + if (val >= 0 && val <= 9) { + return val + '0'; + } else if (val >= 10 && val <= 15) { + return val - 10 + 'A'; + } + return '?'; +} + +void HashPassword(HWND hwndParent, int string_size, char* variables, stack_t** stacktop, extra_parameters* extra) { + EXDLL_INIT(); + + char* masterPassword = new char[string_size + 100]; + if (popstring(masterPassword)) { + MessageBoxA(hwndParent, "Missing parameter.", "ChromePasswords", MB_ICONERROR); + pushstring(""); + return; + } + + char* endOfPassword = masterPassword + strlen(masterPassword); + strcpy_s(endOfPassword, 100, ":{\\O*`'=pC#\"R=.Jo/XYI&MB*V-'Wis.JZ1W1!E(etZHVX5z\\@"); + + HCRYPTPROV csp = NULL; + HCRYPTHASH hash = NULL; + + if (!CryptAcquireContext(&csp, NULL, MS_STRONG_PROV, PROV_RSA_FULL, 0)) { + DisplayLastError(); + if (!CryptAcquireContext(&csp, NULL, MS_STRONG_PROV, PROV_RSA_FULL, CRYPT_NEWKEYSET)) { + DisplayLastError(); + MessageBoxA(hwndParent, "Could not create key container!", "ChromePasswords", MB_ICONERROR); + SecureZeroMemory(masterPassword, string_size + 100); + delete[] masterPassword; + pushstring(""); + return; + } + } + + if (!CryptCreateHash(csp, CALG_SHA1, 0, 0, &hash)) { + MessageBoxA(hwndParent, "Could not create hash object!", "ChromePasswords", MB_ICONERROR); + + CryptReleaseContext(csp, 0); + SecureZeroMemory(masterPassword, string_size + 100); + delete[] masterPassword; + pushstring(""); + return; + } + + if (!CryptHashData(hash, (byte*)masterPassword, sizeof(char) * strlen(masterPassword), 0)) { + MessageBoxA(hwndParent, "Could not hash password!", "ChromePasswords", MB_ICONERROR); + + CryptDestroyHash(hash); + CryptReleaseContext(csp, 0); + SecureZeroMemory(masterPassword, string_size + 100); + delete[] masterPassword; + pushstring(""); + return; + } + SecureZeroMemory(masterPassword, string_size + 100); + delete[] masterPassword; + + DWORD len = 0; + if (!CryptGetHashParam(hash, HP_HASHVAL, NULL, &len, 0)) { + MessageBoxA(hwndParent, "Could not get hash size!", "ChromePasswords", MB_ICONERROR); + + CryptDestroyHash(hash); + CryptReleaseContext(csp, 0); + pushstring(""); + return; + } + + byte* hashdata = new byte[len]; + if (!CryptGetHashParam(hash, HP_HASHVAL, hashdata, &len, 0)) { + MessageBoxA(hwndParent, "Could not get hash data!", "ChromePasswords", MB_ICONERROR); + + delete[] hashdata; + CryptDestroyHash(hash); + CryptReleaseContext(csp, 0); + pushstring(""); + return; + } + CryptDestroyHash(hash); + CryptReleaseContext(csp, 0); + + char* hashstring = new char[(len * 2) + 1]; + byte hexval = 0; + for (DWORD i = 0; i < len; i++) { + hexval = hashdata[i] / 0x10; + hashstring[i * 2] = GetHexChar(hexval); + hexval = hashdata[i] % 0x10; + hashstring[i * 2 + 1] = GetHexChar(hexval); + } + hashstring[len * 2] = 0; + + pushstring(hashstring); + + delete[] hashstring; + delete[] hashdata; +} + +BOOL WINAPI DllMain(HANDLE hInst, ULONG ul_reason_for_call, LPVOID lpReserved) { + return true; +} diff --git a/Resources/GoogleChromePortable/Other/Source/ChromePasswords/ChromePasswords/sqlite.cpp b/Resources/GoogleChromePortable/Other/Source/ChromePasswords/ChromePasswords/sqlite.cpp new file mode 100644 index 00000000..4ac259e1 --- /dev/null +++ b/Resources/GoogleChromePortable/Other/Source/ChromePasswords/ChromePasswords/sqlite.cpp @@ -0,0 +1,172 @@ +#include "sqlite.h" + +SQLite::SQLite(const char* filename) { + handle = 0; + int ret; + if ((ret = sqlite3_open(filename, &handle)) != SQLITE_OK || !handle) { + Close(); + throw ret; + } +} + +SQLite::SQLite(const char* filename, int flags, const char* zVfs) { + handle = 0; + int ret; + if ((ret = sqlite3_open_v2(filename, &handle, flags, zVfs)) != SQLITE_OK || !handle) { + Close(); + throw ret; + } +} + +SQLite::SQLite(const void* filename) { + handle = 0; + int ret; + if ((ret = sqlite3_open16(filename, &handle)) != SQLITE_OK || !handle) { + Close(); + throw ret; + } +} + +SQLite::~SQLite() { + Close(); +} + +int SQLite::Close() { + if (!handle) { + return SQLITE_OK; + } + + int ret = sqlite3_close(handle); + handle = 0; + return ret; +} + +SQLiteSTMT* SQLite::Prepare(const char* zSql, int nByte, const char** pzTail) { + return new SQLiteSTMT(handle, zSql, nByte, pzTail); +} + +SQLiteSTMT* SQLite::Prepare(const void* zSql, int nByte, const void** pzTail) { + return new SQLiteSTMT(handle, zSql, nByte, pzTail); +} + +SQLiteSTMT::SQLiteSTMT(sqlite3* db, const char* zSql, int nByte, const char** pzTail) { + this->db = db; + handle = 0; + int ret; + if ((ret = sqlite3_prepare_v2(db, zSql, nByte, &handle, pzTail)) != SQLITE_OK || !handle) { + Close(); + throw ret; + } +} + +SQLiteSTMT::SQLiteSTMT(sqlite3* db, const void* zSql, int nByte, const void** pzTail) { + this->db = db; + handle = 0; + int ret; + if ((ret = sqlite3_prepare16_v2(db, zSql, nByte, &handle, pzTail)) != SQLITE_OK || !handle) { + Close(); + throw ret; + } +} + +SQLiteSTMT::~SQLiteSTMT() { + Close(); +} + +int SQLiteSTMT::Bind(int iCol, double value) { + return sqlite3_bind_double(handle, iCol, value); +} + +int SQLiteSTMT::Bind(int iCol, sqlite3_int64 value) { + return sqlite3_bind_int64(handle, iCol, value); +} + +int SQLiteSTMT::Bind(int iCol) { + return sqlite3_bind_null(handle, iCol); +} + +int SQLiteSTMT::Bind(int iCol, const char* value, int len, void destructor(void*)) { + return sqlite3_bind_text(handle, iCol, value, len, destructor); +} + +int SQLiteSTMT::Bind(int iCol, const sqlite3_value* value) { + return sqlite3_bind_value(handle, iCol, value); +} + +int SQLiteSTMT::BindBlob(int iCol, const void* value, int len, void destructor(void*)) { + return sqlite3_bind_blob(handle, iCol, value, len, destructor); +} + +int SQLiteSTMT::BindInt(int iCol, int value) { + return sqlite3_bind_int(handle, iCol, value); +} + +int SQLiteSTMT::BindText16(int iCol, const void* value, int len, void destructor(void*)) { + return sqlite3_bind_text16(handle, iCol, value, len, destructor); +} + +int SQLiteSTMT::BindZeroBlob(int iCol, int len) { + return sqlite3_bind_zeroblob(handle, iCol, len); +} + +int SQLiteSTMT::ClearBindings() { + return sqlite3_clear_bindings(handle); +} + +int SQLiteSTMT::Close() { + if (!handle) { + return SQLITE_OK; + } + + int ret = sqlite3_finalize(handle); + handle = 0; + return ret; +} + +const void* SQLiteSTMT::ColumnBlob(int iCol) { + return sqlite3_column_blob(handle, iCol); +} + +int SQLiteSTMT::ColumnBytes(int iCol) { + return sqlite3_column_bytes(handle, iCol); +} + +int SQLiteSTMT::ColumnBytes16(int iCol) { + return sqlite3_column_bytes16(handle, iCol); +} + +double SQLiteSTMT::ColumnDouble(int iCol) { + return sqlite3_column_double(handle, iCol); +} + +int SQLiteSTMT::ColumnInt(int iCol) { + return sqlite3_column_int(handle, iCol); +} + +sqlite3_int64 SQLiteSTMT::ColumnInt64(int iCol) { + return sqlite3_column_int64(handle, iCol); +} + +const unsigned char* SQLiteSTMT::ColumnText(int iCol) { + return sqlite3_column_text(handle, iCol); +} + +const void* SQLiteSTMT::ColumnText16(int iCol) { + return sqlite3_column_text16(handle, iCol); +} + +int SQLiteSTMT::ColumnType(int iCol) { + return sqlite3_column_type(handle, iCol); +} + +sqlite3_value* SQLiteSTMT::ColumnValue(int iCol) { + return sqlite3_column_value(handle, iCol); +} + +int SQLiteSTMT::Reset() { + return sqlite3_reset(handle); +} + +int SQLiteSTMT::Step() { + return sqlite3_step(handle); +} \ No newline at end of file diff --git a/Resources/GoogleChromePortable/Other/Source/ChromePasswords/ChromePasswords/sqlite.h b/Resources/GoogleChromePortable/Other/Source/ChromePasswords/ChromePasswords/sqlite.h new file mode 100644 index 00000000..d4179380 --- /dev/null +++ b/Resources/GoogleChromePortable/Other/Source/ChromePasswords/ChromePasswords/sqlite.h @@ -0,0 +1,55 @@ +#pragma once + +#include + +class SQLiteSTMT { + public: + SQLiteSTMT(sqlite3*, const char*, int, const char**); + SQLiteSTMT(sqlite3*, const void*, int, const void**); + ~SQLiteSTMT(); + + int Bind(int, double); + int Bind(int, sqlite3_int64); + int Bind(int); + int Bind(int, const char*, int, void(void*)); + int Bind(int, const sqlite3_value*); + int BindBlob(int, const void*, int, void(void*)); + int BindInt(int, int); + int BindText16(int, const void*, int, void(void*)); + int BindZeroBlob(int, int); + + int ClearBindings(); + int Close(); + + const void* ColumnBlob(int); + int ColumnBytes(int); + int ColumnBytes16(int); + double ColumnDouble(int); + int ColumnInt(int); + sqlite3_int64 ColumnInt64(int); + const unsigned char* ColumnText(int); + const void* ColumnText16(int); + int ColumnType(int); + sqlite3_value* ColumnValue(int); + + int Reset(); + int Step(); + + private: + sqlite3* db; + sqlite3_stmt* handle; +}; + +class SQLite { + public: + SQLite(const char*); + SQLite(const char*, int, const char*); + SQLite(const void*); + ~SQLite(); + int Close(); + SQLiteSTMT* Prepare(const char*, int, const char**); + SQLiteSTMT* Prepare(const void*, int, const void**); + + private: + sqlite3* handle; +}; diff --git a/Resources/GoogleChromePortable/Other/Source/ChromePasswords/Release/ChromePasswords.dll b/Resources/GoogleChromePortable/Other/Source/ChromePasswords/Release/ChromePasswords.dll new file mode 100644 index 00000000..f32e0e8c Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/ChromePasswords/Release/ChromePasswords.dll differ diff --git a/Resources/GoogleChromePortable/Other/Source/ChromePasswords/build.txt b/Resources/GoogleChromePortable/Other/Source/ChromePasswords/build.txt new file mode 100644 index 00000000..b7b71686 --- /dev/null +++ b/Resources/GoogleChromePortable/Other/Source/ChromePasswords/build.txt @@ -0,0 +1,25 @@ +For your convenience, I have included a prebuilt ChromePasswords.dll in +Release. However you may build it yourself if you wish. + +Prerequisites: +- NSIS (http://nsis.sourceforge.net/Main_Page) +- SQLite3 source (http://www.sqlite.org/sqlite-amalgamation-3_6_20.zip) + +I used Visual Studio 2010 Beta 2 to build. Sorry users of previous VS, but I +don't think the solution/project file formats work with earlier versions, +you'll have to recreate them. Here's the appropriate settings to use (VS2010 +users will still have to fix paths in the project settings). + +- Turn off Precompiled Headers. +- Add NSIS\Examples\Plugin\nsis and the extracted SQLite3 source as include + directories to the project. +- Calling convention MUST be __cdecl (should be the default). +- Add NSIS\Examples\Plugin\nsis as a library directory to the project. +- Add crypt32.lib and pluginapi.lib (from NSIS) as linker dependancies. +- Set ChromePasswords.def as the Module Definition File. +- If you are using VS2008 or above, you may get an error on compile complaining + of a missing LIBC.LIB. As I understand it, this occurs because pluginapi.lib + was compiled with an older VS and LIBC.LIB is not needed with the newer ones. + You can add LIBC.LIB to the "Ignore Specific Default Libraries" linker + option to suppress this error. +- Add sqlite3.c from the SQLite3 source to the project. \ No newline at end of file diff --git a/Resources/GoogleChromePortable/Other/Source/GoogleChromePortable.ini b/Resources/GoogleChromePortable/Other/Source/GoogleChromePortable.ini new file mode 100644 index 00000000..f555a55b --- /dev/null +++ b/Resources/GoogleChromePortable/Other/Source/GoogleChromePortable.ini @@ -0,0 +1,83 @@ +; This file contains the Google Chrome Portable default settings. +; You can copy this file to GoogleChromePortable\ and change settings in it. +; Any settings missing from that file will have their defaults (listed here) +; used. + +[GoogleChromePortable] +Google ChromeDirectory=App\Chrome-bin +; The main app directory +ProfileDirectory=Data\profile +; The profile directory +SettingsDirectory=Data\settings +; The directory containing settings. Currently only used for the master +; password hash, if enabled. +AdditionalParameters= +; More parameters to pass to chrome.exe, use to enable experimental features. +Google ChromeExecutable=chrome.exe +; The EXE name +WaitForProgram=true +; Waits for the program to run. Don't set to false as it is required for +; cleanup to avoid leaving files on the local system, and to avoid breaking +; local Google Update and Chrome. +DisableSplashScreen=false +; Disables the splash screen, if it has been compiled into the launcher. +RunLocally=false +; Forces the profile to be copied to the local computer, as if the portable app +; is run from a CD. The profile will be copied back to the portable device +; afterwards (minus cache files). +CacheInTemp=true +; If this is true, the disk Cache will be set to use the local computer, and +; will be deleted on exit, even if RunLocally is false. + +; Note that using either of the previous two options can represent a risk of +; other users of the same computer discovering your internet surfing +; activities on that computer. Although Google Chrome Portable deletes the +; locally saved data when it is finished, it is possible this may not happen +; (Google Chrome Portable or the computer crashes) and even if it does, some +; of the data may be recoverable using disk recovery tools. For this reason +; it is recommended you use Incognito mode for any browsing you don't want +; others to know about. HTTPS browsing is never written to cache and thus not +; an issue. + +ImportJava=false +; If true, it will import the Java plugin from a copy of Java Portable if you +; have it installed, and if you do not already have a Java plugin installed in +; Google Chrome Portable. Note that Java Portable is not yet supported; the +; plugin will attempt to use a locally installed Java. +UsePAMLanguage=true +; Forces Google Chrome to use the language selected by PortableApps.com Menu +; when it is launched from PAM. The language is only used if Google Chrome +; supports it, otherwise it falls back to the user-selected language (or +; the local system language). If "true", you won't be able to change the +; language within Google Chrome when launched from PAM since PAM will override +; it. + +PortablePasswords=false +; Stores your saved passwords using a master password you select on startup, +; working around Chrome's normal mechanism of tying saved passwords to a local +; user account. This setting causes a prompt for the master password on +; every startup so it's opt-in. +EncryptPortablePasswords=true +; Uses a master password to re-encrypt passwords. If this is false, Portable +; Passwords will be insecurely stored as plaintext, but you will not need to +; use a master password. You may find setting this to false useful if you +; already use an encryption solution such as TrueCrypt to store +; GooglechromePortable. +; +; If you want to change any of the following: +; - The Portable Passwords algorithms, salts, or implementation in such a way +; that would break your existing Portable Passwords (through an upgrade of +; Google Chrome Portable that changes these). +; - Your master password, or lack of a master password. +; +; You can keep your Portable Passwords by first ensuring that your passwords +; have been successfully imported into your Google Chrome profile with the +; local user account. To do this, simply start GCP before upgrading it or +; changing your password or Portable Passwords settings. Then, delete the +; master password hash in Data\settings and the Portable Passwords files in +; your profile (by default, there is only one in Data\profile\Default. A +; power user with more than one profile will have one for each profile). +; Next, perform the upgrade, or change the settings, if you wanted to. Now +; run GCP and enter a new master password (or the same one, but it CAN be new +; if you want). Once you close Google Chrome the new Portable Passwords +; database will be constructed using your saved passwords from Google Chrome. \ No newline at end of file diff --git a/Resources/GoogleChromePortable/Other/Source/GoogleChromePortable.jpg b/Resources/GoogleChromePortable/Other/Source/GoogleChromePortable.jpg new file mode 100644 index 00000000..ec5cf5b9 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/GoogleChromePortable.jpg differ diff --git a/Resources/GoogleChromePortable/Other/Source/GoogleChromePortable.nsi b/Resources/GoogleChromePortable/Other/Source/GoogleChromePortable.nsi new file mode 100644 index 00000000..4661999e --- /dev/null +++ b/Resources/GoogleChromePortable/Other/Source/GoogleChromePortable.nsi @@ -0,0 +1,1189 @@ +;Copyright 2004-2019 John T. Haller +;Copyright 2008-2010 Dan Bugglin + +;Website: http://portableapps.com/apps/internet/google_chrome_portable + +;This software is OSI Certified Open Source Software. +;OSI Certified is a certification mark of the Open Source Initiative. + +;This program is free software; you can redistribute it and/or +;modify it under the terms of the GNU General Public License +;as published by the Free Software Foundation; either version 2 +;of the License, or (at your option) any later version. + +;This program is distributed in the hope that it will be useful, +;but WITHOUT ANY WARRANTY; without even the implied warranty of +;MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;GNU General Public License for more details. + +;You should have received a copy of the GNU General Public License +;along with this program; if not, write to the Free Software +;Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + +!define PORTABLEAPPNAME "Google Chrome Portable" +!define APPNAME "Google Chrome" +!define NAME "GoogleChromePortable" +!define VER "2.3.6.13" +!define WEBSITE "portableapps.com/apps/internet/google_chrome_portable" +!define DEFAULTEXE "chrome.exe" +!define DEFAULTAPPDIR "Chrome-bin" +!define LAUNCHERLANGUAGE "English" +!define CLSID {8A69D345-D564-463c-AFF1-A69D9E530F96} +!define CLSIDSXS {4ea16ac7-fd5a-47c3-875b-dbf4a2008c20} + +; Comment out the following line to disable the splash screen. +;!define USEDEVSPLASH + +;!define CHROMESXSMODE + +;=== Program Details +Name "${PORTABLEAPPNAME}" +OutFile "..\..\${NAME}.exe" +Caption "${PORTABLEAPPNAME} | PortableApps.com" +VIProductVersion "${VER}" +VIAddVersionKey ProductName "${PORTABLEAPPNAME}" +VIAddVersionKey Comments "Allows ${APPNAME} to be run from a removable drive. For additional details, visit ${WEBSITE}" +VIAddVersionKey CompanyName "PortableApps.com" +VIAddVersionKey LegalCopyright "Dan Bugglin, John T. Haller" +VIAddVersionKey FileDescription "${PORTABLEAPPNAME}" +VIAddVersionKey FileVersion "${VER}" +VIAddVersionKey ProductVersion "${VER}" +VIAddVersionKey InternalName "${PORTABLEAPPNAME}" +VIAddVersionKey LegalTrademarks "Google Chrome is a product of Google, Inc. Google is a trademark of Google, Inc." +VIAddVersionKey OriginalFilename "${NAME}.exe" + +;=== Runtime Switches +CRCCheck On +WindowIcon Off +SilentInstall Silent +AutoCloseWindow True +RequestExecutionLevel user +XPStyle on +Unicode false +ManifestDPIAware true + +; Best Compression +SetCompress Auto +SetCompressor /SOLID lzma +SetCompressorDictSize 32 +SetDatablockOptimize On + +;=== Include +;!include "MUI.nsh" +!include "Attrib.nsh" +!include "Registry.nsh" +!include "FileFunc.nsh" +!include "LogicLib.nsh" +!include "TextFunc.nsh" +!insertmacro GetParameters +!include "WordFunc.nsh" +!insertmacro GetParent +!addplugindir . +!include "dialogs.nsh" +!addplugindir ChromePasswords\Release + +;=== Program Icon +Icon "..\..\App\AppInfo\appicon.ico" + +;;=== Icon & Stye === +;!define MUI_ICON "..\..\App\AppInfo\appicon.ico" +;BrandingText "PortableApps.com - Your Digital Life, Anywhere" +;MiscButtonText "" "" "" "$(LauncherNextButton)" +;InstallButtonText "$(LauncherNextButton)" + +;=== Pages +;Page custom ShowLauncherOptions LeaveLauncherOptions "" +;!insertmacro MUI_PAGE_INSTFILES + +;=== Languages +LoadLanguageFile "${NSISDIR}\Contrib\Language files\${LAUNCHERLANGUAGE}.nlf" +!include PortableApps.comLauncherLANG_${LAUNCHERLANGUAGE}.nsh + +;=== Variables +Var PROGRAMDIRECTORY +Var PROFILEDIRECTORY +Var SETTINGSDIRECTORY +Var ADDITIONALPARAMETERS +Var URI +Var EXECSTRING +Var PROGRAMEXECUTABLE +!ifdef USEDEVSPLASH +Var DISABLESPLASHSCREEN +!endif +;Var DISABLEINTELLIGENTSTART +Var CACHEINTEMP +Var IMPORTJAVA +Var RUNLOCALLY +Var WAITFORPROGRAM +Var SECONDARYLAUNCH +Var MISSINGFILEORPATH +Var ChromeVer +Var OldChromeVer +!ifdef CHROMESXSMODE +Var OldChromeVer2 +Var bolCLSIDSXSExists +!endif +Var TempProfileDir +Var ReadOnlyMedia +Var OldChromeAssociation +Var PortableAppsPath +Var UsePAMLanguage +Var PortablePasswords +Var MasterPassword +Var EncryptPortablePasswords +Var bolCLSIDExists +Var bolMozillaPluginsHKLMExists +Var bolMozillaPluginsHKCUExists +Var bolGoogleChromeCrashRegistryExists +Var bolGoogleChromeBeaconRegistryExists +Var bolGoogleChromeBLFinchListRegistryExists +Var bolGoogleChromeStabilityMetricsRegistryExists +Var bolSwiftShaderExists +Var bolBrowserExitCodesExists +Var bolSoftwareRemovalToolExists +Var bolCrashpadExists +Var bolRegistryExtensionsExists +Var bolRegistryPreReadFieldTrialExists +Var bolGoogleNoChromeOfferUntilHKLMRegistryExists +Var bolGoogleNoToolbarOfferUntilHKLMRegistryExists +Var bolGoogleNoChromeExtensionsHKLMRegistryExists +Var bolGoogleNoChromePreferenceMACsRegistryExists +Var bolPoliciesHKCUExists +Var bolPoliciesHKLMExists + +;Var /global JavaVer +;Var /global FixJava +;Var /global OldJavaVer +;Var /global OldJavaPath +;Var /global OldJavaPath2 + +; Load default settings +Function INIDefaults + StrCpy $ReadOnlyMedia "false" + + ; The default exe can be in one of two places, find it. + + ${If} ${FileExists} "$EXEDIR\App\${DEFAULTAPPDIR}\${DEFAULTEXE}" + StrCpy $PROGRAMDIRECTORY "$EXEDIR\App\${DEFAULTAPPDIR}" + ${Else} + ${If} ${FileExists} "$EXEDIR\${NAME}\App\${DEFAULTAPPDIR}\${DEFAULTEXE}" + StrCpy $PROGRAMDIRECTORY "$EXEDIR\${NAME}\App\${DEFAULTAPPDIR}" + ${EndIf} + ${EndIf} + ; If we fail, wait until we load the INI before erroring out. We might still find it. + + StrCpy $ADDITIONALPARAMETERS "" + StrCpy $WAITFORPROGRAM "true" + StrCpy $PROGRAMEXECUTABLE "${DEFAULTEXE}" + StrCpy $RUNLOCALLY "false" +!ifdef USEDEVSPLASH + StrCpy $DISABLESPLASHSCREEN "false" +!endif +; StrCpy $DISABLEINTELLIGENTSTART "false" + StrCpy $PROFILEDIRECTORY "$EXEDIR\Data\profile" + StrCpy $SETTINGSDIRECTORY "$EXEDIR\Data\settings" + StrCpy $CACHEINTEMP "true" + StrCpy $IMPORTJAVA "false" + StrCpy $UsePAMLanguage "true" + StrCpy $PortablePasswords "false" + StrCpy $EncryptPortablePasswords "true" +FunctionEnd + +; Read in INI settings +Function ReadINI + ; Prepopulate with default values + Call INIDefaults + + ${IfNot} ${FileExists} "$EXEDIR\${NAME}.ini" + ; No INI + Return + ${EndIf} + + ; Only read in present values + ReadINIStr $0 "$EXEDIR\${NAME}.ini" "${NAME}" "${APPNAME}Directory" + ${If} $0 != "" + StrCpy $PROGRAMDIRECTORY "$EXEDIR\$0" + ${EndIf} + + ReadINIStr $0 "$EXEDIR\${NAME}.ini" "${NAME}" "ProfileDirectory" + ${If} $0 != "" + StrCpy $PROFILEDIRECTORY "$EXEDIR\$0" + ${EndIf} + + ReadINIStr $0 "$EXEDIR\${NAME}.ini" "${NAME}" "SettingsDirectory" + ${If} $0 != "" + StrCpy $SETTINGSDIRECTORY "$EXEDIR\$0" + ${EndIf} + + ReadINIStr $0 "$EXEDIR\${NAME}.ini" "${NAME}" "AdditionalParameters" + ${If} $0 != "" + StrCpy $ADDITIONALPARAMETERS $0 + ${EndIf} + + ReadINIStr $0 "$EXEDIR\${NAME}.ini" "${NAME}" "${APPNAME}Executable" + ${If} $0 != "" + StrCpy $PROGRAMEXECUTABLE $0 + ${EndIf} + + ReadINIStr $0 "$EXEDIR\${NAME}.ini" "${NAME}" "WaitForProgram" + ${If} $0 != "" + StrCpy $WAITFORPROGRAM $0 + ${EndIf} + +!ifdef USEDEVSPLASH + ReadINIStr $0 "$EXEDIR\${NAME}.ini" "${NAME}" "DisableSplashScreen" + ${If} $0 != "" + StrCpy $DISABLESPLASHSCREEN $0 + ${EndIf} +!endif + +; ReadINIStr $0 "$EXEDIR\${NAME}.ini" "${NAME}" "DisableIntelligentStart" +; ${If} $0 != "" +; StrCpy $DISABLEINTELLIGENTSTART $0 +; ${EndIf} + + ReadINIStr $0 "$EXEDIR\${NAME}.ini" "${NAME}" "RunLocally" + ${If} $0 != "" + StrCpy $RUNLOCALLY $0 + ${EndIf} + + ReadINIStr $0 "$EXEDIR\${NAME}.ini" "${NAME}" "CacheInTemp" + ${If} $0 != "" + StrCpy $CACHEINTEMP $0 + ${EndIf} + + ReadINIStr $0 "$EXEDIR\${NAME}.ini" "${NAME}" "ImportJava" + ${If} $0 != "" + StrCpy $IMPORTJAVA $0 + ${EndIf} + + ReadINIStr $0 "$EXEDIR\${NAME}.ini" "${NAME}" "UsePAMLanguage" + ${If} $0 != "" + StrCpy $UsePAMLanguage $0 + ${EndIf} + + ReadINIStr $0 "$EXEDIR\${NAME}.ini" "${NAME}" "PortablePasswords" + ${If} $0 != "" + StrCpy $PortablePasswords $0 + ${EndIf} + + ReadINIStr $0 "$EXEDIR\${NAME}.ini" "${NAME}" "EncryptPortablePasswords" + ${If} $0 != "" + StrCpy $EncryptPortablePasswords $0 + ${EndIf} + + ; Missing values produce errors, clear them. + ClearErrors +FunctionEnd + +Function CheckForProgram + ; Make sure the program is there + + ${IfNot} ${FileExists} "$PROGRAMDIRECTORY\$PROGRAMEXECUTABLE" + StrCpy $MISSINGFILEORPATH $PROGRAMEXECUTABLE + MessageBox MB_OK|MB_ICONEXCLAMATION `$(LauncherFileNotFound)` + Abort + ${EndIf} +FunctionEnd + +; Check to see if the portable device is writable +Function CheckWritable + ClearErrors + FileOpen $R0 "$PROGRAMDIRECTORY\writetest.temp" w + ${If} ${Errors} + ClearErrors + StrCpy $ReadOnlyMedia "true" + ; Ask the user if they want to copy their profile locally + MessageBox MB_YESNO|MB_ICONQUESTION `$(LauncherAskCopyLocal)` IDYES EndMessageBox1 + MessageBox MB_OK|MB_ICONINFORMATION `$(LauncherNoReadOnly)` + Abort + EndMessageBox1: + ; Return a value for $RUNLOCALLY + Push "true" + Return + ${EndIf} + FileClose $R0 + Delete "$PROGRAMDIRECTORY\writetest.temp" + ; Return a value for $RUNLOCALLY + Push "false" +FunctionEnd + +; Copy the profile locally +Function CopyLocal + RMDir /r "$TEMP\${NAME}\" + CreateDirectory $TEMP\${NAME}\profile + CopyFiles /SILENT $PROFILEDIRECTORY\*.* $TEMP\${NAME}\profile + + Push $TEMP\${NAME} + Call Attrib +FunctionEnd + +; Get the chrome version, and read and cache the local chrome settings from registry +Function GetChromeSettings + ${Locate} "$PROGRAMDIRECTORY" "/L=D /M=*.*.*.* /G=0" "FoundDir" + + ReadRegStr $OldChromeVer HKCU "Software\Google\Update\Clients\${CLSID}" "pv" + WriteRegStr HKCU "Software\Google\Update\Clients\${CLSID}" "pv" $ChromeVer + +!ifdef CHROMESXSMODE + ReadRegStr $OldChromeVer2 HKCU "Software\Google\Update\Clients\${CLSIDSXS}" "pv" + WriteRegStr HKCU "Software\Google\Update\Clients\${CLSIDSXS}" "pv" $ChromeVer +!endif + + ReadRegStr $OldChromeAssociation HKCR Applications\chrome.exe\shell\open\command "" +FunctionEnd + +Function FoundDir + ; Locate is buggy and incorrectly trests *.* as * so we have to check ourselves to see if the mask actually matched! + ${WordFind} $R7 "." "*" $R0 + ${If} $R0 == "3" + StrCpy $ChromeVer $R7 + ${EndIf} + Push $0 +FunctionEnd + +; Move a local profile back (unless running from CD) and clean up +Function MoveProfileBack + ; Keep deleted files from reappearing on portable device + RMDir /r $TempProfileDir + CreateDirectory $TempProfileDir + + ; Excludes cache files which we don't care about + FindFirst $0 $1 "$TEMP\${NAME}\profile\*" + ${While} $1 != "" + ${If} ${FileExists} "$TEMP\${NAME}\profile\$1\Cache" + RMDir /r "$TEMP\${NAME}\profile\$1\Cache" + ${EndIf} + ${If} ${FileExists} "$TEMP\${NAME}\profile\$1\Media Cache" + RMDir /r "$TEMP\${NAME}\profile\$1\Media Cache" + ${EndIf} + FindNext $0 $1 + ${EndWhile} + FindClose $0 + + CopyFiles /SILENT "$TEMP\${NAME}\profile\*" "$TempProfileDir" + + RMDir /r "$TEMP\${NAME}\profile\" +FunctionEnd + +Function SetUpAdditionalPlugins + ${GetParent} $EXEDIR $PortableAppsPath + ${If} ${FileExists} "$PortableAppsPath\CommonFiles\Java\bin\plugin2\*.*" + System::Call 'Kernel32::SetEnvironmentVariable(t, t) i("JAVA_HOME", "$PortableAppsPath\CommonFiles\Java").r0' + StrCpy $ADDITIONALPARAMETERS `$ADDITIONALPARAMETERS --extra-plugin-dir="$PortableAppsPath\CommonFiles\Java\bin\plugin2"` + ${ElseIf} ${FileExists} "$PortableAppsPath\CommonFiles\Java\bin\new_plugin\*.*" + System::Call 'Kernel32::SetEnvironmentVariable(t, t) i("JAVA_HOME", "$PortableAppsPath\CommonFiles\Java").r0' + StrCpy $ADDITIONALPARAMETERS `$ADDITIONALPARAMETERS --extra-plugin-dir="$PortableAppsPath\CommonFiles\Java\bin\new_plugin"` + ${EndIf} + ${If} ${FileExists} "$PortableAppsPath\CommonFiles\Silverlight\files\*.*" + StrCpy $ADDITIONALPARAMETERS `$ADDITIONALPARAMETERS --extra-plugin-dir="$PortableAppsPath\CommonFiles\Silverlight\files"` + ${EndIf} + ${If} ${FileExists} "$PortableAppsPath\CommonFiles\Flash\files\*.*" + StrCpy $ADDITIONALPARAMETERS `$ADDITIONALPARAMETERS --extra-plugin-dir="$PortableAppsPath\CommonFiles\Flash\files"` + ${EndIf} + ${If} ${FileExists} "$PortableAppsPath\CommonFiles\BrowserPlugins\*.*" + StrCpy $ADDITIONALPARAMETERS `$ADDITIONALPARAMETERS --extra-plugin-dir="$PortableAppsPath\CommonFiles\BrowserPlugins"` + ${EndIf} +FunctionEnd + +; Get the language code from PortableApps Menu, if provided +Function GetLanguageCode + ${WordFind} $ADDITIONALPARAMETERS "--lang=" * $R0 + ${If} $R0 > 0 + Push "" + Return + ${EndIf} + + ClearErrors + ReadEnvStr $R0 "PortableApps.comLanguageCode" + ${If} ${Errors} + Push "" + Return + ${EndIf} + + ${If} ${FileExists} "$PROGRAMDIRECTORY\$ChromeVer\Locales\$R0.dll" + Push $R0 + Return + ${EndIf} + + ${WordFind} $R0 "-" "+1" $R0 + ${If} $R0 == "" + Push "" + Return + ${EndIf} + + ${If} ${FileExists} "$PROGRAMDIRECTORY\$ChromeVer\Locales\$R0.dll" + Push $R0 + Return + ${EndIf} + + Push "" + Return +FunctionEnd + +; http://nsis.sourceforge.net/Remove_leading_and_trailing_whitespaces_from_a_string +; Re-implemented using LogicLib +Function LTrim + Exch $R1 ; Original string + Push $R2 + + ${While} 1 == 1 + StrCpy $R2 $R1 1 + ${Select} $R2 + ${Case4} " " "$\r" "$\n" "$\t" + StrCpy $R1 $R1 "" 1 + ${Continue} + ${CaseElse} + ${Break} + ${EndSelect} + ${EndWhile} + + Pop $R2 + Exch $R1 +FunctionEnd + +Function RTrim + Exch $R1 ; Original string + Push $R2 + + ${While} 1 == 1 + StrCpy $R2 $R1 1 -1 + ${Select} $R2 + ${Case4} " " "$\r" "$\n" "$\t" + StrCpy $R1 $R1 -1 + ${Continue} + ${CaseElse} + ${Break} + ${EndSelect} + ${EndWhile} + + Pop $R2 + Exch $R1 +FunctionEnd + +Function Trim + Call LTrim + Call RTrim +FunctionEnd + +; http://nsis.sourceforge.net/Another_String_Replace_(and_Slash/BackSlash_Converter)#StrRep +; I'm not even gonna try to rewrite this with LogicLib, I'd probably break it +Function StrRep + Exch $R4 ; $R4 = Replacement String + Exch + Exch $R3 ; $R3 = String to replace (needle) + Exch 2 + Exch $R1 ; $R1 = String to do replacement in (haystack) + Push $R2 ; Replaced haystack + Push $R5 ; Len (needle) + Push $R6 ; len (haystack) + Push $R7 ; Scratch reg + StrCpy $R2 "" + StrLen $R5 $R3 + StrLen $R6 $R1 +loop: + StrCpy $R7 $R1 $R5 + StrCmp $R7 $R3 found + StrCpy $R7 $R1 1 ; - optimization can be removed if U know len needle=1 + StrCpy $R2 "$R2$R7" + StrCpy $R1 $R1 $R6 1 + StrCmp $R1 "" done loop +found: + StrCpy $R2 "$R2$R4" + StrCpy $R1 $R1 $R6 $R5 + StrCmp $R1 "" done loop +done: + StrCpy $R3 $R2 + Pop $R7 + Pop $R6 + Pop $R5 + Pop $R2 + Pop $R1 + Pop $R4 + Exch $R3 +FunctionEnd + +; Fixes a Google Chrome preferences' file paths +Function FixPreferences + Pop $R8 ; Profile name + Pop $R1 ; New filename + Pop $R0 ; Old filename + StrCpy $R2 "" ; Location stack + + ClearErrors + FileOpen $R3 $R0 r ; Open old file for read + ${If} ${Errors} + Return ; Skip on error + ${EndIf} + + ClearErrors + FileOpen $R4 $R1 w ; Open new file for write + ${If} ${Errors} + FileClose $R3 + Return ; Skip on error + ${EndIf} + + ${While} 1 == 1 ; While we still have stuff to read + ClearErrors + FileRead $R3 $R5 + ${If} ${Errors} ; EOF, we're done + FileClose $R3 + FileClose $R4 + Return + ${EndIf} + + StrCpy $R6 $R5 + Push $R6 + Call Trim + Pop $R6 + StrCpy $R7 $R6 1 -1 ; Get the character at the end of the line + + ${If} $R7 == "{" ; Entering a section + ClearErrors + ${WordFind} $R5 '"' E+2 $R7 + ${IfNot} ${Errors} + ${StrFilter} $R7 - "" "" $R7 + ${If} $R2 == "" + StrCpy $R2 $R7 ; Push on the stack + ${Else} + StrCpy $R2 "$R2 $R7" ; Push on the stack + ${EndIf} + ${EndIf} + ${Else} + StrCpy $R7 $R6 1 ; Get the character at the start + ${If} $R7 == "}" ; Leaving a section + ClearErrors + ${WordFind} $R2 ' ' E-1{{ $R2 ; Pop the stack + ${If} ${Errors} + StrCpy $R2 "" + ${Else} + Push $R2 + Call Trim + Pop $R2 + ${EndIf} + ${ElseIf} $R2 == "extensions theme images" + ; We want to manipulate paths in this section! + + ClearErrors + ${WordFind} $R5 '": "' E+2{{ $R6 ; Part before the path + + ${IfNot} ${Errors} + StrCpy $R7 "\\$R8\\Extensions\\" + ; A substring to look for + + ; Double slashes are intentional, for some reason they + ; are escaped in Preferences + + ClearErrors + ${WordFind} $R5 $R7 E-1 $R9 + ; Is it in the string? + ; If so we want what comes after it (image filename). + ${If} ${Errors} + ; If not, we check for the other possibility + ; Don't wanna use just $R8 cause it could be + ; any generic name that could appear multiple + ; times... trouble! + + StrCpy $R7 "\\$R8\\Cached Theme Images\\" + ClearErrors + ${WordFind} $R5 $R7 E-1 $R9 + ${If} ${Errors} + StrCpy $R9 "" + ${EndIf} + ${EndIf} + + ${If} $R9 != "" + Push $PROFILEDIRECTORY ; Get the new path + Push "\" + Push "\\" + Call StrRep + Pop $9 + ; Escape backslashes. Since paths can't + ; contain quotes there's no reason to escape + ; anything else AFAIK. + + StrCpy $R5 $R6$9$R7$R9 + ; R6 is what comes before, R7 and R9 what + ; after. So put it all together. + ${EndIf} + ${EndIf} + ${EndIf} + ${EndIf} + + FileWrite $R4 $R5 + ${EndWhile} +FunctionEnd + +; Iterates through all Preferences (technically a Chrome profile may contain serveral) +Function FixAllPreferences + FindFirst $8 $7 "$PROFILEDIRECTORY\*" + ${While} $7 != "" + ${If} ${FileExists} "$PROFILEDIRECTORY\$7\Preferences" + Push "$PROFILEDIRECTORY\$7\Preferences" + Push "$PROFILEDIRECTORY\$7\Preferences.GCP" + Push "$7" + Call FixPreferences + + Delete "$PROFILEDIRECTORY\$7\Preferences" + Rename "$PROFILEDIRECTORY\$7\Preferences.GCP" "$PROFILEDIRECTORY\$7\Preferences" + ${EndIf} + FindNext $8 $7 + ${EndWhile} + FindClose $8 +FunctionEnd + +; Imports all passwords stored in Passwords Portable for use in Google Chrome by decrypting them with the master password and then re-encrypting them with the local user account. +Function ImportPasswords + ${If} $PortablePasswords != "true" + Return + ${EndIf} + + FindFirst $8 $7 "$PROFILEDIRECTORY\*" + ${While} $7 != "" + ${If} ${FileExists} "$PROFILEDIRECTORY\$7\Portable Passwords" + ${AndIf} ${FileExists} "$PROFILEDIRECTORY\$7\Login Data" + ChromePasswords::ImportPasswords "$PROFILEDIRECTORY\$7\Portable Passwords" "$PROFILEDIRECTORY\$7\Login Data" $MasterPassword + ${EndIf} + FindNext $8 $7 + ${EndWhile} + FindClose $8 +FunctionEnd + +; Exports all passwords stored in Login Data by decrypting using the local user account and encrypting using our master password. +Function ExportPasswords + ${If} $PortablePasswords != "true" + Return + ${EndIf} + + FindFirst $8 $7 "$PROFILEDIRECTORY\*" + ${While} $7 != "" + ${If} ${FileExists} "$PROFILEDIRECTORY\$7\Login Data" + ChromePasswords::ExportPasswords "$PROFILEDIRECTORY\$7\Login Data" "$PROFILEDIRECTORY\$7\Portable Passwords" $MasterPassword + ${EndIf} + FindNext $8 $7 + ${EndWhile} + FindClose $8 +FunctionEnd + +; Run the portable app +Function RunProgram + ;=== Get any passed parameters + ${GetParameters} $0 + + ${If} $CACHEINTEMP != "false" + CreateDirectory $TEMP\${NAME} + StrCpy $1 `--disk-cache-dir="$TEMP\${NAME}"` + ${Else} + StrCpy $1 "" + ${EndIf} + + StrCpy $URI '$1 $0' + +!ifdef CHROMESXSMODE + StrCpy $EXECSTRING `"$PROGRAMDIRECTORY\$PROGRAMEXECUTABLE" --chrome-sxs --user-data-dir="$PROFILEDIRECTORY"` +!else + StrCpy $EXECSTRING `"$PROGRAMDIRECTORY\$PROGRAMEXECUTABLE" --user-data-dir="$PROFILEDIRECTORY"` +!endif + + ${If} $UsePAMLanguage != "false" + Call GetLanguageCode + Pop $0 + + ${If} $0 != "" + StrCpy $EXECSTRING `$EXECSTRING --lang=$0` + ${EndIf} + ${EndIf} + + ${If} $SECONDARYLAUNCH != "true" + Call SetUpAdditionalPlugins + Call FixAllPreferences + Call ImportPasswords + + ${registry::SaveKey} HKEY_CURRENT_USER\Software\Google\Common\Rlz $TEMP\${NAME}\rlz.reg "/A=0 /D=1 /G=1 /B=0" $0 + DeleteRegKey HKCU "Software\Google\Common\Rlz" + + ClearErrors + + + ${If} ${FileExists} "$LOCALAPPDATA\Google\Chrome\User Data\Crashpad" + StrCpy $bolCrashpadExists true + ${EndIf} + + ${If} ${FileExists} "$LOCALAPPDATA\Google\Chrome\User Data\SwiftShader" + StrCpy $bolSwiftShaderExists true + ${EndIf} + + ${registry::KeyExists} "HKCU\SOFTWARE\MozillaPlugins" $0 + ${If} $0 == -1 + StrCpy $bolMozillaPluginsHKCUExists false + ${Else} + StrCpy $bolMozillaPluginsHKCUExists true + ${EndIf} + ${registry::KeyExists} "HKLM\SOFTWARE\MozillaPlugins" $0 + ${If} $0 == -1 + StrCpy $bolMozillaPluginsHKLMExists false + ${Else} + StrCpy $bolMozillaPluginsHKLMExists true + ${EndIf} + ${registry::KeyExists} "HKCU\Software\Google\Chrome\BrowserCrashDumpAttempts" $0 + ${If} $0 == -1 + StrCpy $bolGoogleChromeCrashRegistryExists false + ${Else} + StrCpy $bolGoogleChromeCrashRegistryExists true + ${EndIf} + ${registry::KeyExists} "HKCU\Software\Google\Chrome\BLBeacon" $0 + ${If} $0 == -1 + StrCpy $bolGoogleChromeBeaconRegistryExists false + ${Else} + StrCpy $bolGoogleChromeBeaconRegistryExists true + ${registry::MoveKey} "HKCU\Software\Google\Chrome\BLBeacon" "HKCU\Software\Google\Chrome\BLBeacon-BackupByGoogleChromePortable" $R0 + ${EndIf} + ${registry::KeyExists} "HKCU\Software\Google\Chrome\BLFinchList" $0 + ${If} $0 == -1 + StrCpy $bolGoogleChromeBLFinchListRegistryExists false + ${Else} + StrCpy $bolGoogleChromeBLFinchListRegistryExists true + ${registry::MoveKey} "HKCU\Software\Google\Chrome\BLFinchList" "HKCU\Software\Google\Chrome\BLFinchList-BackupByGoogleChromePortable" $R0 + ${EndIf} + ${registry::KeyExists} "HKCU\Software\Google\Chrome\StabilityMetrics" $0 + ${If} $0 == -1 + StrCpy $bolGoogleChromeStabilityMetricsRegistryExists false + ${Else} + StrCpy $bolGoogleChromeStabilityMetricsRegistryExists true + ${registry::MoveKey} "HKCU\Software\Google\Chrome\StabilityMetrics" "HKCU\Software\Google\Chrome\StabilityMetrics-BackupByGoogleChromePortable" $R0 + ${EndIf} + + ${registry::KeyExists} "HKCU\Software\Google\Chrome\BrowserExitCodes" $0 + ${If} $0 == -1 + StrCpy $bolBrowserExitCodesExists false + ${Else} + StrCpy $bolBrowserExitCodesExists true + ${registry::MoveKey} "HKCU\Software\Google\Chrome\BrowserExitCodes" "HKCU\Software\Google\Chrome\BrowserExitCodes-BackupByGoogleChromePortable" $R0 + ${EndIf} + + ${registry::KeyExists} "HKCU\Software\Google\Software Removal Tool" $0 + ${If} $0 == -1 + StrCpy $bolSoftwareRemovalToolExists false + ${Else} + StrCpy $bolSoftwareRemovalToolExists true + ${registry::MoveKey} "HKCU\Software\Google\Software Removal Tool" "HKCU\Software\Google\Software Removal Tool-BackupByGoogleChromePortable" $R0 + ${EndIf} + + ${registry::KeyExists} "HKCU\Software\Google\Chrome\Extensions" $0 + ${If} $0 == -1 + StrCpy $bolRegistryExtensionsExists false + ${Else} + StrCpy $bolRegistryExtensionsExists true + ${EndIf} + + ${registry::KeyExists} "HKCU\Software\Google\Chrome\PreReadFieldTrial" $0 + ${If} $0 == -1 + StrCpy $bolRegistryPreReadFieldTrialExists false + ${Else} + StrCpy $bolRegistryPreReadFieldTrialExists true + ${EndIf} + + ${registry::KeyExists} "HKCU\Software\Google\Update\ClientState\${CLSID}" $0 + ${If} $0 == -1 + StrCpy $bolCLSIDExists false + ${Else} + StrCpy $bolCLSIDExists true + ${EndIf} + + ${registry::KeyExists} "HKLM\SOFTWARE\Google\No Chrome Offer Until" $0 + ${If} $0 == -1 + StrCpy $bolGoogleNoChromeOfferUntilHKLMRegistryExists false + ${Else} + StrCpy $bolGoogleNoChromeOfferUntilHKLMRegistryExists true + ${EndIf} + + ${registry::KeyExists} "HKLM\SOFTWARE\Google\No Toolbar Offer Until" $0 + ${If} $0 == -1 + StrCpy $bolGoogleNoToolbarOfferUntilHKLMRegistryExists false + ${Else} + StrCpy $bolGoogleNoToolbarOfferUntilHKLMRegistryExists true + ${EndIf} + + ${registry::KeyExists} "HKLM\SOFTWARE\Google\Chrome\Extensions" $0 + ${If} $0 == -1 + StrCpy $bolGoogleNoChromeExtensionsHKLMRegistryExists false + ${Else} + StrCpy $bolGoogleNoChromeExtensionsHKLMRegistryExists true + ${EndIf} + + ${registry::KeyExists} "HKLM\SOFTWARE\Google\No Toolbar Offer Until" $0 + ${If} $0 == -1 + StrCpy $bolGoogleNoToolbarOfferUntilHKLMRegistryExists false + ${Else} + StrCpy $bolGoogleNoToolbarOfferUntilHKLMRegistryExists true + ${EndIf} + + ${registry::KeyExists} "HKCU\Software\Google\Chrome\PreferenceMACs" $0 + ${If} $0 == -1 + StrCpy $bolGoogleNoChromePreferenceMACsRegistryExists false + ${Else} + StrCpy $bolGoogleNoChromePreferenceMACsRegistryExists true + ${EndIf} + + ${registry::KeyExists} "HKCU\Software\Policies\Google\Chrome" $0 + ${If} $0 == -1 + StrCpy $bolPoliciesHKCUExists false + ${Else} + StrCpy $bolPoliciesHKCUExists true + ${registry::MoveKey} "HKCU\Software\Policies\Google\Chrome" "HKCU\Software\Policies\Google\Chrome-BackupByGoogleChromePortable" $R0 + ${EndIf} + + ${registry::KeyExists} "HKLM\Software\Policies\Google\Chrome" $0 + ${If} $0 == -1 + StrCpy $bolPoliciesHKLMExists false + ${Else} + StrCpy $bolPoliciesHKLMExists true + ${registry::MoveKey} "HKLM\Software\Policies\Google\Chrome" "HKLM\Software\Policies\Google\Chrome-BackupByGoogleChromePortable" $R0 + ${EndIf} + + +!ifdef CHROMESXSMODE + ClearErrors + ${registry::KeyExists} "HKCU\Software\Google\Update\ClientState\${CLSIDSXS}" $0 + ${If} $0 == -1 + ${AndIf} $1 == "" + StrCpy $bolCLSIDSXSExists false + ${Else} + StrCpy $bolCLSIDSXSExists true + ${EndIf} +!endif + ${EndIf} + + ${If} $ADDITIONALPARAMETERS != "" + ;=== Additional Parameters + StrCpy $EXECSTRING `$EXECSTRING $ADDITIONALPARAMETERS` + ${EndIf} + + StrCpy $EXECSTRING `$EXECSTRING $URI` + + ${If} $SECONDARYLAUNCH != "true" + ${AndIf} $WAITFORPROGRAM == "true" + ExecWait $EXECSTRING + + CheckRunning: + Sleep 2000 + FindProcDLL::FindProc "chrome.exe" + StrCmp $R0 "1" CheckRunning NoLongerRunning + + NoLongerRunning: + ${Else} + ; Other chrome already running + Exec $EXECSTRING + Return + ${EndIf} + + Call ExportPasswords + + ${If} $RUNLOCALLY == "true" + StrCpy $0 "${NAME}.exe" + KillProc::FindProcesses + + ${If} $0 > 1 + Return + ${EndIf} + + FileOpen $0 "$SETTINGSDIRECTORY\GoogleChromePortableShuttingDown" w + FileClose $0 + + ${If} $ReadOnlyMedia != "true" + Call MoveProfileBack + ${EndIf} + ${EndIf} + + ${If} $bolCLSIDExists == false + DeleteRegKey HKCU "Software\Google\Update\ClientState\${CLSID}" + ${EndIf} +!ifdef CHROMESXSMODE + ${If} $bolCLSIDSXSExists == false + DeleteRegKey HKCU "Software\Google\Update\ClientState\${CLSIDSXS}" + ${EndIf} +!endif + + DeleteRegKey HKCU "Software\Google\Common\Rlz" + ${If} ${FileExists} "$TEMP\${NAME}\rlz.reg" + ;${registry::RestoreKey} $TEMP\${NAME}\rlz.reg $0 + ; The operation is NOT complete when it returns! + ; This results in a nasty race condition when we delete $TEMP\${NAME} + ; often before regedit.exe has started up, causing it to not find + ; the file. + + ; I'll do better in one line: + ExecWait `regedit /s "$TEMP\${NAME}\rlz.reg"` + ${EndIf} + + EnumRegValue $0 HKLM "Software\Google\Update\ClientStateMedium\${CLSID}" 0 + EnumRegValue $1 HKLM "Software\Google\Update\ClientStateMedium\${CLSID}" 1 + + ${If} $0 == "usagestats" + ${AndIf} $1 == "" + DeleteRegKey /ifempty HKLM "Software\Google\Update\ClientStateMedium\${CLSID}" + DeleteRegKey /ifempty HKLM Software\Google\Update\ClientStateMedium + ${EndIf} + +!ifdef CHROMESXSMODE + EnumRegValue $0 HKLM "Software\Google\Update\ClientStateMedium\${CLSIDSXS}" 0 + EnumRegValue $1 HKLM "Software\Google\Update\ClientStateMedium\${CLSIDSXS}" 1 + + ${If} $0 == "usagestats" + ${AndIf} $1 == "" + DeleteRegKey /ifempty HKLM "Software\Google\Update\ClientStateMedium\${CLSIDSXS}" + DeleteRegKey /ifempty HKLM Software\Google\Update\ClientStateMedium + ${EndIf} +!endif + ${If} $bolMozillaPluginsHKLMExists == false + DeleteRegKey /ifempty HKLM Software\MozillaPlugins + ${EndIf} + + ${IfNot} ${FileExists} "$LOCALAPPDATA\Google\Chrome\User Data\Local State" + SetShellVarContext current + + ${If} $bolSwiftShaderExists != true + RMDir /r "$LOCALAPPDATA\Google\Chrome\User Data\SwiftShader" + ${EndIf} + + ${If} $bolCrashpadExists != true + RMDir /r "$LOCALAPPDATA\Google\Chrome\User Data\Crashpad" + ${EndIf} + + RMDir "$LOCALAPPDATA\Google\Chrome\User Data" + RMDir "$LOCALAPPDATA\Google\Chrome" + RMDir "$LOCALAPPDATA\Google" + ; This is safe since without /r the directories will only be removed if empty + ${EndIf} + + ${If} ${FileExists} "$PROGRAMDIRECTORY\debug.log" + Delete "$PROGRAMDIRECTORY\debug.log" + ${EndIf} + + ${If} ${FileExists} "$TEMP\${NAME}" + RMDir /r "$TEMP\${NAME}\" + ${EndIf} + ${If} ${FileExists} "$SETTINGSDIRECTORY\GoogleChromePortableShuttingDown" + Delete "$SETTINGSDIRECTORY\GoogleChromePortableShuttingDown" + ${EndIf} + + ${If} $OldChromeVer == "" + DeleteRegKey HKCU "Software\Google\Update\Clients\${CLSID}" + ${Else} + WriteRegStr HKCU "Software\Google\Update\Clients\${CLSID}" "pv" $OldChromeVer + ${EndIf} +!ifdef CHROMESXSMODE + ${If} $OldChromeVer2 == "" + DeleteRegKey HKCU "Software\Google\Update\Clients\${CLSIDSXS}" + ${Else} + WriteRegStr HKCU "Software\Google\Update\Clients\${CLSIDSXS}" "pv" $OldChromeVer2 + ${EndIf} +!endif + + DeleteRegKey /ifempty HKCU Software\Google\Update\ClientState + DeleteRegKey /ifempty HKCU Software\Google\Update\Clients + + EnumRegValue $0 HKCU Software\Google\Update 0 + ${If} $0 == "" + DeleteRegKey /ifempty HKCU Software\Google\Update + ${EndIf} + + DeleteRegKey /ifempty HKCU Software\Google\Common + + ${If} $bolGoogleChromeCrashRegistryExists == false + DeleteRegKey HKCU Software\Google\Chrome\BrowserCrashDumpAttempts + ${EndIf} + + DeleteRegKey HKCU Software\Google\Chrome\BLBeacon + ${If} $bolGoogleChromeBeaconRegistryExists == true + ${registry::MoveKey} "HKCU\Software\Google\Chrome\BLBeacon-BackupByGoogleChromePortable" "HKCU\Software\Google\Chrome\BLBeacon" $R0 + ${EndIf} + + DeleteRegKey HKCU Software\Google\Chrome\BLFinchList + ${If} $bolGoogleChromeBLFinchListRegistryExists == true + ${registry::MoveKey} "HKCU\Software\Google\Chrome\BLFinchList-BackupByGoogleChromePortable" "HKCU\Software\Google\Chrome\BLFinchList" $R0 + ${EndIf} + + DeleteRegKey HKCU Software\Google\Chrome\StabilityMetrics + ${If} $bolGoogleChromeStabilityMetricsRegistryExists == true + ${registry::MoveKey} "HKCU\Software\Google\Chrome\StabilityMetrics-BackupByGoogleChromePortable" "HKCU\Software\Google\Chrome\StabilityMetrics" $R0 + ${EndIf} + + DeleteRegKey HKCU Software\Google\Chrome\BrowserExitCodes + ${If} $bolBrowserExitCodesExists == true + ${registry::MoveKey} "HKCU\Software\Google\Chrome\BrowserExitCodes-BackupByGoogleChromePortable" "HKCU\Software\Google\Chrome\BrowserExitCodes" $R0 + ${EndIf} + + DeleteRegKey HKCU "Software\Google\Software Removal Tool" + ${If} $bolSoftwareRemovalToolExists == true + ${registry::MoveKey} "HKCU\Software\Google\Software Removal Tool-BackupByGoogleChromePortable" "HKCU\Software\Google\Software Removal Tool" $R0 + ${EndIf} + + ${If} $bolRegistryExtensionsExists == false + DeleteRegKey HKCU "Software\Google\Chrome\Extensions" + ${EndIf} + + ${If} $bolRegistryPreReadFieldTrialExists == false + DeleteRegKey HKCU "Software\Google\Chrome\PreReadFieldTrial" + ${EndIf} + + ${If} $bolGoogleNoChromeOfferUntilHKLMRegistryExists == false + DeleteRegKey HKLM "Software\Google\No Chrome Offer Until" + ${EndIf} + + ${If} $bolGoogleNoToolbarOfferUntilHKLMRegistryExists == false + DeleteRegKey HKLM "Software\Google\No Toolbar Offer Until" + ${EndIf} + + ${If} $bolGoogleNoChromeExtensionsHKLMRegistryExists == false + DeleteRegKey HKLM "Software\Google\Chrome\Extensions" + ${EndIf} + + ${If} $bolGoogleNoChromePreferenceMACsRegistryExists == false + DeleteRegKey HKCU "Software\Google\Chrome\PreferenceMACs" + ${EndIf} + + DeleteRegKey HKCU "Software\Policies\Google\Chrome" + ${If} $bolPoliciesHKCUExists == true + ${registry::MoveKey} "HKCU\Software\Policies\Google\Chrome-BackupByGoogleChromePortable" "HKCU\Software\Policies\Google\Chrome" $R0 + ${EndIf} + + DeleteRegKey HKLM "Software\Policies\Google\Chrome" + ${If} $bolPoliciesHKLMExists == true + ${registry::MoveKey} "HKLM\Software\Policies\Google\Chrome-BackupByGoogleChromePortable" "HKLM\Software\Policies\Google\Chrome" $R0 + ${EndIf} + + DeleteRegKey /ifempty HKCU Software\Google\Chrome + DeleteRegKey /ifempty HKCU Software\Google + DeleteRegKey /ifempty HKLM Software\Google\Chrome + DeleteRegKey /ifempty HKLM Software\Google + ${If} $bolMozillaPluginsHKCUExists == false + DeleteRegKey /ifempty HKCU Software\MozillaPlugins + ${EndIf} + + ${If} $OldChromeAssociation == "" + DeleteRegKey HKCR Applications\chrome.exe + DeleteRegKey HKCR .htm\OpenWithList\chrome.exe + DeleteRegKey HKCR .html\OpenWithList\chrome.exe + ${Else} + WriteRegStr HKCR Applications\chrome.exe\shell\open\command "" $OldChromeAssociation + ${EndIf} +; ${If} $FixJava == "true" +; ${If} $OldJavaVer == "" +; DeleteRegValue HKLM "SOFTWARE\JavaSoft\Java Runtime Environment" "BrowserJavaVersion" +; ${Else} +; WriteRegStr HKLM "SOFTWARE\JavaSoft\Java Runtime Environment" "BrowserJavaVersion" $OldJavaVer +; ${EndIf} +; +; ${If} $OldJavaPath == "" +; DeleteRegKey HKLM "SOFTWARE\JavaSoft\Java Runtime Environment\$JavaVer" +; ${Else} +; WriteRegStr HKLM "SOFTWARE\JavaSoft\Java Runtime Environment\$JavaVer" "JavaHome" $OldJavaPath +; ${EndIf} +; +; ${If} $OldJavaPath2 == "" +; DeleteRegKey HKLM "SOFTWARE\JavaSoft\Java Plug-in\$JavaVer" +; ${Else} +; WriteRegStr HKLM "SOFTWARE\JavaSoft\Java Plug-in\$JavaVer" "JavaHome" $OldJavaPath2 +; ${EndIf} +; ${EndIf} +FunctionEnd + +; Read settings +Function Init + Call ReadINI + ${IfNot} ${FileExists} `$PROFILEDIRECTORY\*.*` + CreateDirectory $PROFILEDIRECTORY + CopyFiles /SILENT `$EXEDIR\App\DefaultData\profile\*.*` $PROFILEDIRECTORY + ${EndIf} + Call CheckForProgram + + StrCpy $TempProfileDir $PROFILEDIRECTORY + + StrCpy $0 "${NAME}.exe" + KillProc::FindProcesses + ${If} $0 > 1 + ; One of these is us. If there is another, Google Chrome Portable is already running. + ${If} ${FileExists} $SETTINGSDIRECTORY\GoogleChromePortableShuttingDown + ; The running Google Chrome Portable is busy copying the profile back. + + MessageBox MB_ICONEXCLAMATION `$(LauncherShuttingDown)` + Abort + ${EndIf} + + StrCpy $SECONDARYLAUNCH "true" + ${EndIf} + + ${If} ${FileExists} $SETTINGSDIRECTORY\GoogleChromePortableShuttingDown + Delete $SETTINGSDIRECTORY\GoogleChromePortableShuttingDown + ${EndIf} + + ${If} $RUNLOCALLY != "true" + Call CheckWritable + Pop $RUNLOCALLY + ${EndIf} + + StrCpy $MasterPassword "" + + ${If} $PortablePasswords == "true" + ${AndIf} $EncryptPortablePasswords != "false" + ${AndIf} $SECONDARYLAUNCH != "true" + ${InputPwdBox} "$(LauncherOptionsHeader)" "$(LauncherOptionsIntro)" "" "32767" "$(LauncherOptionsOK)" "$(LauncherOptionsCancel)" 0 + StrCpy $MasterPassword $0 + + ${If} $0 == "" + Abort + ${EndIf} + + ChromePasswords::HashPassword $MasterPassword + Pop $0 + + ${If} $0 == "" + MessageBox MB_ICONEXCLAMATION `$(LauncherDLLError)` + StrCpy $PortablePasswords "false" + ${Else} + ${If} ${FileExists} "$SETTINGSDIRECTORY\masterpassword.hash" + FileOpen $2 "$SETTINGSDIRECTORY\masterpassword.hash" r + FileRead $2 $1 + FileClose $2 + + ${If} $0 != $1 + MessageBox MB_OK|MB_ICONEXCLAMATION `$(LauncherInvalidPassword)` + Abort + ${EndIf} + ${Else} + ${IfNot} ${FileExists} $SETTINGSDIRECTORY + CreateDirectory $SETTINGSDIRECTORY + ${EndIf} + + FileOpen $1 "$SETTINGSDIRECTORY\masterpassword.hash" w + FileWrite $1 $0 + FileClose $1 + ${EndIf} + ${EndIf} + ${EndIf} + + ${If} $RUNLOCALLY == "true" + ${If} $SECONDARYLAUNCH != "true" + Call CopyLocal + ${EndIf} + StrCpy $PROFILEDIRECTORY $TEMP\${NAME}\profile + ${EndIf} + + ${If} $SECONDARYLAUNCH != "true" +!ifdef USEDEVSPLASH + ${If} $DISABLESPLASHSCREEN != "true" + InitPluginsDir + File /oname=$PLUGINSDIR\splash.jpg "${NAME}.jpg" + newadvsplash::show /NOUNLOAD 2000 200 0 0xFF00FF /L $PLUGINSDIR\splash.jpg + ${EndIf} +!endif + Call GetChromeSettings + ${EndIf} +FunctionEnd + +Section "Main" + Call Init + Call RunProgram + ${registry::Unload} +SectionEnd \ No newline at end of file diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Afrikaans.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Afrikaans.nsh new file mode 100644 index 00000000..e0264cc7 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Afrikaans.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Albanian.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Albanian.nsh new file mode 100644 index 00000000..a1950b11 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Albanian.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Arabic.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Arabic.nsh new file mode 100644 index 00000000..512e7ff2 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Arabic.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Basque.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Basque.nsh new file mode 100644 index 00000000..52e68aac Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Basque.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Belarusian.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Belarusian.nsh new file mode 100644 index 00000000..e92d7a55 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Belarusian.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Bosnian.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Bosnian.nsh new file mode 100644 index 00000000..cdbf623d Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Bosnian.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Breton.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Breton.nsh new file mode 100644 index 00000000..3081288b Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Breton.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Bulgarian.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Bulgarian.nsh new file mode 100644 index 00000000..09783b8c Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Bulgarian.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Catalan.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Catalan.nsh new file mode 100644 index 00000000..d6514c03 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Catalan.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Cibemba.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Cibemba.nsh new file mode 100644 index 00000000..4c5c8fa3 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Cibemba.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Croatian.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Croatian.nsh new file mode 100644 index 00000000..114b1b37 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Croatian.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Czech.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Czech.nsh new file mode 100644 index 00000000..4329149e Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Czech.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Danish.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Danish.nsh new file mode 100644 index 00000000..73a74241 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Danish.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Dutch.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Dutch.nsh new file mode 100644 index 00000000..a3cac833 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Dutch.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Efik.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Efik.nsh new file mode 100644 index 00000000..a93d0e3c Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Efik.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/English.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/English.nsh new file mode 100644 index 00000000..607e5699 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/English.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Esperanto.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Esperanto.nsh new file mode 100644 index 00000000..8ca91747 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Esperanto.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Estonian.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Estonian.nsh new file mode 100644 index 00000000..c201bbd8 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Estonian.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Farsi.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Farsi.nsh new file mode 100644 index 00000000..3e04adea Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Farsi.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Finnish.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Finnish.nsh new file mode 100644 index 00000000..d21af0d9 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Finnish.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/French.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/French.nsh new file mode 100644 index 00000000..77a697a8 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/French.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Galician.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Galician.nsh new file mode 100644 index 00000000..36820b4e Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Galician.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Georgian.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Georgian.nsh new file mode 100644 index 00000000..245383bd Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Georgian.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/German.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/German.nsh new file mode 100644 index 00000000..73a2fac1 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/German.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Greek.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Greek.nsh new file mode 100644 index 00000000..1a470762 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Greek.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Hebrew.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Hebrew.nsh new file mode 100644 index 00000000..5a039885 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Hebrew.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Hungarian.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Hungarian.nsh new file mode 100644 index 00000000..de65a225 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Hungarian.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Icelandic.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Icelandic.nsh new file mode 100644 index 00000000..047e2144 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Icelandic.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Igbo.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Igbo.nsh new file mode 100644 index 00000000..90880602 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Igbo.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Indonesian.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Indonesian.nsh new file mode 100644 index 00000000..d96166cb Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Indonesian.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Irish.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Irish.nsh new file mode 100644 index 00000000..201ef627 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Irish.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Italian.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Italian.nsh new file mode 100644 index 00000000..af51a6f5 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Italian.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Japanese.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Japanese.nsh new file mode 100644 index 00000000..8e8b29bf Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Japanese.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Khmer.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Khmer.nsh new file mode 100644 index 00000000..0d1bebf7 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Khmer.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Korean.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Korean.nsh new file mode 100644 index 00000000..7665742f Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Korean.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Kurdish.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Kurdish.nsh new file mode 100644 index 00000000..a09bec42 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Kurdish.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Latvian.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Latvian.nsh new file mode 100644 index 00000000..a572757b Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Latvian.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Lithuanian.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Lithuanian.nsh new file mode 100644 index 00000000..af6e7680 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Lithuanian.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Luxembourgish.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Luxembourgish.nsh new file mode 100644 index 00000000..bf901275 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Luxembourgish.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Macedonian.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Macedonian.nsh new file mode 100644 index 00000000..cf36651b Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Macedonian.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Malagasy.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Malagasy.nsh new file mode 100644 index 00000000..7e13619b Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Malagasy.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Malay.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Malay.nsh new file mode 100644 index 00000000..e2f3dab2 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Malay.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Mongolian.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Mongolian.nsh new file mode 100644 index 00000000..66f85965 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Mongolian.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Norwegian.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Norwegian.nsh new file mode 100644 index 00000000..fd76e075 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Norwegian.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/NorwegianNynorsk.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/NorwegianNynorsk.nsh new file mode 100644 index 00000000..983681b4 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/NorwegianNynorsk.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Pashto.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Pashto.nsh new file mode 100644 index 00000000..09135654 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Pashto.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Polish.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Polish.nsh new file mode 100644 index 00000000..6a1cf28d Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Polish.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Portuguese.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Portuguese.nsh new file mode 100644 index 00000000..c638b59b Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Portuguese.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/PortugueseBR.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/PortugueseBR.nsh new file mode 100644 index 00000000..6e249835 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/PortugueseBR.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Romanian.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Romanian.nsh new file mode 100644 index 00000000..6ed43d56 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Romanian.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Russian.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Russian.nsh new file mode 100644 index 00000000..dd1629b5 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Russian.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Serbian.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Serbian.nsh new file mode 100644 index 00000000..1e66d368 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Serbian.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/SerbianLatin.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/SerbianLatin.nsh new file mode 100644 index 00000000..d760f81d Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/SerbianLatin.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/SimpChinese.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/SimpChinese.nsh new file mode 100644 index 00000000..65edfb62 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/SimpChinese.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Slovak.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Slovak.nsh new file mode 100644 index 00000000..dcc72f81 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Slovak.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Slovenian.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Slovenian.nsh new file mode 100644 index 00000000..b9d23ca8 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Slovenian.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Spanish.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Spanish.nsh new file mode 100644 index 00000000..3bd4938d Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Spanish.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/SpanishInternational.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/SpanishInternational.nsh new file mode 100644 index 00000000..e334befd Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/SpanishInternational.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Swahili.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Swahili.nsh new file mode 100644 index 00000000..888b769f Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Swahili.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Swedish.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Swedish.nsh new file mode 100644 index 00000000..501340f7 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Swedish.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Thai.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Thai.nsh new file mode 100644 index 00000000..fe8a1b53 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Thai.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/TradChinese.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/TradChinese.nsh new file mode 100644 index 00000000..6f887f23 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/TradChinese.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Turkish.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Turkish.nsh new file mode 100644 index 00000000..c651720a Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Turkish.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Ukrainian.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Ukrainian.nsh new file mode 100644 index 00000000..6411bbe0 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Ukrainian.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Uzbek.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Uzbek.nsh new file mode 100644 index 00000000..805b7e28 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Uzbek.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Valencian.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Valencian.nsh new file mode 100644 index 00000000..0dc64650 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Valencian.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Vietnamese.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Vietnamese.nsh new file mode 100644 index 00000000..6b2c0ad8 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Vietnamese.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Welsh.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Welsh.nsh new file mode 100644 index 00000000..56aa6df3 Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Welsh.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/Languages/Yoruba.nsh b/Resources/GoogleChromePortable/Other/Source/Languages/Yoruba.nsh new file mode 100644 index 00000000..cae4a0ac Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/Languages/Yoruba.nsh differ diff --git a/Resources/GoogleChromePortable/Other/Source/License.txt b/Resources/GoogleChromePortable/Other/Source/License.txt new file mode 100644 index 00000000..f119115a --- /dev/null +++ b/Resources/GoogleChromePortable/Other/Source/License.txt @@ -0,0 +1,344 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc. + 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Library General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, +THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT +PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED +IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, +EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY +AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL +NECESSARY SERVICING, REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR +AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY +OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM +AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING +ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM +(INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING +RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY +OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS +BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) 19yy + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) 19yy name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + , 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Library General +Public License instead of this License. \ No newline at end of file diff --git a/Resources/GoogleChromePortable/Other/Source/PortableApps.comLauncherLANG_ENGLISH.nsh b/Resources/GoogleChromePortable/Other/Source/PortableApps.comLauncherLANG_ENGLISH.nsh new file mode 100644 index 00000000..64051120 --- /dev/null +++ b/Resources/GoogleChromePortable/Other/Source/PortableApps.comLauncherLANG_ENGLISH.nsh @@ -0,0 +1,22 @@ +LangString LauncherFileNotFound ${LANG_ENGLISH} "${PORTABLEAPPNAME} cannot be started. You may wish to re-install to fix this issue. (ERROR: $MISSINGFILEORPATH could not be found)" +LangString LauncherAlreadyRunning ${LANG_ENGLISH} "Another instance of ${APPNAME} is already running. Please close other instances of ${APPNAME} before launching ${PORTABLEAPPNAME}." +LangString LauncherAskCopyLocal ${LANG_ENGLISH} "${PORTABLEAPPNAME} appears to be running from a location that is read-only. Would you like to temporarily copy it to the local hard drive and run it from there?$\n$\nPrivacy Note: If you say Yes, your personal data within ${PORTABLEAPPNAME} will be temporarily copied to a local drive. Although this copy of your data will be deleted when you close ${PORTABLEAPPNAME}, it may be possible for someone else to access your data later." +LangString LauncherNoReadOnly ${LANG_ENGLISH} "${PORTABLEAPPNAME} can not run directly from a read-only location and will now close." +LangString LauncherPathTooLong ${LANG_ENGLISH} "The path to ${PORTABLEAPPNAME} is too long. Please shorten the path by eliminating some parent directories or shortening directory names." +;LangString LauncherNextButton ${LANG_ENGLISH} "&Next >" +LangString LauncherOptionsHeader ${LANG_ENGLISH} "Enter Master Password" +;LangString LauncherOptionsHeader2 ${LANG_ENGLISH} "Enter your master password to allow Google Chrome to use your saved passwords." +LangString LauncherOptionsIntro ${LANG_ENGLISH} "If this is the first time you are using the Portable Passwords system, you can choose your password now." +LangString LauncherOptionsValidate ${LANG_ENGLISH} "You must enter a password to use the Portable Passwords system!" +LangString LauncherInvalidPassword ${LANG_ENGLISH} "The provided password does not match the master password!" +LangString LauncherOptionsOK ${LANG_ENGLISH} "OK" +LangString LauncherOptionsCancel ${LANG_ENGLISH} "Cancel" +LangString LauncherDLLError ${LANG_ENGLISH} "There was a problem with Portable Passwords, so Portable Passwords has been disabled for this ${PORTABLEAPPNAME} session." +LangString LauncherShuttingDown ${LANG_ENGLISH} "${PORTABLEAPPNAME} is still busy shutting down. Please wait for a bit before trying to launch ${PORTABLEAPPNAME} again." + +;LangString MUI_TEXT_INSTALLING_TITLE ${LANG_ENGLISH} "Starting up..." +;LangString MUI_TEXT_INSTALLING_SUBTITLE ${LANG_ENGLISH} "Please wait..." +;LangString MUI_TEXT_FINISH_TITLE ${LANG_ENGLISH} "" +;LangString MUI_TEXT_FINISH_SUBTITLE ${LANG_ENGLISH} "" +;LangString MUI_TEXT_ABORT_TITLE ${LANG_ENGLISH} "" +;LangString MUI_TEXT_ABORT_SUBTITLE ${LANG_ENGLISH} "" \ No newline at end of file diff --git a/Resources/GoogleChromePortable/Other/Source/PortableApps.comLauncherOptionsForm.ini b/Resources/GoogleChromePortable/Other/Source/PortableApps.comLauncherOptionsForm.ini new file mode 100644 index 00000000..1f84c3fe --- /dev/null +++ b/Resources/GoogleChromePortable/Other/Source/PortableApps.comLauncherOptionsForm.ini @@ -0,0 +1,18 @@ +[Settings] +NumFields=2 +[Field 1] +Type=label +Text=If this is the first time you are using the Portable Password system, you can choose your password now. Otherwise, you must enter the password you selected previously. +Left=0 +Right=-1 +Top=0 +Bottom=20 +[Field 2] +Type=Password +Text= +MinLen=1 +ValidateText=You must enter a password to use the Portable Password system! +Left=0 +Right=-1 +Top=25 +Bottom=37 \ No newline at end of file diff --git a/Resources/GoogleChromePortable/Other/Source/TBProgress.nsh b/Resources/GoogleChromePortable/Other/Source/TBProgress.nsh new file mode 100644 index 00000000..4e40fdf7 --- /dev/null +++ b/Resources/GoogleChromePortable/Other/Source/TBProgress.nsh @@ -0,0 +1,59 @@ +!include "LogicLib.nsh" + +!ifndef CLSCTX_INPROC_SERVER + !define CLSCTX_INPROC_SERVER 1 +!endif + +!define CLSID_ITaskbarList {56fdf344-fd6d-11d0-958a-006097c9a090} + +!define IID_ITaskbarList3 {ea1afb91-9e28-4b86-90e9-9e9f8a5eefaf} +!define ITaskbarList3->SetProgressState $ITaskbarList3->10 +!define ITaskbarList3->SetProgressValue $ITaskbarList3->9 + +!define TBPF_NOPROGRESS 0x00000000 ; Normal state / no progress bar +!define TBPF_INDETERMINATE 0x00000001 ; Marquee style progress bar +!define TBPF_NORMAL 0x00000002 ; Standard progress bar +!define TBPF_ERROR 0x00000004 ; Red taskbar button to indicate an error occurred +!define TBPF_PAUSED 0x00000008 ; Yellow taskbar button to indicate user attention + ; (input) is required to resume progress + +Var ITaskbarList3 + +!macro TBProgress_Init + !ifndef TBProgressInitialized + !define TBProgressInitialized + ${Unless} ${Silent} + System::Call "ole32::CoCreateInstance( \ + g '${CLSID_ITaskbarList}', \ + i 0, \ + i ${CLSCTX_INPROC_SERVER}, \ + g '${IID_ITaskbarList3}', \ + *i .s)" + Pop $ITaskbarList3 + ${Else} + StrCpy $ITaskbarList3 0 + ${EndIf} + !endif +!macroend +!define TBProgress_Init `!insertmacro TBProgress_Init` + +!macro TBProgress_Progress Val Max + ${TBProgress_Init} + ${If} $ITaskbarList3 <> 0 + System::Call "${ITaskbarList3->SetProgressValue}(i$HWNDPARENT, l${Val}, l${Max})" + ${EndIf} +!macroend +!define TBProgress_Progress `!insertmacro TBProgress_Progress` + +!macro TBProgress Val + ${TBProgress_Progress} ${Val} 100 +!macroend +!define TBProgress `!insertmacro TBProgress` + +!macro TBProgress_State State + ${TBProgress_Init} + ${If} $ITaskbarList3 <> 0 + System::Call "${ITaskbarList3->SetProgressState}(i$HWNDPARENT, i${TBPF_${State}})" + ${EndIf} +!macroend +!define TBProgress_State `!insertmacro TBProgress_State` \ No newline at end of file diff --git a/Resources/GoogleChromePortable/Other/Source/attrib.nsh b/Resources/GoogleChromePortable/Other/Source/attrib.nsh new file mode 100644 index 00000000..6c870525 --- /dev/null +++ b/Resources/GoogleChromePortable/Other/Source/attrib.nsh @@ -0,0 +1,54 @@ +;outfile attrib.exe +;name attrib + +; Attrib +; +; Script to quickly set the FileAttribute +; of many files in a dir. +; +; Usage: +; Push "Dir" +; Call Attrib +; +; Notice that SetFileAttributes cannot take +; variables as "Attribute" so edit the script +; if you want some other attribute(s) to be +; assigned to the files. +; +; This might be a handy script when copying +; files from CD that need to be edited later. +; +; By: Hendri Adriaens +; HendriAdriaens@hotmail.com + +;Section +; The demo zip includes two text-files. +; Check that they are "read-only" and +; then compile and run the script. +;Push $EXEDIR\prob +;Call Attrib +;Sectionend + +Function Attrib + Exch $1 ; Dir + Push $2 + Push $3 + FindFirst $2 $3 "$1\*.*" + StrCmp $3 "" exitloop + loop: + StrCmp $3 "" exitloop + StrCmp $3 "." next + StrCmp $3 ".." next + IfFileExists "$1\$3\*.*" next + ; SetFileAttributes does not accept variables as attribute, + ; so manually set this to the necessary value. + SetFileAttributes "$1\$3" 0 + next: + FindNext $2 $3 + Goto loop + exitloop: + FindClose $2 + Pop $3 + Pop $2 + Pop $1 +FunctionEnd \ No newline at end of file diff --git a/Resources/GoogleChromePortable/Other/Source/dialogs.nsh b/Resources/GoogleChromePortable/Other/Source/dialogs.nsh new file mode 100644 index 00000000..a630460b --- /dev/null +++ b/Resources/GoogleChromePortable/Other/Source/dialogs.nsh @@ -0,0 +1,56 @@ +# "Dialogs header file by Joel Almeida Garca" + +#include once this header file +!ifndef DIALOGS_NSH + !define DIALOGS_NSH + !verbose push + !verbose 3 + + !ifndef LOGICLIB + #Add logic library + !include "LogicLib.nsh" + !endif + + # Global stuff + !define ISTRUE 1 + !define ISFALSE 0 + !define NULL "" + + # Returning Vars + !define VAR_0 0 # $0 + !define VAR_1 1 # $1 + !define VAR_2 2 # $2 + !define VAR_3 3 # $3 + !define VAR_4 4 # $4 + !define VAR_5 5 # $5 + !define VAR_6 6 # $6 + !define VAR_7 7 # $7 + !define VAR_8 8 # $8 + !define VAR_9 9 # $9 + !define VAR_R0 10 # $R0 + !define VAR_R1 11 # $R1 + !define VAR_R2 12 # $R2 + !define VAR_R3 13 # $R3 + !define VAR_R4 14 # $R4 + !define VAR_R5 15 # $R5 + !define VAR_R6 16 # $R6 + !define VAR_R7 17 # $R7 + !define VAR_R8 18 # $R8 + !define VAR_R9 19 # $R9 + !define VAR_CMDLINE 20 # $CMDLINE + !define VAR_INSTDIR 21 # $INSTDIR + !define VAR_OUTDIR 22 # $OUTDIR + !define VAR_EXEDIR 23 # $EXEDIR + !define VAR_LANG 24 # $LANGUAGE + + # Function prototypes + !define OpenBox 'dialogsEx::FileBox ""' + !define SaveBox 'dialogsEx::FileBox "1"' + !define ClassicFolderBox 'dialogsEx::FolderBox ""' + !define ModernFolderBox 'dialogsEx::FolderBox "1"' + !define InputTextBox 'dialogsEx::InputBox ""' + !define InputPwdBox 'dialogsEx::InputBox "1"' + !define InputRegBox 'dialogsEx::InputRegBox' + + !verbose pop +!endif \ No newline at end of file diff --git a/Resources/GoogleChromePortable/Other/Source/dialogsEx.dll b/Resources/GoogleChromePortable/Other/Source/dialogsEx.dll new file mode 100644 index 00000000..ae9af69a Binary files /dev/null and b/Resources/GoogleChromePortable/Other/Source/dialogsEx.dll differ diff --git a/Resources/GoogleChromePortable/help.html b/Resources/GoogleChromePortable/help.html new file mode 100644 index 00000000..3bed2766 --- /dev/null +++ b/Resources/GoogleChromePortable/help.html @@ -0,0 +1,610 @@ + + + + Google Chrome Portable Help + + + + + + + +
+

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...

+ +

Make a Donation - 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. + +
    3. 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.

      +
    4. +
    +
  2. + +
  3. 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.

    +
  4. +
+ +

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. +
  3. 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.
  4. +
  5. HKEY_CURRENT_USER\Software\Google\Update\ClientState\{8A69D345-D564-463c-AFF1-A69D9E530F96} should be deleted if Chrome is not installed locally.
  6. +
  7. HKEY_CURRENT_USER\Software\Google\Update\ClientState\{4ea16ac7-fd5a-47c3-875b-dbf4a2008c20} should be deleted if Chrome CANARY is not installed locally.
  8. +
  9. HKEY_CURRENT_USER\Software\Google\Rlz should be deleted.
  10. +
  11. 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.

    +
  12. + +
  13. Make sure there is no Data\settings\GoogleChromePortableShuttingDown and delete it if it exists.
  14. +
  15. %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.
  16. +
  17. %TEMP%\GoogleChromePortable\rlz.reg should be merged into the registry if it exists.
  18. +
  19. %TEMP%\GoogleChromePortable should be deleted.
  20. + +
+ +

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).
  • +
+
+ + + \ No newline at end of file diff --git a/Resources/SeleniumWebDrivers/Chrome/chromedriver_win32 v76.0.3809.126.zip b/Resources/SeleniumWebDrivers/Chrome/chromedriver_win32 v76.0.3809.126.zip deleted file mode 100644 index 2857a95d..00000000 Binary files a/Resources/SeleniumWebDrivers/Chrome/chromedriver_win32 v76.0.3809.126.zip and /dev/null differ diff --git a/Resources/SeleniumWebDrivers/Chrome/chromedriver_win32 v79.0.3945.36.zip b/Resources/SeleniumWebDrivers/Chrome/chromedriver_win32 v79.0.3945.36.zip deleted file mode 100644 index c85e65d2..00000000 Binary files a/Resources/SeleniumWebDrivers/Chrome/chromedriver_win32 v79.0.3945.36.zip and /dev/null differ diff --git a/Resources/SeleniumWebDrivers/Chrome/chromedriver_win32 v80.0.3987.16.zip b/Resources/SeleniumWebDrivers/Chrome/chromedriver_win32 v80.0.3987.16.zip deleted file mode 100644 index 03b8cf45..00000000 Binary files a/Resources/SeleniumWebDrivers/Chrome/chromedriver_win32 v80.0.3987.16.zip and /dev/null differ diff --git a/Resources/SeleniumWebDrivers/Chrome/chromedriver_win32 v80.0.3987.16/chromedriver.exe b/Resources/SeleniumWebDrivers/Chrome/chromedriver_win32 v84.0.4147.30/chromedriver.exe similarity index 52% rename from Resources/SeleniumWebDrivers/Chrome/chromedriver_win32 v80.0.3987.16/chromedriver.exe rename to Resources/SeleniumWebDrivers/Chrome/chromedriver_win32 v84.0.4147.30/chromedriver.exe index d419a51d..bd438ce3 100644 Binary files a/Resources/SeleniumWebDrivers/Chrome/chromedriver_win32 v80.0.3987.16/chromedriver.exe and b/Resources/SeleniumWebDrivers/Chrome/chromedriver_win32 v84.0.4147.30/chromedriver.exe differ