VirtualBox

source: vbox/trunk/src/VBox/Additions/WINNT/Installer/VBoxGuestAdditionsVista.nsh

Last change on this file was 98103, checked in by vboxsync, 16 months ago

Copyright year updates by scm.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id Revision
File size: 3.9 KB
Line 
1; $Id: VBoxGuestAdditionsVista.nsh 98103 2023-01-17 14:15:46Z vboxsync $
2;; @file
3; VBoxGuestAdditionsVista.nsh - Guest Additions installation for Windows Vista/7.
4;
5
6;
7; Copyright (C) 2006-2023 Oracle and/or its affiliates.
8;
9; This file is part of VirtualBox base platform packages, as
10; available from https://www.virtualbox.org.
11;
12; This program is free software; you can redistribute it and/or
13; modify it under the terms of the GNU General Public License
14; as published by the Free Software Foundation, in version 3 of the
15; License.
16;
17; This program is distributed in the hope that it will be useful, but
18; WITHOUT ANY WARRANTY; without even the implied warranty of
19; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
20; General Public License for more details.
21;
22; You should have received a copy of the GNU General Public License
23; along with this program; if not, see <https://www.gnu.org/licenses>.
24;
25; SPDX-License-Identifier: GPL-3.0-only
26;
27
28Function Vista_CheckForRequirements
29
30 Push $0
31
32 ${LogVerbose} "Checking for installation requirements for Vista / Windows 7 / Windows 8 ..."
33
34 ; Nothing to do here right now.
35
36 Pop $0
37
38FunctionEnd
39
40Function Vista_Prepare
41
42 ; Try to restore the original Direct3D files in case we're coming from an old(er) Guest Additions
43 ; installation, which formerly replaced those system files with our own stubs.
44 ; This no longer is needed and thus needs to be reverted in any case.
45 Call RestoreFilesDirect3D
46 ; Ignore the result in case we had trouble restoring. The system would be in an inconsistent state anyway.
47
48 Call VBoxMMR_Uninstall
49
50FunctionEnd
51
52Function Vista_CopyFiles
53
54 SetOutPath "$INSTDIR"
55 SetOverwrite on
56
57 ; The files are for Vista only, they go into the application directory
58
59 ; VBoxNET drivers are not tested yet - commented out until officially supported and released
60 ;FILE "$%PATH_OUT%\bin\additions\VBoxNET.inf"
61 ;FILE "$%PATH_OUT%\bin\additions\VBoxNET.sys"
62
63FunctionEnd
64
65Function Vista_InstallFiles
66
67 ${LogVerbose} "Installing drivers for Vista / Windows 7 / Windows 8 ..."
68
69 SetOutPath "$INSTDIR"
70 ; Nothing here yet
71
72!ifdef UNUSED_CODE
73 Goto done
74
75error:
76
77 Abort "ERROR: Could not install files! Installation aborted."
78
79done:
80!endif ; UNUSED_CODE
81
82FunctionEnd
83
84Function Vista_Main
85
86 Call Vista_Prepare
87 Call Vista_CopyFiles
88 Call Vista_InstallFiles
89
90FunctionEnd
91
92!macro Vista_UninstallInstDir un
93Function ${un}Vista_UninstallInstDir
94
95!if $%KBUILD_TARGET_ARCH% == "x86" ; 32-bit
96 Delete /REBOOTOK "$INSTDIR\netamd.inf"
97 Delete /REBOOTOK "$INSTDIR\pcntpci5.cat"
98 Delete /REBOOTOK "$INSTDIR\PCNTPCI5.sys"
99!endif
100
101FunctionEnd
102!macroend
103;!insertmacro Vista_UninstallInstDir "" - only .un version used
104!insertmacro Vista_UninstallInstDir "un."
105
106!macro Vista_Uninstall un
107Function ${un}Vista_Uninstall
108
109 ; Remove credential provider
110 ${LogVerbose} "Removing auto-logon support ..."
111 DeleteRegKey HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\Credential Providers\{275D3BCC-22BB-4948-A7F6-3A3054EBA92B}"
112 DeleteRegKey HKCR "CLSID\{275D3BCC-22BB-4948-A7F6-3A3054EBA92B}"
113 Delete /REBOOTOK "$g_strSystemDir\VBoxCredProv.dll"
114
115 Call ${un}VBoxMMR_Uninstall
116
117FunctionEnd
118!macroend
119!ifndef UNINSTALLER_ONLY
120 !insertmacro Vista_Uninstall ""
121!endif
122!insertmacro Vista_Uninstall "un."
123
124!macro VBoxMMR_Uninstall un
125Function ${un}VBoxMMR_Uninstall
126
127 ; Remove VBoxMMR always
128
129 DetailPrint "Uninstalling VBoxMMR."
130 Call ${un}StopVBoxMMR
131
132 DeleteRegValue HKLM "Software\Microsoft\Windows\CurrentVersion\Run" "VBoxMMR"
133
134 Delete /REBOOTOK "$g_strSystemDir\VBoxMMR.exe"
135
136 !if $%KBUILD_TARGET_ARCH% == "amd64"
137 Delete /REBOOTOK "$g_strSysWow64\VBoxMMRHook.dll"
138 Delete /REBOOTOK "$INSTDIR\VBoxMMR-x86.exe"
139 Delete /REBOOTOK "$INSTDIR\VBoxMMRHook-x86.dll"
140 !else
141 Delete /REBOOTOK "$g_strSystemDir\VBoxMMRHook.dll"
142 Delete /REBOOTOK "$INSTDIR\VBoxMMR.exe"
143 Delete /REBOOTOK "$INSTDIR\VBoxMMRHook.dll"
144 !endif
145
146FunctionEnd
147!macroend
148!insertmacro VBoxMMR_Uninstall ""
149!insertmacro VBoxMMR_Uninstall "un."
Note: See TracBrowser for help on using the repository browser.

© 2023 Oracle
ContactPrivacy policyTerms of Use