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

Unified Diff: base/win/windows_version.h

Issue 3823002: Move windows version-related stuff out of base/win_util and into base/win/win... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 10 years, 2 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 side-by-side diff with in-line comments
Download patch
Index: base/win/windows_version.h
===================================================================
--- base/win/windows_version.h (revision 0)
+++ base/win/windows_version.h (working copy)
@@ -2,133 +2,33 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#ifndef BASE_WIN_UTIL_H__
-#define BASE_WIN_UTIL_H__
+#ifndef BASE_WIN_WINDOWS_VERSION_H_
+#define BASE_WIN_WINDOWS_VERSION_H_
#pragma once
-#include <windows.h>
+namespace base {
+namespace win {
-#include <string>
-
-#include "base/string16.h"
-
-struct IPropertyStore;
-struct _tagpropertykey;
-typedef _tagpropertykey PROPERTYKEY;
-
-namespace win_util {
-
// NOTE: Keep these in order so callers can do things like
// "if (GetWinVersion() > WINVERSION_2000) ...". It's OK to change the values,
// though.
-enum WinVersion {
- WINVERSION_PRE_2000 = 0, // Not supported
- WINVERSION_2000 = 1, // Not supported
- WINVERSION_XP = 2,
- WINVERSION_SERVER_2003 = 3,
- WINVERSION_VISTA = 4,
- WINVERSION_2008 = 5,
- WINVERSION_WIN7 = 6,
+enum Version {
+ VERSION_PRE_2000 = 0, // Not supported
+ VERSION_2000 = 1, // Not supported
+ VERSION_XP = 2,
+ VERSION_SERVER_2003 = 3,
+ VERSION_VISTA = 4,
+ VERSION_2008 = 5,
+ VERSION_WIN7 = 6,
};
-// Property key for System.AppUserModel.ID.
-// <http://msdn.microsoft.com/en-us/library/dd391569(VS.85).aspx>
-// TODO(xiyuan): Remove this once we compile with Win7 SDK.
-extern const PROPERTYKEY kPKEYAppUserModelID;
-
-void GetNonClientMetrics(NONCLIENTMETRICS* metrics);
-
// Returns the running version of Windows.
-WinVersion GetWinVersion();
+Version GetVersion();
// Returns the major and minor version of the service pack installed.
void GetServicePackLevel(int* major, int* minor);
-// Adds an ACE in the DACL of the object referenced by handle. The ACE is
-// granting |access| to the user |known_sid|.
-// If |known_sid| is WinSelfSid, the sid of the current user will be added to
-// the DACL.
-bool AddAccessToKernelObject(HANDLE handle, WELL_KNOWN_SID_TYPE known_sid,
- ACCESS_MASK access);
+} // namespace win
+} // namespace base
-// Returns the string representing the current user sid.
-bool GetUserSidString(std::wstring* user_sid);
-
-// Creates a security descriptor with a DACL that has one ace giving full
-// access to the current logon session.
-// The security descriptor returned must be freed using LocalFree.
-// The function returns true if it succeeds, false otherwise.
-bool GetLogonSessionOnlyDACL(SECURITY_DESCRIPTOR** security_descriptor);
-
-// Useful for subclassing a HWND. Returns the previous window procedure.
-WNDPROC SetWindowProc(HWND hwnd, WNDPROC wndproc);
-
-// Returns true if the existing window procedure is the same as |subclass_proc|.
-bool IsSubclassed(HWND window, WNDPROC subclass_proc);
-
-// Subclasses a window, replacing its existing window procedure with the
-// specified one. Returns true if the current window procedure was replaced,
-// false if the window has already been subclassed with the specified
-// subclass procedure.
-bool Subclass(HWND window, WNDPROC subclass_proc);
-
-// Unsubclasses a window subclassed using Subclass. Returns true if
-// the window was subclassed with the specified |subclass_proc| and the window
-// was successfully unsubclassed, false if the window's window procedure is not
-// |subclass_proc|.
-bool Unsubclass(HWND window, WNDPROC subclass_proc);
-
-// Retrieves the original WNDPROC of a window subclassed using
-// SubclassWindow.
-WNDPROC GetSuperclassWNDPROC(HWND window);
-
-// Pointer-friendly wrappers around Get/SetWindowLong(..., GWLP_USERDATA, ...)
-// Returns the previously set value.
-void* SetWindowUserData(HWND hwnd, void* user_data);
-void* GetWindowUserData(HWND hwnd);
-
-// Returns true if the shift key is currently pressed.
-bool IsShiftPressed();
-
-// Returns true if the ctrl key is currently pressed.
-bool IsCtrlPressed();
-
-// Returns true if the alt key is currently pressed.
-bool IsAltPressed();
-
-// A version of the GetClassNameW API that returns the class name in an
-// std::wstring. An empty result indicates a failure to get the class name.
-std::wstring GetClassName(HWND window);
-
-// Returns false if user account control (UAC) has been disabled with the
-// EnableLUA registry flag. Returns true if user account control is enabled.
-// NOTE: The EnableLUA registry flag, which is ignored on Windows XP
-// machines, might still exist and be set to 0 (UAC disabled), in which case
-// this function will return false. You should therefore check this flag only
-// if the OS is Vista.
-bool UserAccountControlIsEnabled();
-
-// Use the Win32 API FormatMessage() function to generate a string, using
-// Windows's default Message Compiled resources; ignoring the inserts.
-std::wstring FormatMessage(unsigned messageid);
-
-// Uses the last Win32 error to generate a human readable message string.
-std::wstring FormatLastWin32Error();
-
-// Sets the application id in given IPropertyStore. The function is intended
-// for tagging application/chromium shortcut, browser window and jump list for
-// Win7.
-bool SetAppIdForPropertyStore(IPropertyStore* property_store,
- const wchar_t* app_id);
-
-// Adds the specified |command| using the specified |name| to the AutoRun key.
-// |root_key| could be HKCU or HKLM or the root of any user hive.
-bool AddCommandToAutoRun(HKEY root_key, const string16& name,
- const string16& command);
-// Removes the command specified by |name| from the AutoRun key. |root_key|
-// could be HKCU or HKLM or the root of any user hive.
-bool RemoveCommandFromAutoRun(HKEY root_key, const string16& name);
-
-} // namespace win_util
-
-#endif // BASE_WIN_UTIL_H__
+#endif // BASE_WIN_WINDOWS_VERSION_H_

Powered by Google App Engine
This is Rietveld 408576698