Index: testing/save_arguments.cc |
diff --git a/testing/save_arguments.cc b/testing/save_arguments.cc |
deleted file mode 100644 |
index 1640772270011397cb414454e01223ddd6b8278f..0000000000000000000000000000000000000000 |
--- a/testing/save_arguments.cc |
+++ /dev/null |
@@ -1,125 +0,0 @@ |
-// Copyright 2007-2009 Google Inc. |
-// |
-// Licensed under the Apache License, Version 2.0 (the "License"); |
-// you may not use this file except in compliance with the License. |
-// You may obtain a copy of the License at |
-// |
-// http://www.apache.org/licenses/LICENSE-2.0 |
-// |
-// Unless required by applicable law or agreed to in writing, software |
-// distributed under the License is distributed on an "AS IS" BASIS, |
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-// See the License for the specific language governing permissions and |
-// limitations under the License. |
-// ======================================================================== |
-// |
-// Saves the arguments passed to this application to saved_arguments.txt in the |
-// same directory as the executable. |
- |
-#include <atlstr.h> |
-#include <stdio.h> |
-#include <tchar.h> |
-#include <windows.h> |
-#include "omaha/base/app_util.h" |
-#include "omaha/base/scoped_any.h" |
- |
-namespace { |
- |
- |
-const TCHAR kSavedArgumentsFileName[] = _T("saved_arguments.txt"); |
- |
-// Reports a Win32 error to the command line and debug output then exits the |
-// process. Call immediately after the failed Win32 API call. |
-void HandleWin32ErrorAndExit(const TCHAR* method) { |
- _ASSERTE(method); |
- int res = ::GetLastError(); |
- CString error_message; |
- error_message.Format(_T("%s failed with error %i."), method, res); |
- |
- |
- _tprintf(_T("%s\n"), error_message); |
- |
- CString debug_message; |
- debug_message.Format(_T("[SaveArguments.exe][%s]"), error_message); |
- ::OutputDebugString(debug_message); |
- |
- exit(res); |
-} |
- |
-// Performs actions that are useful for debugging. |
-void DoDebugHelper() { |
- // This is useful for debugging Code Red. |
- CString message; |
- message.AppendFormat(_T("[SaveArguments.exe][Temp directory: %s]"), |
- omaha::app_util::GetTempDir()); |
- ::OutputDebugString(message); |
-} |
- |
-// Performs actions that are helpful or required for Omaha unit tests. |
-void DoUnitTestHelpers() { |
- // The following code adapted from mi.cpp allows unit test to verify that the |
- // executable file still exists and has not been deleted after the process |
- // is created. |
- TCHAR file_name[MAX_PATH] = {0}; |
- if (!::GetModuleFileName(NULL, file_name, MAX_PATH)) { |
- HandleWin32ErrorAndExit(_T("GetModuleFileName")); |
- } |
- DWORD handle = 0; |
- DWORD ver_info_size = ::GetFileVersionInfoSize(file_name, &handle); |
- if (ver_info_size == 0) { |
- HandleWin32ErrorAndExit(_T("GetFileVersionInfoSize")); |
- } |
-} |
- |
-// Writes the provided arguments to the file. |
-// Returns whether it was successful. |
-int WriteArgsToFile(const CString& arguments) { |
- CString file_path(omaha::app_util::GetCurrentModuleDirectory()); |
- if (!::PathAppend(CStrBuf(file_path, MAX_PATH), kSavedArgumentsFileName)) { |
- _ASSERTE(false); |
- return -1; |
- } |
- |
- scoped_hfile file(::CreateFile(file_path, |
- GENERIC_READ | GENERIC_WRITE, |
- 0, // do not share |
- NULL, // default security |
- CREATE_ALWAYS, // overwrite existing |
- FILE_ATTRIBUTE_NORMAL, |
- NULL)); // no template |
- if (get(file) == INVALID_HANDLE_VALUE) { |
- HandleWin32ErrorAndExit(_T("CreateFile")); |
- } |
- |
- DWORD bytes_written = 0; |
- if (!::WriteFile(get(file), |
- arguments.GetString(), |
- arguments.GetLength() * sizeof(TCHAR), |
- &bytes_written, |
- NULL)) { |
- HandleWin32ErrorAndExit(_T("WriteFile")); |
- } |
- |
- return 0; |
-} |
- |
-} // namespace |
- |
- |
-// Returns 0 on success and non-zero otherwise. |
-int _tmain(int argc, TCHAR* argv[]) { |
- DoDebugHelper(); |
- DoUnitTestHelpers(); |
- |
- CString arguments; |
- |
- // Skip the first argument, which is the executable path. |
- for (int i = 1; i < argc; i++) { |
- arguments += argv[i]; |
- if (i < argc - 1) { |
- arguments += " "; |
- } |
- } |
- |
- return WriteArgsToFile(arguments); |
-} |