summaryrefslogtreecommitdiff
path: root/setup_native/source/win32/customactions
diff options
context:
space:
mode:
authorAndras Timar <atimar@suse.com>2013-01-29 13:31:44 +0100
committerAndras Timar <atimar@suse.com>2013-01-30 15:25:02 +0100
commit030124d836a3f8571e26c8ce6b5d752ca7ab2511 (patch)
tree7c0b8fa75cad371ada76cc017abdd7a667a96d59 /setup_native/source/win32/customactions
parentbc20ba9cd6502b59853d1ca6e2818936290a720a (diff)
remove CustomAction ExecutePostUninstallScript
I think this CustomAction is unnecessary, providing that we do not use Star Division home-made PATCH technology. I have never seen this CustomAction used in any OpenOffice.org/LibreOffice builds. Change-Id: I62f3b5a3ef8a9686f018ca1af52689954262e830
Diffstat (limited to 'setup_native/source/win32/customactions')
-rw-r--r--setup_native/source/win32/customactions/shellextensions/exports.dxp1
-rw-r--r--setup_native/source/win32/customactions/shellextensions/makefile.mk1
-rw-r--r--setup_native/source/win32/customactions/shellextensions/postuninstall.cxx145
3 files changed, 0 insertions, 147 deletions
diff --git a/setup_native/source/win32/customactions/shellextensions/exports.dxp b/setup_native/source/win32/customactions/shellextensions/exports.dxp
index b9fbe18890e3..8ec35618fc4b 100644
--- a/setup_native/source/win32/customactions/shellextensions/exports.dxp
+++ b/setup_native/source/win32/customactions/shellextensions/exports.dxp
@@ -2,7 +2,6 @@ InstallStartmenuFolderIcon
DeinstallStartmenuFolderIcon
SetProductInstallMode
RebuildShellIconCache
-ExecutePostUninstallScript
CompleteInstallPath
MigrateInstallPath
CheckInstallDirectory
diff --git a/setup_native/source/win32/customactions/shellextensions/makefile.mk b/setup_native/source/win32/customactions/shellextensions/makefile.mk
index 93eaaa87cd87..3fc78d38f8a5 100644
--- a/setup_native/source/win32/customactions/shellextensions/makefile.mk
+++ b/setup_native/source/win32/customactions/shellextensions/makefile.mk
@@ -40,7 +40,6 @@ SLOFILES = \
$(SLO)$/startmenuicon.obj \
$(SLO)$/upgrade.obj \
$(SLO)$/iconcache.obj \
- $(SLO)$/postuninstall.obj \
$(SLO)$/migrateinstallpath.obj \
$(SLO)$/completeinstallpath.obj \
$(SLO)$/checkdirectory.obj \
diff --git a/setup_native/source/win32/customactions/shellextensions/postuninstall.cxx b/setup_native/source/win32/customactions/shellextensions/postuninstall.cxx
deleted file mode 100644
index 2ae17694cf42..000000000000
--- a/setup_native/source/win32/customactions/shellextensions/postuninstall.cxx
+++ /dev/null
@@ -1,145 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed
- * with this work for additional information regarding copyright
- * ownership. The ASF licenses this file to you 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 .
- */
-
-#define _WIN32_WINDOWS 0x0410
-#ifdef _MSC_VER
-#pragma warning(push, 1) /* disable warnings within system headers */
-#endif
-#define WIN32_LEAN_AND_MEAN
-#include <windows.h>
-#include <msiquery.h>
-#ifdef _MSC_VER
-#pragma warning(pop)
-#endif
-
-#include <malloc.h>
-
-#ifdef UNICODE
-#define _UNICODE
-#define _tstring wstring
-#else
-#define _tstring string
-#endif
-#include <tchar.h>
-#include <string>
-
-#include <io.h>
-
-static std::_tstring GetMsiProperty( MSIHANDLE handle, const std::_tstring& sProperty )
-{
- std::_tstring result;
- TCHAR szDummy[1] = TEXT("");
- DWORD nChars = 0;
-
- if ( MsiGetProperty( handle, sProperty.c_str(), szDummy, &nChars ) == ERROR_MORE_DATA )
- {
- DWORD nBytes = ++nChars * sizeof(TCHAR);
- LPTSTR buffer = reinterpret_cast<LPTSTR>(_alloca(nBytes));
- ZeroMemory( buffer, nBytes );
- MsiGetProperty(handle, sProperty.c_str(), buffer, &nChars);
- result = buffer;
- }
-
- return result;
-}
-
-
-static BOOL ExecuteCommand( LPCTSTR lpCommand, BOOL bSync )
-{
- BOOL fSuccess = FALSE;
- STARTUPINFO si;
- PROCESS_INFORMATION pi;
-
- ZeroMemory( &si, sizeof(si) );
- si.cb = sizeof(si);
-
- fSuccess = CreateProcess(
- NULL,
- (LPTSTR)lpCommand,
- NULL,
- NULL,
- FALSE,
- 0,
- NULL,
- NULL,
- &si,
- &pi
- );
-
- if ( fSuccess )
- {
- if ( bSync )
- WaitForSingleObject( pi.hProcess, INFINITE );
-
- CloseHandle( pi.hProcess );
- CloseHandle( pi.hThread );
- }
-
- return fSuccess;
-}
-
-extern "C" UINT __stdcall ExecutePostUninstallScript( MSIHANDLE handle )
-{
- TCHAR szValue[8192];
- DWORD nValueSize = sizeof(szValue);
- HKEY hKey;
- std::_tstring sInstDir;
-
- std::_tstring sProductKey = GetMsiProperty( handle, TEXT("FINDPRODUCT") );
-
- // MessageBox( NULL, sProductKey.c_str(), "Titel", MB_OK );
-
- if ( ERROR_SUCCESS == RegOpenKey( HKEY_CURRENT_USER, sProductKey.c_str(), &hKey ) )
- {
- if ( ERROR_SUCCESS == RegQueryValueEx( hKey, TEXT("INSTALLLOCATION"), NULL, NULL, (LPBYTE)szValue, &nValueSize ) )
- {
- sInstDir = szValue;
- }
- RegCloseKey( hKey );
- }
- else if ( ERROR_SUCCESS == RegOpenKey( HKEY_LOCAL_MACHINE, sProductKey.c_str(), &hKey ) )
- {
- if ( ERROR_SUCCESS == RegQueryValueEx( hKey, TEXT("INSTALLLOCATION"), NULL, NULL, (LPBYTE)szValue, &nValueSize ) )
- {
- sInstDir = szValue;
- }
- RegCloseKey( hKey );
- }
- else
- return ERROR_SUCCESS;
-
- std::_tstring sInfFile = sInstDir + TEXT("program\\postuninstall.inf");
- std::_tstring sCommand = _T("RUNDLL32.EXE ");
-
- // MessageBox( NULL, sInfFile.c_str(), "Titel", MB_OK );
-
- sCommand += _T("setupapi.dll");
-
- sCommand += _T(",InstallHinfSection PostUninstall 132 ");
- sCommand += sInfFile;
-
- if ( 0 == _taccess( sInfFile.c_str(), 2 ) )
- ExecuteCommand( sCommand.c_str(), TRUE );
-
- DeleteFile( sInfFile.c_str() );
-
- return ERROR_SUCCESS;
-}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */