diff options
Diffstat (limited to 'desktop/win32/source/applauncher/launcher.cxx')
-rw-r--r-- | desktop/win32/source/applauncher/launcher.cxx | 147 |
1 files changed, 0 insertions, 147 deletions
diff --git a/desktop/win32/source/applauncher/launcher.cxx b/desktop/win32/source/applauncher/launcher.cxx deleted file mode 100644 index 7fceb0173f..0000000000 --- a/desktop/win32/source/applauncher/launcher.cxx +++ /dev/null @@ -1,147 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/************************************************************************* - * - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * - * Copyright 2000, 2010 Oracle and/or its affiliates. - * - * OpenOffice.org - a multi-platform office productivity suite - * - * This file is part of OpenOffice.org. - * - * OpenOffice.org is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License version 3 - * only, as published by the Free Software Foundation. - * - * OpenOffice.org is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License version 3 for more details - * (a copy is included in the LICENSE file that accompanied this code). - * - * You should have received a copy of the GNU Lesser General Public License - * version 3 along with OpenOffice.org. If not, see - * <http://www.openoffice.org/license.html> - * for a copy of the LGPLv3 License. - * - ************************************************************************/ - -// MARKER(update_precomp.py): autogen include statement, do not remove -#include "precompiled_desktop.hxx" - -#include "launcher.hxx" - - -#ifndef _WINDOWS_ -# define WIN32_LEAN_AND_MEAN -#if defined _MSC_VER -#pragma warning(push, 1) -#endif -# include <windows.h> -# include <shellapi.h> -#if defined _MSC_VER -#pragma warning(pop) -#endif -#endif - - -#include <stdlib.h> -#include <malloc.h> - - -#ifdef __MINGW32__ -extern "C" int APIENTRY WinMain( HINSTANCE, HINSTANCE, LPSTR, int ) -#else -extern "C" int APIENTRY _tWinMain( HINSTANCE, HINSTANCE, LPTSTR, int ) -#endif -{ - // Retreive startup info - - STARTUPINFO aStartupInfo; - - ZeroMemory( &aStartupInfo, sizeof(aStartupInfo) ); - aStartupInfo.cb = sizeof( aStartupInfo ); - GetStartupInfo( &aStartupInfo ); - - // Retrieve command line - - LPTSTR lpCommandLine = GetCommandLine(); - - LPTSTR *ppArguments = NULL; - int nArguments = 0; - - ppArguments = GetArgv( &nArguments ); - - { - lpCommandLine = (LPTSTR)_alloca( sizeof(_TCHAR) * (_tcslen(lpCommandLine) + _tcslen(APPLICATION_SWITCH) + 2) ); - - _tcscpy( lpCommandLine, GetCommandLine() ); - _tcscat( lpCommandLine, _T(" ") ); - _tcscat( lpCommandLine, APPLICATION_SWITCH ); - } - - - // Calculate application name - - TCHAR szApplicationName[MAX_PATH]; - TCHAR szDrive[MAX_PATH]; - TCHAR szDir[MAX_PATH]; - TCHAR szFileName[MAX_PATH]; - TCHAR szExt[MAX_PATH]; - - GetModuleFileName( NULL, szApplicationName, MAX_PATH ); - _tsplitpath( szApplicationName, szDrive, szDir, szFileName, szExt ); - _tmakepath( szApplicationName, szDrive, szDir, OFFICE_IMAGE_NAME, _T(".exe") ); - - PROCESS_INFORMATION aProcessInfo; - - BOOL fSuccess = CreateProcess( - szApplicationName, - lpCommandLine, - NULL, - NULL, - TRUE, - 0, - NULL, - NULL, - &aStartupInfo, - &aProcessInfo ); - - if ( fSuccess ) - { - // Wait for soffice process to be terminated to allow other applications - // to wait for termination of started process - - WaitForSingleObject( aProcessInfo.hProcess, INFINITE ); - - CloseHandle( aProcessInfo.hProcess ); - CloseHandle( aProcessInfo.hThread ); - - return 0; - } - - DWORD dwError = GetLastError(); - - LPVOID lpMsgBuf; - - FormatMessage( - FORMAT_MESSAGE_ALLOCATE_BUFFER | - FORMAT_MESSAGE_FROM_SYSTEM, - NULL, - dwError, - MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), // Default language - (LPTSTR)&lpMsgBuf, - 0, - NULL - ); - - // Display the string. - MessageBox( NULL, (LPCTSTR)lpMsgBuf, NULL, MB_OK | MB_ICONERROR ); - - // Free the buffer. - LocalFree( lpMsgBuf ); - - return GetLastError(); -} - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |