Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(396)

Side by Side Diff: chrome/installer/util/shell_util.h

Issue 10667006: Revert 143782 - Use a better registration suffix that will always be unique while respecting the MS… (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 8 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | chrome/installer/util/shell_util.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 // 4 //
5 // This file declares methods that are useful for integrating Chrome in 5 // This file declares methods that are useful for integrating Chrome in
6 // Windows shell. These methods are all static and currently part of 6 // Windows shell. These methods are all static and currently part of
7 // ShellUtil class. 7 // ShellUtil class.
8 8
9 #ifndef CHROME_INSTALLER_UTIL_SHELL_UTIL_H_ 9 #ifndef CHROME_INSTALLER_UTIL_SHELL_UTIL_H_
10 #define CHROME_INSTALLER_UTIL_SHELL_UTIL_H_ 10 #define CHROME_INSTALLER_UTIL_SHELL_UTIL_H_
11 #pragma once 11 #pragma once
12 12
13 #include <windows.h> 13 #include <windows.h>
14 14
15 #include <map> 15 #include <map>
16 #include <vector> 16 #include <vector>
17 17
18 #include "base/basictypes.h" 18 #include "base/basictypes.h"
19 #include "base/md5.h"
20 #include "base/string16.h" 19 #include "base/string16.h"
21 #include "chrome/installer/util/work_item_list.h" 20 #include "chrome/installer/util/work_item_list.h"
22 21
23 class BrowserDistribution; 22 class BrowserDistribution;
24 class FilePath; 23 class FilePath;
25 24
26 namespace base { 25 namespace base {
27 class DictionaryValue; 26 class DictionaryValue;
28 } 27 }
29 28
(...skipping 207 matching lines...) Expand 10 before | Expand all | Expand 10 after
237 236
238 // Returns the application name of the program under |dist|. 237 // Returns the application name of the program under |dist|.
239 // This application name will be suffixed as is appropriate for the current 238 // This application name will be suffixed as is appropriate for the current
240 // install. 239 // install.
241 // This is the name that is registered with Default Programs on Windows and 240 // This is the name that is registered with Default Programs on Windows and
242 // that should thus be used to "make chrome default" and such. 241 // that should thus be used to "make chrome default" and such.
243 static string16 GetApplicationName(BrowserDistribution* dist, 242 static string16 GetApplicationName(BrowserDistribution* dist,
244 const string16& chrome_exe); 243 const string16& chrome_exe);
245 244
246 // Returns the AppUserModelId for |dist|. This identifier is unconditionally 245 // Returns the AppUserModelId for |dist|. This identifier is unconditionally
247 // suffixed with a unique id for this user on user-level installs (in contrast 246 // suffixed with the user id for user-level installs (in contrast to other
248 // to other registration entries which are suffixed as described in 247 // registration entries which are suffix as described in
249 // GetCurrentInstallationSuffix() above). 248 // GetCurrentInstallationSuffix() above).
250 static string16 GetBrowserModelId(BrowserDistribution* dist, 249 static string16 GetBrowserModelId(BrowserDistribution* dist,
251 const string16& chrome_exe); 250 const string16& chrome_exe);
252 251
253 // Returns an AppUserModelId composed of each member of |components| separated 252 // Returns an AppUserModelId composed of each member of |components| separated
254 // by dots. 253 // by dots.
255 // The returned appid is guaranteed to be no longer than 254 // The returned appid is guaranteed to be no longer than
256 // chrome::kMaxAppModelIdLength (some of the components might have been 255 // chrome::kMaxAppModelIdLength (some of the components might have been
257 // shortened to enforce this). 256 // shortened to enforce this).
258 static string16 BuildAppModelId(const std::vector<string16>& components); 257 static string16 BuildAppModelId(const std::vector<string16>& components);
(...skipping 140 matching lines...) Expand 10 before | Expand all | Expand 10 after
399 // |options|: bitfield for which the options come from ChromeShortcutOptions. 398 // |options|: bitfield for which the options come from ChromeShortcutOptions.
400 static bool UpdateChromeShortcut(BrowserDistribution* dist, 399 static bool UpdateChromeShortcut(BrowserDistribution* dist,
401 const string16& chrome_exe, 400 const string16& chrome_exe,
402 const string16& shortcut, 401 const string16& shortcut,
403 const string16& arguments, 402 const string16& arguments,
404 const string16& description, 403 const string16& description,
405 const string16& icon_path, 404 const string16& icon_path,
406 int icon_index, 405 int icon_index,
407 uint32 options); 406 uint32 options);
408 407
409 // Returns the base32 encoding (using the [A-Z2-7] alphabet) of |digest|.
410 // The returned string will be exactly 26 characters in length.
411 static string16 MD5DigestToBase32(const base::MD5Digest& digest);
412
413 // Returns the base32 encoding (using the [A-Z2-7] alphabet) of |bytes|.
414 // |size| is the length of |bytes|.
415 // Note: This method does not suffix the output with '=' signs as technically
416 // required by the base32 standard for inputs that aren't a multiple of 5
417 // bits.
418 static string16 ByteArrayToBase32(const unsigned char bytes[], int size);
419
420 private: 408 private:
421 DISALLOW_COPY_AND_ASSIGN(ShellUtil); 409 DISALLOW_COPY_AND_ASSIGN(ShellUtil);
422 }; 410 };
423 411
424 412
425 #endif // CHROME_INSTALLER_UTIL_SHELL_UTIL_H_ 413 #endif // CHROME_INSTALLER_UTIL_SHELL_UTIL_H_
OLDNEW
« no previous file with comments | « no previous file | chrome/installer/util/shell_util.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698