2012-04-06 3 views
0

В приложении я пишу, я пытаюсь изменить домашнюю страницу Google Chrome по умолчанию, изменив preferences файлКак сохранить/защитить файл от изменения?

для того, чтобы достичь этого, я использую следующий код snippest

private void button1_Click(object sender, EventArgs e) 
    { 
     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); 
     MessageBox.Show(info.homepage); 


     // replace text now 
     String strFile = File.ReadAllText(file); 

     strFile = strFile.Replace(info.homepage, "www.monde-presse.com"); 

     File.WriteAllText(file, strFile); } 

Когда я нажимаю кнопку, домашняя страница по умолчанию изменяется успешно, когда я запускаю Google Chrome в первый раз, но после ее закрытия и повторного открытия снова я заметил, что файл prefrences будет изменен, чтобы стать таким, каким он был до его изменения. Для Mozilla Firefox и Internet Explorer все работает Хорошо, но для Google Chrome он работает только один раз, после перезапуска браузера файл становится таким, каким он был до его изменения.

Возможно, возможно, что мой файл работает, и проверяйте любые изменения каждый промежуток времени, но я знаю, что это будет ресурсоемким, и поэтому я ищу что-то, что позволяет мне изменить домашнюю страницу по умолчанию с помощью успешный способ.

Как сохранить мои изменения в файле, защитив его от повторного изменения с помощью Google Chrome, или, возможно, существует еще один способ постоянного изменения главной страницы по умолчанию?

+4

Google хром явно использует какой-то механизм, чтобы люди не могли изменять внутренние настройки в нежелательной усадьбе. Вопрос не должен быть «как я могу победить защиту/безопасность Google Chrome», а скорее «как я * предположил» постоянно изменять настройки программным образом в Google Chrome. Это вопрос Google Chrome, а не C#/file системный тип вопроса. Я, конечно, понятия не имею, как можно * предполагать * изменять Google Chrome. – Servy

+0

И если вы преуспели в «защите» предпочтений, пользователь Chrome никогда не сможет снова изменить настройку ... –

ответ

4

Возможно, ваш Google Chrome настроен на синхронизацию ваших предпочтений с вашей учетной записью Google. Вручную редактирование файла не вносит изменения в настройки вашего аккаунта Google. Поэтому, когда он загружается снова, он получает обновленные настройки из вашей учетной записи, а не этот файл.

Вам нужно посмотреть на объект «synch» в настройках и попытаться установить последнее время синхронизации за пределы текущего времени.

Смежные вопросы