summaryrefslogtreecommitdiffstats
path: root/cloud_print/virtual_driver
diff options
context:
space:
mode:
authorvitalybuka@chromium.org <vitalybuka@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-04-09 08:46:46 +0000
committervitalybuka@chromium.org <vitalybuka@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-04-09 08:46:46 +0000
commitd2a662753342934f8e97fde84045aa6e7ff2995b (patch)
tree02edab4c2cbf1753757846efa2206c3212648aac /cloud_print/virtual_driver
parent007b3f812fc9c989fb99d4a668d8bd9c7807ad81 (diff)
downloadchromium_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')
-rw-r--r--cloud_print/virtual_driver/win/install/setup.cc3
-rw-r--r--cloud_print/virtual_driver/win/port_monitor/port_monitor_dll.cc1
-rw-r--r--cloud_print/virtual_driver/win/virtual_driver.gypi2
-rw-r--r--cloud_print/virtual_driver/win/virtual_driver_helpers.cc39
-rw-r--r--cloud_print/virtual_driver/win/virtual_driver_helpers.h11
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_