Updater: vista launcher
authorAnton Makeev <Anton.Makeev@jetbrains.com>
Wed, 14 Jan 2009 11:59:52 +0000 (14:59 +0300)
committerAnton Makeev <Anton.Makeev@jetbrains.com>
Wed, 14 Jan 2009 11:59:52 +0000 (14:59 +0300)
tools/VistaUpdaterLauncher/VistaUpdaterLauncher.sln [new file with mode: 0644]
tools/VistaUpdaterLauncher/VistaUpdaterLauncher/VistaUpdaterLauncher.cpp [new file with mode: 0644]
tools/VistaUpdaterLauncher/VistaUpdaterLauncher/VistaUpdaterLauncher.vcproj [new file with mode: 0644]
tools/VistaUpdaterLauncher/VistaUpdaterLauncher/stdafx.cpp [new file with mode: 0644]
tools/VistaUpdaterLauncher/VistaUpdaterLauncher/stdafx.h [new file with mode: 0644]
tools/VistaUpdaterLauncher/VistaUpdaterLauncher/targetver.h [new file with mode: 0644]

diff --git a/tools/VistaUpdaterLauncher/VistaUpdaterLauncher.sln b/tools/VistaUpdaterLauncher/VistaUpdaterLauncher.sln
new file mode 100644 (file)
index 0000000..b52fb61
--- /dev/null
@@ -0,0 +1,20 @@
+
+Microsoft Visual Studio Solution File, Format Version 10.00
+# Visual C++ Express 2008
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "VistaUpdaterLauncher", "VistaUpdaterLauncher\VistaUpdaterLauncher.vcproj", "{05040CA8-09AC-48F2-89BE-1A271F97FE58}"
+EndProject
+Global
+       GlobalSection(SolutionConfigurationPlatforms) = preSolution
+               Debug|Win32 = Debug|Win32
+               Release|Win32 = Release|Win32
+       EndGlobalSection
+       GlobalSection(ProjectConfigurationPlatforms) = postSolution
+               {05040CA8-09AC-48F2-89BE-1A271F97FE58}.Debug|Win32.ActiveCfg = Debug|Win32
+               {05040CA8-09AC-48F2-89BE-1A271F97FE58}.Debug|Win32.Build.0 = Debug|Win32
+               {05040CA8-09AC-48F2-89BE-1A271F97FE58}.Release|Win32.ActiveCfg = Release|Win32
+               {05040CA8-09AC-48F2-89BE-1A271F97FE58}.Release|Win32.Build.0 = Release|Win32
+       EndGlobalSection
+       GlobalSection(SolutionProperties) = preSolution
+               HideSolutionNode = FALSE
+       EndGlobalSection
+EndGlobal
diff --git a/tools/VistaUpdaterLauncher/VistaUpdaterLauncher/VistaUpdaterLauncher.cpp b/tools/VistaUpdaterLauncher/VistaUpdaterLauncher/VistaUpdaterLauncher.cpp
new file mode 100644 (file)
index 0000000..bd14d4d
--- /dev/null
@@ -0,0 +1,63 @@
+// VistaUpdaterLauncher.cpp : Defines the entry point for the console application.
+//
+
+#include "stdafx.h"
+#include <windows.h>
+#include <process.h>
+#include <stdio.h>
+#include <tchar.h>
+#include <conio.h>
+#include <string.h>
+#include <stdlib.h>
+
+
+int _tmain(int argc, _TCHAR* argv[])
+{
+       STARTUPINFO startupInfo = {0};
+       startupInfo.cb = sizeof(startupInfo);
+       PROCESS_INFORMATION processInformation = {0};
+
+       startupInfo.hStdInput  = GetStdHandle(STD_INPUT_HANDLE);
+       startupInfo.hStdOutput = GetStdHandle(STD_OUTPUT_HANDLE);
+       startupInfo.hStdError  = GetStdHandle(STD_ERROR_HANDLE);
+
+       wchar_t commandLine[32768] = L"";
+
+       for (int i = 1; i < argc; i++) {
+        wcscat_s(commandLine, L"\"");
+        wcscat_s(commandLine, argv[i]);
+        wcscat_s(commandLine, L"\" ");
+       }
+
+       wprintf(L"Creating new process: %s\n", commandLine);
+       fflush(stdout);
+
+       if (!CreateProcess(
+               NULL, /*LPCTSTR lpApplicationName*/
+               commandLine,/* LPTSTR lpCommandLine*/
+               NULL, /*LPSECURITY_ATTRIBUTES lpProcessAttributes*/
+               NULL, /*LPSECURITY_ATTRIBUTES lpThreadAttributes*/
+               TRUE, /*BOOL bInheritHandles,*/
+               0,    /*DWORD dwCreationFlags*/
+               NULL, /*LPVOID lpEnvironment*/
+               NULL, /*LPCTSTR lpCurrentDirectory*/
+               &startupInfo, /*LPSTARTUPINFO lpStartupInfo*/
+               &processInformation /*LPPROCESS_INFORMATION lpProcessInformation*/))
+       {
+                       wprintf(L"Cannot create process: %d\n", GetLastError());
+                       return -1;
+       }
+
+       WaitForSingleObject(processInformation.hProcess, INFINITE);
+
+       DWORD exitCode = 0;
+       if (!GetExitCodeProcess(processInformation.hProcess, &exitCode))
+       {
+               wprintf(L"Cannot retrieve process exit code: %d\n", GetLastError());
+               exitCode = -1;
+       }
+       CloseHandle(processInformation.hProcess);
+
+       return exitCode;
+}
+
diff --git a/tools/VistaUpdaterLauncher/VistaUpdaterLauncher/VistaUpdaterLauncher.vcproj b/tools/VistaUpdaterLauncher/VistaUpdaterLauncher/VistaUpdaterLauncher.vcproj
new file mode 100644 (file)
index 0000000..1d927d0
--- /dev/null
@@ -0,0 +1,223 @@
+<?xml version="1.0" encoding="windows-1251"?>
+<VisualStudioProject
+       ProjectType="Visual C++"
+       Version="9,00"
+       Name="VistaUpdaterLauncher"
+       ProjectGUID="{05040CA8-09AC-48F2-89BE-1A271F97FE58}"
+       RootNamespace="VistaUpdaterLauncher"
+       Keyword="Win32Proj"
+       TargetFrameworkVersion="196613"
+       >
+       <Platforms>
+               <Platform
+                       Name="Win32"
+               />
+       </Platforms>
+       <ToolFiles>
+       </ToolFiles>
+       <Configurations>
+               <Configuration
+                       Name="Debug|Win32"
+                       OutputDirectory="$(SolutionDir)$(ConfigurationName)"
+                       IntermediateDirectory="$(ConfigurationName)"
+                       ConfigurationType="1"
+                       CharacterSet="1"
+                       >
+                       <Tool
+                               Name="VCPreBuildEventTool"
+                       />
+                       <Tool
+                               Name="VCCustomBuildTool"
+                       />
+                       <Tool
+                               Name="VCXMLDataGeneratorTool"
+                       />
+                       <Tool
+                               Name="VCWebServiceProxyGeneratorTool"
+                       />
+                       <Tool
+                               Name="VCMIDLTool"
+                       />
+                       <Tool
+                               Name="VCCLCompilerTool"
+                               Optimization="0"
+                               PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+                               MinimalRebuild="true"
+                               BasicRuntimeChecks="3"
+                               RuntimeLibrary="3"
+                               UsePrecompiledHeader="2"
+                               WarningLevel="3"
+                               DebugInformationFormat="4"
+                       />
+                       <Tool
+                               Name="VCManagedResourceCompilerTool"
+                       />
+                       <Tool
+                               Name="VCResourceCompilerTool"
+                       />
+                       <Tool
+                               Name="VCPreLinkEventTool"
+                       />
+                       <Tool
+                               Name="VCLinkerTool"
+                               LinkIncremental="2"
+                               UACExecutionLevel="2"
+                               GenerateDebugInformation="true"
+                               SubSystem="1"
+                               TargetMachine="1"
+                       />
+                       <Tool
+                               Name="VCALinkTool"
+                       />
+                       <Tool
+                               Name="VCManifestTool"
+                       />
+                       <Tool
+                               Name="VCXDCMakeTool"
+                       />
+                       <Tool
+                               Name="VCBscMakeTool"
+                       />
+                       <Tool
+                               Name="VCFxCopTool"
+                       />
+                       <Tool
+                               Name="VCAppVerifierTool"
+                       />
+                       <Tool
+                               Name="VCPostBuildEventTool"
+                       />
+               </Configuration>
+               <Configuration
+                       Name="Release|Win32"
+                       OutputDirectory="$(SolutionDir)$(ConfigurationName)"
+                       IntermediateDirectory="$(ConfigurationName)"
+                       ConfigurationType="1"
+                       CharacterSet="1"
+                       WholeProgramOptimization="1"
+                       >
+                       <Tool
+                               Name="VCPreBuildEventTool"
+                       />
+                       <Tool
+                               Name="VCCustomBuildTool"
+                       />
+                       <Tool
+                               Name="VCXMLDataGeneratorTool"
+                       />
+                       <Tool
+                               Name="VCWebServiceProxyGeneratorTool"
+                       />
+                       <Tool
+                               Name="VCMIDLTool"
+                       />
+                       <Tool
+                               Name="VCCLCompilerTool"
+                               Optimization="2"
+                               EnableIntrinsicFunctions="true"
+                               PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+                               RuntimeLibrary="2"
+                               EnableFunctionLevelLinking="true"
+                               UsePrecompiledHeader="2"
+                               WarningLevel="3"
+                               DebugInformationFormat="3"
+                       />
+                       <Tool
+                               Name="VCManagedResourceCompilerTool"
+                       />
+                       <Tool
+                               Name="VCResourceCompilerTool"
+                       />
+                       <Tool
+                               Name="VCPreLinkEventTool"
+                       />
+                       <Tool
+                               Name="VCLinkerTool"
+                               LinkIncremental="1"
+                               UACExecutionLevel="2"
+                               GenerateDebugInformation="true"
+                               SubSystem="1"
+                               OptimizeReferences="2"
+                               EnableCOMDATFolding="2"
+                               TargetMachine="1"
+                       />
+                       <Tool
+                               Name="VCALinkTool"
+                       />
+                       <Tool
+                               Name="VCManifestTool"
+                       />
+                       <Tool
+                               Name="VCXDCMakeTool"
+                       />
+                       <Tool
+                               Name="VCBscMakeTool"
+                       />
+                       <Tool
+                               Name="VCFxCopTool"
+                       />
+                       <Tool
+                               Name="VCAppVerifierTool"
+                       />
+                       <Tool
+                               Name="VCPostBuildEventTool"
+                       />
+               </Configuration>
+       </Configurations>
+       <References>
+       </References>
+       <Files>
+               <Filter
+                       Name="Source Files"
+                       Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
+                       UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+                       >
+                       <File
+                               RelativePath=".\stdafx.cpp"
+                               >
+                               <FileConfiguration
+                                       Name="Debug|Win32"
+                                       >
+                                       <Tool
+                                               Name="VCCLCompilerTool"
+                                               UsePrecompiledHeader="1"
+                                       />
+                               </FileConfiguration>
+                               <FileConfiguration
+                                       Name="Release|Win32"
+                                       >
+                                       <Tool
+                                               Name="VCCLCompilerTool"
+                                               UsePrecompiledHeader="1"
+                                       />
+                               </FileConfiguration>
+                       </File>
+                       <File
+                               RelativePath=".\VistaUpdaterLauncher.cpp"
+                               >
+                       </File>
+               </Filter>
+               <Filter
+                       Name="Header Files"
+                       Filter="h;hpp;hxx;hm;inl;inc;xsd"
+                       UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
+                       >
+                       <File
+                               RelativePath=".\stdafx.h"
+                               >
+                       </File>
+                       <File
+                               RelativePath=".\targetver.h"
+                               >
+                       </File>
+               </Filter>
+               <Filter
+                       Name="Resource Files"
+                       Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"
+                       UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
+                       >
+               </Filter>
+       </Files>
+       <Globals>
+       </Globals>
+</VisualStudioProject>
diff --git a/tools/VistaUpdaterLauncher/VistaUpdaterLauncher/stdafx.cpp b/tools/VistaUpdaterLauncher/VistaUpdaterLauncher/stdafx.cpp
new file mode 100644 (file)
index 0000000..ef12a27
--- /dev/null
@@ -0,0 +1,8 @@
+// stdafx.cpp : source file that includes just the standard includes
+// VistaUpdaterLauncher.pch will be the pre-compiled header
+// stdafx.obj will contain the pre-compiled type information
+
+#include "stdafx.h"
+
+// TODO: reference any additional headers you need in STDAFX.H
+// and not in this file
diff --git a/tools/VistaUpdaterLauncher/VistaUpdaterLauncher/stdafx.h b/tools/VistaUpdaterLauncher/VistaUpdaterLauncher/stdafx.h
new file mode 100644 (file)
index 0000000..b005a83
--- /dev/null
@@ -0,0 +1,15 @@
+// stdafx.h : include file for standard system include files,
+// or project specific include files that are used frequently, but
+// are changed infrequently
+//
+
+#pragma once
+
+#include "targetver.h"
+
+#include <stdio.h>
+#include <tchar.h>
+
+
+
+// TODO: reference additional headers your program requires here
diff --git a/tools/VistaUpdaterLauncher/VistaUpdaterLauncher/targetver.h b/tools/VistaUpdaterLauncher/VistaUpdaterLauncher/targetver.h
new file mode 100644 (file)
index 0000000..6fe8eb7
--- /dev/null
@@ -0,0 +1,13 @@
+#pragma once
+
+// The following macros define the minimum required platform.  The minimum required platform
+// is the earliest version of Windows, Internet Explorer etc. that has the necessary features to run 
+// your application.  The macros work by enabling all features available on platform versions up to and 
+// including the version specified.
+
+// Modify the following defines if you have to target a platform prior to the ones specified below.
+// Refer to MSDN for the latest info on corresponding values for different platforms.
+#ifndef _WIN32_WINNT            // Specifies that the minimum required platform is Windows Vista.
+#define _WIN32_WINNT 0x0600     // Change this to the appropriate value to target other versions of Windows.
+#endif
+