diff options
author | vitalybuka@chromium.org <vitalybuka@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-04-09 08:46:46 +0000 |
---|---|---|
committer | vitalybuka@chromium.org <vitalybuka@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-04-09 08:46:46 +0000 |
commit | d2a662753342934f8e97fde84045aa6e7ff2995b (patch) | |
tree | 02edab4c2cbf1753757846efa2206c3212648aac /cloud_print/virtual_driver | |
parent | 007b3f812fc9c989fb99d4a668d8bd9c7807ad81 (diff) | |
download | chromium_src-d2a662753342934f8e97fde84045aa6e7ff2995b.zip chromium_src-d2a662753342934f8e97fde84045aa6e7ff2995b.tar.gz chromium_src-d2a662753342934f8e97fde84045aa6e7ff2995b.tar.bz2 |
Common code moved to cloud_print/common/
Review URL: https://chromiumcodereview.appspot.com/13770012
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@193041 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'cloud_print/virtual_driver')
5 files changed, 11 insertions, 45 deletions
diff --git a/cloud_print/virtual_driver/win/install/setup.cc b/cloud_print/virtual_driver/win/install/setup.cc index 8f145d6..df7eb57 100644 --- a/cloud_print/virtual_driver/win/install/setup.cc +++ b/cloud_print/virtual_driver/win/install/setup.cc @@ -22,6 +22,7 @@ #include "base/win/registry.h" #include "base/win/scoped_handle.h" #include "base/win/windows_version.h" +#include "cloud_print/common/win/cloud_print_utils.h" #include "cloud_print/virtual_driver/win/virtual_driver_consts.h" #include "cloud_print/virtual_driver/win/virtual_driver_helpers.h" #include "grit/virtual_driver_setup_resources.h" @@ -212,7 +213,7 @@ HRESULT RegisterPortMonitor(bool install, const base::FilePath& install_path) { if (install) { if (!GetExitCodeProcess(regsvr32_handle, &exit_code)) { LOG(ERROR) << "Unable to get regsvr32.exe exit code."; - return cloud_print::GetLastHResult();; + return cloud_print::GetLastHResult(); } if (exit_code != 0) { LOG(ERROR) << "Regsvr32.exe failed with " << exit_code; diff --git a/cloud_print/virtual_driver/win/port_monitor/port_monitor_dll.cc b/cloud_print/virtual_driver/win/port_monitor/port_monitor_dll.cc index 2ca2bd7..ae25d55 100644 --- a/cloud_print/virtual_driver/win/port_monitor/port_monitor_dll.cc +++ b/cloud_print/virtual_driver/win/port_monitor/port_monitor_dll.cc @@ -24,6 +24,7 @@ #include "base/win/scoped_handle.h" #include "base/win/windows_version.h" #include "chrome/common/chrome_switches.h" +#include "cloud_print/common/win/cloud_print_utils.h" #include "cloud_print/virtual_driver/win/port_monitor/spooler_win.h" #include "cloud_print/virtual_driver/win/virtual_driver_consts.h" #include "cloud_print/virtual_driver/win/virtual_driver_helpers.h" diff --git a/cloud_print/virtual_driver/win/virtual_driver.gypi b/cloud_print/virtual_driver/win/virtual_driver.gypi index dfdc5c1..80c0ffb 100644 --- a/cloud_print/virtual_driver/win/virtual_driver.gypi +++ b/cloud_print/virtual_driver/win/virtual_driver.gypi @@ -19,6 +19,8 @@ 'target_name': 'virtual_driver_lib<(virtual_driver_suffix)', 'type': 'static_library', 'sources': [ + '<(DEPTH)/cloud_print/common/win/cloud_print_utils.cc', + '<(DEPTH)/cloud_print/common/win/cloud_print_utils.h', 'virtual_driver_consts.cc', 'virtual_driver_consts.h', 'virtual_driver_helpers.cc', diff --git a/cloud_print/virtual_driver/win/virtual_driver_helpers.cc b/cloud_print/virtual_driver/win/virtual_driver_helpers.cc index c331ff8..71aa2bf 100644 --- a/cloud_print/virtual_driver/win/virtual_driver_helpers.cc +++ b/cloud_print/virtual_driver/win/virtual_driver_helpers.cc @@ -3,35 +3,22 @@ // found in the LICENSE file. #include "cloud_print/virtual_driver/win/virtual_driver_helpers.h" + #include <windows.h> #include <winspool.h> + #include "base/file_util.h" #include "base/logging.h" #include "base/string16.h" #include "base/win/windows_version.h" +#include "cloud_print/common/win/cloud_print_utils.h" namespace cloud_print { const size_t kMaxMessageLen = 100; -void DisplayWindowsMessage(HWND hwnd, - HRESULT message_id, - const string16 &caption) { - wchar_t message_text[kMaxMessageLen + 1] = L""; - - ::FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM|FORMAT_MESSAGE_IGNORE_INSERTS, - NULL, - message_id, - MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), - message_text, - kMaxMessageLen, - NULL); - ::MessageBox(hwnd, message_text, caption.c_str(), MB_OK); -} - -HRESULT GetLastHResult() { - DWORD error_code = GetLastError(); - return HRESULT_FROM_WIN32(error_code); +void DisplayWindowsMessage(HWND hwnd, HRESULT hr, const string16 &caption) { + ::MessageBox(hwnd, GetErrorMessage(hr).c_str(), caption.c_str(), MB_OK); } string16 GetPortMonitorDllName() { @@ -69,21 +56,5 @@ bool IsSystem64Bit() { (arch == base::win::OSInfo::IA64_ARCHITECTURE); } -string16 LoadLocalString(DWORD string_id) { - static wchar_t dummy = L'\0'; -// We never expect strings longer than MAX_PATH characters. - static wchar_t buffer[MAX_PATH]; - HMODULE module = NULL; - GetModuleHandleEx(GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS | - GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT, - &dummy, - &module); - int count = LoadString(module, - string_id, - buffer, - MAX_PATH); - CHECK_NE(0, count); - return string16(buffer); -} } diff --git a/cloud_print/virtual_driver/win/virtual_driver_helpers.h b/cloud_print/virtual_driver/win/virtual_driver_helpers.h index 5380a36..18736cc 100644 --- a/cloud_print/virtual_driver/win/virtual_driver_helpers.h +++ b/cloud_print/virtual_driver/win/virtual_driver_helpers.h @@ -19,12 +19,7 @@ namespace cloud_print { bool IsSystem64Bit(); // Convert an HRESULT to a localized string and display it in a message box. -void DisplayWindowsMessage(HWND hwnd, - HRESULT message_id, - const string16 &caption); - -// Similar to the Windows API call GetLastError but returns an HRESULT. -HRESULT GetLastHResult(); +void DisplayWindowsMessage(HWND hwnd, HRESULT hr, const string16 &caption); // Returns the correct port monitor DLL file name for the current machine. string16 GetPortMonitorDllName(); @@ -32,10 +27,6 @@ string16 GetPortMonitorDllName(); // Gets the standard install path for "version 3" print drivers. HRESULT GetPrinterDriverDir(base::FilePath* path); -// Retrieves a string from the string table of the module that contains the -// calling code. -string16 LoadLocalString(DWORD string_id); - } // namespace cloud_print #endif // CLOUD_PRINT_VIRTUAL_DRIVER_WIN_VIRTUAL_DRIVER_HELPERS_H_ |