Where does Chrome save the Home or Start page URL? I want to access it programmatically using C#.
Click the General tab. Under "Home page," enter: www.google.com .
Default locations are:
Windows XP
Google Chrome:
C:\Documents and Settings\<username>\Local Settings\Application Data\Google\Chrome\User Data\Default
Chromium:C:\Documents and Settings\<username>\Local Settings\Application Data\Chromium\User Data\DefaultVista / 7
Google Chrome:
C:\Users\<username>\AppData\Local\Google\Chrome\User Data\Default
Chromium:C:\Users\<username>\AppData\Local\Chromium\User Data\DefaultMac OS X
Google Chrome:
~/Library/Application Support/Google/Chrome/Default
Chromium:~/Library/Application Support/Chromium/DefaultLinux
Google Chrome:
~/.config/google-chrome/Default
Chromium:~/.config/chromium/Default
Source: Google Chromium user data directory default locations. ( link )
In amount of time I spent on writing this, this was the shortest and most robust example I could think of (I completely ignored the fact, that user could use different location then default). Must say, it was bit trickier, then I thought.
In this example, I try using the default location directory, and finding the preference file where the "Home" is stored. It is stored in JSon format, so I deserialize the data that I am interested, and print it out.
Win 7 Example:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO; //References -> Add Reference -> "System.Runtime.Serialization" Add using System.Runtime.Serialization; using System.Runtime.Serialization.Json;  namespace test {     class Program {         [DataContract]         public class Mdata {             [DataMember(Name = "homepage")]              public String homepage { get; private set; }             [DataMember(Name = "homepage_is_newtabpage")]             public Boolean isNewTab { get; private set; }             public Mdata() { }             public Mdata(String data) {                 homepage = data;             }         }          public static Mdata FindData(String json) {             Mdata deserializedData = new Mdata();             MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(json));             DataContractJsonSerializer ser = new DataContractJsonSerializer(deserializedData.GetType());             deserializedData = ser.ReadObject(ms) as Mdata;             ms.Close();             return deserializedData;         }          static void Main(string[] args) {             const int LikeWin7 = 6;             OperatingSystem osInfo = Environment.OSVersion;             DirectoryInfo strDirectory;             String path=null, file=null, data;              if (osInfo.Platform.Equals(System.PlatformID.Win32NT))                 if (osInfo.Version.Major == LikeWin7)                     path = Environment.GetEnvironmentVariable("LocalAppData") +                         @"\Google\Chrome\User Data\Default";             if (path == null || path.Length == 0)                 throw new ArgumentNullException("Fail. Bad OS.");             if (!(strDirectory = new DirectoryInfo(path)).Exists)                 throw new DirectoryNotFoundException("Fail. The directory was not fund");             if (!new FileInfo(file = Directory.GetFiles(strDirectory.FullName, "Preferences*")[0]).Exists)                 throw new FileNotFoundException("Fail. The file was not found.", file);              Mdata info = FindData(data = System.IO.File.ReadAllText(file));             Console.WriteLine(info.homepage);             Console.WriteLine(info.isNewTab);         }     } } Example output for Me:
chrome://newtab True Hope I get at least 1 up vote :P
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With