Update infinstaller
This commit is contained in:
parent
c793372a5f
commit
4ff1d3fadb
@ -16,7 +16,7 @@
|
||||
; # (ii) to include a valid copyright notice on Your software product in which
|
||||
; # the Sample Code is embedded; and
|
||||
; # (iii) to indemnify, hold harmless, and defend Us and Our suppliers from and
|
||||
; # against any claims or lawsuits, including attorneys’ fees, that arise
|
||||
; # against any claims or lawsuits, including attorneys<EFBFBD> fees, that arise
|
||||
; # or result from the use or distribution of the Sample Code.
|
||||
; #########################################################################################
|
||||
; //***************************************************************************
|
||||
@ -30,7 +30,7 @@
|
||||
; //
|
||||
; // Purpose: Installs the Sysinternals Suite
|
||||
; //
|
||||
; // Updated: October 26, 2015
|
||||
; // Updated: September 20, 2019
|
||||
; //
|
||||
; // INF File Generation Script version: 1.0.0
|
||||
; //
|
||||
@ -76,6 +76,7 @@ Install_SysinternalsSuite.inf
|
||||
|
||||
[SysinternalsSuite.Files.ProgramFiles]
|
||||
accesschk.exe
|
||||
accesschk64.exe
|
||||
AccessEnum.exe
|
||||
AdExplorer.chm
|
||||
ADExplorer.exe
|
||||
@ -85,90 +86,140 @@ adrestore.exe
|
||||
Autologon.exe
|
||||
autoruns.chm
|
||||
Autoruns.exe
|
||||
Autoruns64.dll
|
||||
Autoruns64.exe
|
||||
autorunsc.exe
|
||||
autorunsc64.exe
|
||||
Bginfo.exe
|
||||
Bginfo64.exe
|
||||
Cacheset.exe
|
||||
Clockres.exe
|
||||
Clockres64.exe
|
||||
Contig.exe
|
||||
Contig64.exe
|
||||
Coreinfo.exe
|
||||
ctrl2cap.amd.sys
|
||||
ctrl2cap.exe
|
||||
ctrl2cap.nt4.sys
|
||||
ctrl2cap.nt5.sys
|
||||
dbgview.chm
|
||||
Dbgview.chm
|
||||
Dbgview.exe
|
||||
Desktops.exe
|
||||
Disk2vhd.chm
|
||||
disk2vhd.exe
|
||||
diskext.exe
|
||||
diskext64.exe
|
||||
Diskmon.exe
|
||||
DISKMON.HLP
|
||||
DiskView.exe
|
||||
DMON.SYS
|
||||
du.exe
|
||||
du64.exe
|
||||
efsdump.exe
|
||||
Eula.txt
|
||||
FindLinks.exe
|
||||
FindLinks64.exe
|
||||
handle.exe
|
||||
handle64.exe
|
||||
hex2dec.exe
|
||||
hex2dec64.exe
|
||||
junction.exe
|
||||
junction64.exe
|
||||
ldmdump.exe
|
||||
Listdlls.exe
|
||||
Listdlls64.exe
|
||||
livekd.exe
|
||||
livekd64.exe
|
||||
LoadOrd.exe
|
||||
LoadOrd64.exe
|
||||
LoadOrdC.exe
|
||||
LoadOrdC64.exe
|
||||
logonsessions.exe
|
||||
logonsessions64.exe
|
||||
movefile.exe
|
||||
movefile64.exe
|
||||
notmyfault.exe
|
||||
notmyfault64.exe
|
||||
notmyfaultc.exe
|
||||
notmyfaultc64.exe
|
||||
ntfsinfo.exe
|
||||
ntfsinfo64.exe
|
||||
pagedfrg.exe
|
||||
pagedfrg.hlp
|
||||
pendmoves.exe
|
||||
pendmoves64.exe
|
||||
pipelist.exe
|
||||
pipelist64.exe
|
||||
PORTMON.CNT
|
||||
portmon.exe
|
||||
PORTMON.HLP
|
||||
procdump.exe
|
||||
procdump64.exe
|
||||
procexp.chm
|
||||
procexp.exe
|
||||
procexp64.exe
|
||||
procmon.chm
|
||||
Procmon.exe
|
||||
PsExec.exe
|
||||
PsExec64.exe
|
||||
psfile.exe
|
||||
psfile64.exe
|
||||
PsGetsid.exe
|
||||
PsGetsid64.exe
|
||||
PsInfo.exe
|
||||
PsInfo64.exe
|
||||
pskill.exe
|
||||
pskill64.exe
|
||||
pslist.exe
|
||||
pslist64.exe
|
||||
PsLoggedon.exe
|
||||
PsLoggedon64.exe
|
||||
psloglist.exe
|
||||
psloglist64.exe
|
||||
pspasswd.exe
|
||||
pspasswd64.exe
|
||||
psping.exe
|
||||
psping64.exe
|
||||
PsService.exe
|
||||
PsService64.exe
|
||||
psshutdown.exe
|
||||
pssuspend.exe
|
||||
pssuspend64.exe
|
||||
Pstools.chm
|
||||
psversion.txt
|
||||
RAMMap.exe
|
||||
readme.txt
|
||||
RegDelNull.exe
|
||||
RegDelNull64.exe
|
||||
regjump.exe
|
||||
RootkitRevealer.chm
|
||||
RootkitRevealer.exe
|
||||
ru.exe
|
||||
ru64.exe
|
||||
sdelete.exe
|
||||
sdelete64.exe
|
||||
ShareEnum.exe
|
||||
ShellRunas.exe
|
||||
sigcheck.exe
|
||||
sigcheck64.exe
|
||||
streams.exe
|
||||
streams64.exe
|
||||
strings.exe
|
||||
strings64.exe
|
||||
sync.exe
|
||||
sync64.exe
|
||||
Sysmon.exe
|
||||
Sysmon64.exe
|
||||
Tcpvcon.exe
|
||||
tcpview.chm
|
||||
Tcpview.exe
|
||||
TCPVIEW.HLP
|
||||
Testlimit.exe
|
||||
Testlimit64.exe
|
||||
Vmmap.chm
|
||||
vmmap.exe
|
||||
Volumeid.exe
|
||||
Volumeid64.exe
|
||||
whois.exe
|
||||
whois64.exe
|
||||
Winobj.exe
|
||||
WINOBJ.HLP
|
||||
ZoomIt.exe
|
||||
@ -189,40 +240,44 @@ HKLM,%UDHERE%
|
||||
setup.ini, progman.groups,,""group1="%16407%\%SysinternalsSuiteGroup%\"""
|
||||
setup.ini, group1,,"""%SysinternalsSuiteCmdPrompt%"",""""""%11%\cmd.exe"""" /k cd /d """"%16422%\%SysinternalsSuiteGroup%"""""",,,,""%16422%\%SysinternalsSuiteGroup%"",""%SysinternalsSuiteCmdPrompt%"""
|
||||
setup.ini, group1,,"""%SysinternalsSuiteURL%"",""""""%16422%\Internet Explorer\iexplore.exe"""" """"http://www.microsoft.com/technet/sysinternals/utilities/sysinternalssuite.mspx"""""",""%16422%\Internet Explorer\iexplore.exe"",1,,""%HOMEDRIVE%%HOMEPATH%"",""%SysinternalsSuiteURL%"""
|
||||
setup.ini, group1,,"""%DiskmonDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\Diskmon.exe"""""",,,,""""%16422%\%SysinternalsSuiteGroup%"""",""%DiskmonDesc%"""
|
||||
setup.ini, group1,,"""%BginfoDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\Bginfo.exe"""""",,,,""""%16422%\%SysinternalsSuiteGroup%"""",""%BginfoDesc%"""
|
||||
setup.ini, group1,,"""%ProcmonDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\Procmon.exe"""""",,,,""""%16422%\%SysinternalsSuiteGroup%"""",""%ProcmonDesc%"""
|
||||
setup.ini, group1,,"""%ADInsightDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\ADInsight.exe"""""",,,,""""%16422%\%SysinternalsSuiteGroup%"""",""%ADInsightDesc%"""
|
||||
setup.ini, group1,,"""%VMMapDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\VMMap.exe"""""",,,,""""%16422%\%SysinternalsSuiteGroup%"""",""%VMMapDesc%"""
|
||||
setup.ini, group1,,"""%AdExplorerDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\AdExplorer.exe"""""",,,,""""%16422%\%SysinternalsSuiteGroup%"""",""%AdExplorerDesc%"""
|
||||
setup.ini, group1,,"""%ZoomItDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\ZoomIt.exe"""""",,,,""""%16422%\%SysinternalsSuiteGroup%"""",""%ZoomItDesc%"""
|
||||
setup.ini, group1,,"""%AutologonDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\Autologon.exe"""""",,,,""""%16422%\%SysinternalsSuiteGroup%"""",""%AutologonDesc%"""
|
||||
setup.ini, group1,,"""%LoadOrdDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\LoadOrd.exe"""""",,,,""""%16422%\%SysinternalsSuiteGroup%"""",""%LoadOrdDesc%"""
|
||||
setup.ini, group1,,"""%WinobjDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\Winobj.exe"""""",,,,""""%16422%\%SysinternalsSuiteGroup%"""",""%WinobjDesc%"""
|
||||
setup.ini, group1,,"""%procexpDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\procexp.exe"""""",,,,""""%16422%\%SysinternalsSuiteGroup%"""",""%procexpDesc%"""
|
||||
setup.ini, group1,,"""%ADExplorerDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\ADExplorer.exe"""""",,,,""""%16422%\%SysinternalsSuiteGroup%"""",""%ADExplorerDesc%"""
|
||||
setup.ini, group1,,"""%TcpviewDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\Tcpview.exe"""""",,,,""""%16422%\%SysinternalsSuiteGroup%"""",""%TcpviewDesc%"""
|
||||
setup.ini, group1,,"""%DiskViewDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\DiskView.exe"""""",,,,""""%16422%\%SysinternalsSuiteGroup%"""",""%DiskViewDesc%"""
|
||||
setup.ini, group1,,"""%AutorunsDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\Autoruns.exe"""""",,,,""""%16422%\%SysinternalsSuiteGroup%"""",""%AutorunsDesc%"""
|
||||
setup.ini, group1,,"""%RamMapDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\RamMap.exe"""""",,,,""""%16422%\%SysinternalsSuiteGroup%"""",""%RamMapDesc%"""
|
||||
setup.ini, group1,,"""%DbgviewDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\Dbgview.exe"""""",,,,""""%16422%\%SysinternalsSuiteGroup%"""",""%DbgviewDesc%"""
|
||||
setup.ini, group1,,"""%RootkitRevealerDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\RootkitRevealer.exe"""""",,,,""""%16422%\%SysinternalsSuiteGroup%"""",""%RootkitRevealerDesc%"""
|
||||
setup.ini, group1,,"""%RAMMapDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\RAMMap.exe"""""",,,,""""%16422%\%SysinternalsSuiteGroup%"""",""%RAMMapDesc%"""
|
||||
setup.ini, group1,,"""%ProcmonDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\Procmon.exe"""""",,,,""""%16422%\%SysinternalsSuiteGroup%"""",""%ProcmonDesc%"""
|
||||
setup.ini, group1,,"""%ZoomItDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\ZoomIt.exe"""""",,,,""""%16422%\%SysinternalsSuiteGroup%"""",""%ZoomItDesc%"""
|
||||
setup.ini, group1,,"""%Autoruns64Desc%"",""""""%16422%\%SysinternalsSuiteGroup%\Autoruns64.exe"""""",,,,""""%16422%\%SysinternalsSuiteGroup%"""",""%Autoruns64Desc%"""
|
||||
setup.ini, group1,,"""%AutologonDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\Autologon.exe"""""",,,,""""%16422%\%SysinternalsSuiteGroup%"""",""%AutologonDesc%"""
|
||||
setup.ini, group1,,"""%WinobjDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\Winobj.exe"""""",,,,""""%16422%\%SysinternalsSuiteGroup%"""",""%WinobjDesc%"""
|
||||
setup.ini, group1,,"""%LoadOrd64Desc%"",""""""%16422%\%SysinternalsSuiteGroup%\LoadOrd64.exe"""""",,,,""""%16422%\%SysinternalsSuiteGroup%"""",""%LoadOrd64Desc%"""
|
||||
setup.ini, group1,,"""%AccessEnumDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\AccessEnum.exe"""""",,,,""""%16422%\%SysinternalsSuiteGroup%"""",""%AccessEnumDesc%"""
|
||||
setup.ini, group1,,"""%DiskViewDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\DiskView.exe"""""",,,,""""%16422%\%SysinternalsSuiteGroup%"""",""%DiskViewDesc%"""
|
||||
setup.ini, group1,,"""%CachesetDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\Cacheset.exe"""""",,,,""""%16422%\%SysinternalsSuiteGroup%"""",""%CachesetDesc%"""
|
||||
setup.ini, group1,,"""%procexp64Desc%"",""""""%16422%\%SysinternalsSuiteGroup%\procexp64.exe"""""",,,,""""%16422%\%SysinternalsSuiteGroup%"""",""%procexp64Desc%"""
|
||||
setup.ini, group1,,"""%ADInsightDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\ADInsight.exe"""""",,,,""""%16422%\%SysinternalsSuiteGroup%"""",""%ADInsightDesc%"""
|
||||
setup.ini, group1,,"""%DiskmonDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\Diskmon.exe"""""",,,,""""%16422%\%SysinternalsSuiteGroup%"""",""%DiskmonDesc%"""
|
||||
setup.ini, group1,,"""%AutorunsDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\Autoruns.exe"""""",,,,""""%16422%\%SysinternalsSuiteGroup%"""",""%AutorunsDesc%"""
|
||||
setup.ini, group1,,"""%Bginfo64Desc%"",""""""%16422%\%SysinternalsSuiteGroup%\Bginfo64.exe"""""",,,,""""%16422%\%SysinternalsSuiteGroup%"""",""%Bginfo64Desc%"""
|
||||
setup.ini, group1,,"""%BginfoDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\Bginfo.exe"""""",,,,""""%16422%\%SysinternalsSuiteGroup%"""",""%BginfoDesc%"""
|
||||
setup.ini, group1,,"""%LoadOrdDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\LoadOrd.exe"""""",,,,""""%16422%\%SysinternalsSuiteGroup%"""",""%LoadOrdDesc%"""
|
||||
setup.ini, group1,,"""%vmmapDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\vmmap.exe"""""",,,,""""%16422%\%SysinternalsSuiteGroup%"""",""%vmmapDesc%"""
|
||||
setup.ini, group1,,"""%ShareEnumDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\ShareEnum.exe"""""",,,,""""%16422%\%SysinternalsSuiteGroup%"""",""%ShareEnumDesc%"""
|
||||
setup.ini, group1,,"""%DesktopsDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\Desktops.exe"""""",,,,""""%16422%\%SysinternalsSuiteGroup%"""",""%DesktopsDesc%"""
|
||||
setup.ini, group1,,"""%procexpDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\procexp.exe"""""",,,,""""%16422%\%SysinternalsSuiteGroup%"""",""%procexpDesc%"""
|
||||
|
||||
|
||||
setup.ini, progman.groups,,""group2="%16407%\%SysinternalsSuiteGroup%\%SysinternalsSuiteDocs%\"""
|
||||
setup.ini, group2,,"""%ProcexpDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\Procexp.chm"""""""
|
||||
setup.ini, group2,,"""%AutorunsDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\Autoruns.chm"""""""
|
||||
setup.ini, group2,,"""%RootkitRevealerDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\RootkitRevealer.chm"""""""
|
||||
setup.ini, group2,,"""%Disk2vhdDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\Disk2vhd.chm"""""""
|
||||
setup.ini, group2,,"""%WinobjDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\Winobj.hlp"""""""
|
||||
setup.ini, group2,,"""%procmonDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\procmon.chm"""""""
|
||||
setup.ini, group2,,"""%ADInsightDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\ADInsight.chm"""""""
|
||||
setup.ini, group2,,"""%TcpviewDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\Tcpview.chm"""""""
|
||||
setup.ini, group2,,"""%DiskmonDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\Diskmon.hlp"""""""
|
||||
setup.ini, group2,,"""%VMMapDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\VMMap.chm"""""""
|
||||
setup.ini, group2,,"""%VmmapDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\Vmmap.chm"""""""
|
||||
setup.ini, group2,,"""%AdExplorerDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\AdExplorer.chm"""""""
|
||||
setup.ini, group2,,"""%DbgviewDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\Dbgview.chm"""""""
|
||||
setup.ini, group2,,"""%PsToolsDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\PsTools.chm"""""""
|
||||
setup.ini, group2,,"""%tcpviewDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\tcpview.chm"""""""
|
||||
setup.ini, group2,,"""%Disk2vhdDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\Disk2vhd.chm"""""""
|
||||
setup.ini, group2,,"""%PstoolsDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\Pstools.chm"""""""
|
||||
setup.ini, group2,,"""%procexpDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\procexp.chm"""""""
|
||||
setup.ini, group2,,"""%autorunsDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\autoruns.chm"""""""
|
||||
setup.ini, group2,,"""%pagedfrgDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\pagedfrg.hlp"""""""
|
||||
setup.ini, group2,,"""%ADInsightDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\ADInsight.chm"""""""
|
||||
setup.ini, group2,,"""%procmonDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\procmon.chm"""""""
|
||||
|
||||
|
||||
|
||||
@ -230,84 +285,92 @@ setup.ini, group2,,"""%PsToolsDesc%"",""""""%16422%\%SysinternalsSuiteGroup%\PsT
|
||||
setup.ini, progman.groups,,""group1="%16407%\%SysinternalsSuiteGroup%"""
|
||||
setup.ini, group1,,"""%SysinternalsSuiteCmdPrompt%"""
|
||||
setup.ini, group1,,"""%SysinternalsSuiteURL%""
|
||||
setup.ini, group1,,"""%DiskmonDesc%""
|
||||
setup.ini, group1,,"""%BginfoDesc%""
|
||||
setup.ini, group1,,"""%ProcmonDesc%""
|
||||
setup.ini, group1,,"""%ADInsightDesc%""
|
||||
setup.ini, group1,,"""%VMMapDesc%""
|
||||
setup.ini, group1,,"""%AdExplorerDesc%""
|
||||
setup.ini, group1,,"""%ZoomItDesc%""
|
||||
setup.ini, group1,,"""%AutologonDesc%""
|
||||
setup.ini, group1,,"""%LoadOrdDesc%""
|
||||
setup.ini, group1,,"""%WinobjDesc%""
|
||||
setup.ini, group1,,"""%procexpDesc%""
|
||||
setup.ini, group1,,"""%ADExplorerDesc%""
|
||||
setup.ini, group1,,"""%TcpviewDesc%""
|
||||
setup.ini, group1,,"""%DiskViewDesc%""
|
||||
setup.ini, group1,,"""%AutorunsDesc%""
|
||||
setup.ini, group1,,"""%RamMapDesc%""
|
||||
setup.ini, group1,,"""%DbgviewDesc%""
|
||||
setup.ini, group1,,"""%RootkitRevealerDesc%""
|
||||
setup.ini, group1,,"""%RAMMapDesc%""
|
||||
setup.ini, group1,,"""%ProcmonDesc%""
|
||||
setup.ini, group1,,"""%ZoomItDesc%""
|
||||
setup.ini, group1,,"""%Autoruns64Desc%""
|
||||
setup.ini, group1,,"""%AutologonDesc%""
|
||||
setup.ini, group1,,"""%WinobjDesc%""
|
||||
setup.ini, group1,,"""%LoadOrd64Desc%""
|
||||
setup.ini, group1,,"""%AccessEnumDesc%""
|
||||
setup.ini, group1,,"""%DiskViewDesc%""
|
||||
setup.ini, group1,,"""%CachesetDesc%""
|
||||
setup.ini, group1,,"""%procexp64Desc%""
|
||||
setup.ini, group1,,"""%ADInsightDesc%""
|
||||
setup.ini, group1,,"""%DiskmonDesc%""
|
||||
setup.ini, group1,,"""%AutorunsDesc%""
|
||||
setup.ini, group1,,"""%Bginfo64Desc%""
|
||||
setup.ini, group1,,"""%BginfoDesc%""
|
||||
setup.ini, group1,,"""%LoadOrdDesc%""
|
||||
setup.ini, group1,,"""%vmmapDesc%""
|
||||
setup.ini, group1,,"""%ShareEnumDesc%""
|
||||
setup.ini, group1,,"""%DesktopsDesc%""
|
||||
setup.ini, group1,,"""%procexpDesc%""
|
||||
|
||||
|
||||
setup.ini, progman.groups,,""group2="%16407%\%SysinternalsSuiteGroup%\%SysinternalsSuiteDocs%\"""
|
||||
setup.ini, group2,,"""%ProcexpDesc%""
|
||||
setup.ini, group2,,"""%AutorunsDesc%""
|
||||
setup.ini, group2,,"""%RootkitRevealerDesc%""
|
||||
setup.ini, group2,,"""%Disk2vhdDesc%""
|
||||
setup.ini, group2,,"""%WinobjDesc%""
|
||||
setup.ini, group2,,"""%procmonDesc%""
|
||||
setup.ini, group2,,"""%ADInsightDesc%""
|
||||
setup.ini, group2,,"""%TcpviewDesc%""
|
||||
setup.ini, group2,,"""%DiskmonDesc%""
|
||||
setup.ini, group2,,"""%VMMapDesc%""
|
||||
setup.ini, group2,,"""%VmmapDesc%""
|
||||
setup.ini, group2,,"""%AdExplorerDesc%""
|
||||
setup.ini, group2,,"""%DbgviewDesc%""
|
||||
setup.ini, group2,,"""%PsToolsDesc%""
|
||||
setup.ini, group2,,"""%tcpviewDesc%""
|
||||
setup.ini, group2,,"""%Disk2vhdDesc%""
|
||||
setup.ini, group2,,"""%PstoolsDesc%""
|
||||
setup.ini, group2,,"""%procexpDesc%""
|
||||
setup.ini, group2,,"""%autorunsDesc%""
|
||||
setup.ini, group2,,"""%pagedfrgDesc%""
|
||||
setup.ini, group2,,"""%ADInsightDesc%""
|
||||
setup.ini, group2,,"""%procmonDesc%""
|
||||
|
||||
|
||||
|
||||
[Strings]
|
||||
DisplayName = "Sysinternals Suite (Uninstall only)"
|
||||
DisplayVersion = "October 26, 2015"
|
||||
DisplayVersion = "September 20, 2019"
|
||||
|
||||
SysinternalsSuiteGroup = "Sysinternals Suite"
|
||||
SysinternalsSuiteCmdPrompt = "Sysinternals Suite Command Prompt"
|
||||
SysinternalsSuiteURL = "Sysinternals Suite Web Page"
|
||||
DiskmonDesc = "DiskMon for Windows"
|
||||
BginfoDesc = "Bginfo"
|
||||
ProcmonDesc = "Process Monitor"
|
||||
ADInsightDesc = "Insight for Active Directory"
|
||||
VMMapDesc = "VMMap"
|
||||
AdExplorerDesc = "Active Directory Explorer"
|
||||
ZoomItDesc = "ZoomIt"
|
||||
AutologonDesc = "Autologon for Windows"
|
||||
LoadOrdDesc = "LoadOrder"
|
||||
WinobjDesc = "WinObj"
|
||||
procexpDesc = "Process Explorer"
|
||||
ADExplorerDesc = "Active Directory Explorer"
|
||||
TcpviewDesc = "TCPView for Windows"
|
||||
DiskViewDesc = "DiskView"
|
||||
AutorunsDesc = "AutoRuns for Windows"
|
||||
RamMapDesc = "RamMap"
|
||||
DbgviewDesc = "DebugView for Windows"
|
||||
RootkitRevealerDesc = "RootkitRevealer"
|
||||
RAMMapDesc = "RamMap"
|
||||
ProcmonDesc = "Process Monitor"
|
||||
ZoomItDesc = "ZoomIt"
|
||||
Autoruns64Desc = "AutoRuns for Windows (64bit)"
|
||||
AutologonDesc = "Autologon for Windows"
|
||||
WinobjDesc = "WinObj"
|
||||
LoadOrd64Desc = "LoadOrder (64bit)"
|
||||
AccessEnumDesc = "AccessEnum"
|
||||
DiskViewDesc = "DiskView"
|
||||
CachesetDesc = "Cacheset"
|
||||
procexp64Desc = "Process Explorer (64bit)"
|
||||
ADInsightDesc = "Insight for Active Directory"
|
||||
DiskmonDesc = "DiskMon for Windows"
|
||||
AutorunsDesc = "AutoRuns for Windows"
|
||||
Bginfo64Desc = "Bginfo (64bit)"
|
||||
BginfoDesc = "Bginfo"
|
||||
LoadOrdDesc = "LoadOrder"
|
||||
vmmapDesc = "VMMap"
|
||||
ShareEnumDesc = "ShareEnum"
|
||||
DesktopsDesc = "Desktops for Windows"
|
||||
procexpDesc = "Process Explorer"
|
||||
|
||||
|
||||
SysinternalsSuiteDocs = "Documentation"
|
||||
ProcexpDesc = "Process Explorer Help"
|
||||
AutorunsDesc = "AutoRuns for Windows Help"
|
||||
RootkitRevealerDesc = "RootkitRevealer Help"
|
||||
Disk2vhdDesc = "Disk2vhd Help"
|
||||
WinobjDesc = "WinObj Help"
|
||||
procmonDesc = "Process Monitor Help"
|
||||
ADInsightDesc = "Insight for Active Directory Help"
|
||||
TcpviewDesc = "TCPView for Windows Help"
|
||||
DiskmonDesc = "DiskMon for Windows Help"
|
||||
VMMapDesc = "VMMap Help"
|
||||
VmmapDesc = "VMMap Help"
|
||||
AdExplorerDesc = "Active Directory Explorer Help"
|
||||
DbgviewDesc = "DebugView for Windows Help"
|
||||
PsToolsDesc = "PsTools Help"
|
||||
tcpviewDesc = "TCPView for Windows Help"
|
||||
Disk2vhdDesc = "Disk2vhd Help"
|
||||
PstoolsDesc = "PsTools Help"
|
||||
procexpDesc = "Process Explorer Help"
|
||||
autorunsDesc = "AutoRuns for Windows Help"
|
||||
pagedfrgDesc = "PageDefrag for Windows Help"
|
||||
ADInsightDesc = "Insight for Active Directory Help"
|
||||
procmonDesc = "Process Monitor Help"
|
||||
|
||||
|
||||
UDHERE = "Software\Microsoft\Windows\CurrentVersion\Uninstall\SysinternalsSuite"
|
||||
|
@ -1,355 +1,364 @@
|
||||
#########################################################################################
|
||||
# MICROSOFT LEGAL STATEMENT FOR SAMPLE SCRIPTS/CODE
|
||||
#########################################################################################
|
||||
# This Sample Code is provided for the purpose of illustration only and is not
|
||||
# intended to be used in a production environment.
|
||||
#
|
||||
# THIS SAMPLE CODE AND ANY RELATED INFORMATION ARE PROVIDED "AS IS" WITHOUT WARRANTY
|
||||
# OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED
|
||||
# WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE.
|
||||
#
|
||||
# We grant You a nonexclusive, royalty-free right to use and modify the Sample Code
|
||||
# and to reproduce and distribute the object code form of the Sample Code, provided
|
||||
# that You agree:
|
||||
# (i) to not use Our name, logo, or trademarks to market Your software product
|
||||
# in which the Sample Code is embedded;
|
||||
# (ii) to include a valid copyright notice on Your software product in which
|
||||
# the Sample Code is embedded; and
|
||||
# (iii) to indemnify, hold harmless, and defend Us and Our suppliers from and
|
||||
# against any claims or lawsuits, including attorneys’ fees, that arise
|
||||
# or result from the use or distribution of the Sample Code.
|
||||
#########################################################################################
|
||||
# //***************************************************************************
|
||||
# // ===============================
|
||||
# // Elevation PowerToys for Windows
|
||||
# // ===============================
|
||||
# //
|
||||
# // Sysinternals Suite INF Installer Creation Script
|
||||
# //
|
||||
# // File: New-SysinternalsSuiteInstaller.ps1
|
||||
# //
|
||||
# // Purpose: PowerShell Script to generate an INF file that installs the
|
||||
# // Sysinternals Suite.
|
||||
# //
|
||||
# // Version: 1.0.0
|
||||
# //
|
||||
# // Revisions:
|
||||
# // ----------
|
||||
# // 1.0.0 10/27/2010 Created script.
|
||||
# //
|
||||
# //***************************************************************************
|
||||
|
||||
$scriptVersion = "1.0.0"
|
||||
|
||||
|
||||
function Extract-Zip
|
||||
{
|
||||
param([string]$zipfilename, [string] $destination)
|
||||
|
||||
if(test-path($zipfilename))
|
||||
{
|
||||
$shellApplication = new-object -com shell.application
|
||||
$zipPackage = $shellApplication.NameSpace($zipfilename)
|
||||
$destinationFolder = $shellApplication.NameSpace($destination)
|
||||
$destinationFolder.CopyHere($zipPackage.Items())
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
$invocation = (Get-Variable MyInvocation -Scope 0).Value
|
||||
$scriptPath = Split-Path $Invocation.MyCommand.Path
|
||||
|
||||
$uriZipFile = "https://download.sysinternals.com/files/SysinternalsSuite.zip"
|
||||
$uriWebPage = "http://technet.microsoft.com/en-us/sysinternals/bb842062.aspx"
|
||||
$regexPattern = "<p>Updated: (.+?)<\/p>"
|
||||
$userAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; .NET CLR 1.0.3705;)"
|
||||
|
||||
|
||||
# Template content of INF file
|
||||
$infContent = @'
|
||||
; #########################################################################################
|
||||
; # MICROSOFT LEGAL STATEMENT FOR SAMPLE SCRIPTS/CODE
|
||||
; #########################################################################################
|
||||
; # This Sample Code is provided for the purpose of illustration only and is not
|
||||
; # intended to be used in a production environment.
|
||||
; #
|
||||
; # THIS SAMPLE CODE AND ANY RELATED INFORMATION ARE PROVIDED "AS IS" WITHOUT WARRANTY
|
||||
; # OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED
|
||||
; # WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE.
|
||||
; #
|
||||
; # We grant You a nonexclusive, royalty-free right to use and modify the Sample Code
|
||||
; # and to reproduce and distribute the object code form of the Sample Code, provided
|
||||
; # that You agree:
|
||||
; # (i) to not use Our name, logo, or trademarks to market Your software product
|
||||
; # in which the Sample Code is embedded;
|
||||
; # (ii) to include a valid copyright notice on Your software product in which
|
||||
; # the Sample Code is embedded; and
|
||||
; # (iii) to indemnify, hold harmless, and defend Us and Our suppliers from and
|
||||
; # against any claims or lawsuits, including attorneys’ fees, that arise
|
||||
; # or result from the use or distribution of the Sample Code.
|
||||
; #########################################################################################
|
||||
; //***************************************************************************
|
||||
; // ===============================
|
||||
; // Elevation PowerToys for Windows
|
||||
; // ===============================
|
||||
; //
|
||||
; // Sysinternals Suite INF Installer
|
||||
; //
|
||||
; // File: Install_SysinternalsSuite.inf
|
||||
; //
|
||||
; // Purpose: Installs the Sysinternals Suite
|
||||
; //
|
||||
; // Updated: <Updated>
|
||||
; //
|
||||
; // INF File Generation Script version: <Scriptversion>
|
||||
; //
|
||||
; //***************************************************************************
|
||||
|
||||
|
||||
[Version]
|
||||
Signature="$Windows NT$"
|
||||
|
||||
[SysinternalsSuiteInstall]
|
||||
CopyFiles = SysinternalsSuite.Files.Inf
|
||||
CopyFiles = SysinternalsSuite.Files.ProgramFiles
|
||||
AddReg = SysinternalsSuite.AddReg
|
||||
UpdateInis = SysinternalsSuite.Links
|
||||
|
||||
[DefaultInstall]
|
||||
CopyFiles = SysinternalsSuite.Files.Inf
|
||||
CopyFiles = SysinternalsSuite.Files.ProgramFiles
|
||||
AddReg = SysinternalsSuite.AddReg
|
||||
UpdateInis = SysinternalsSuite.Links
|
||||
|
||||
|
||||
[DefaultUnInstall]
|
||||
DelFiles = SysinternalsSuite.Files.Inf
|
||||
DelFiles = SysinternalsSuite.Files.ProgramFiles
|
||||
DelReg = SysinternalsSuite.DelReg
|
||||
AddReg = SysinternalsSuite.Once.UnInst.Reg
|
||||
UpdateInis = SysinternalsSuite.Links.Remove
|
||||
|
||||
[SourceDisksNames]
|
||||
55="Windows Sysinternals Suite","",1
|
||||
|
||||
[SourceDisksFiles]
|
||||
Install_SysinternalsSuite.inf=55
|
||||
|
||||
[DestinationDirs]
|
||||
SysinternalsSuite.Files.Inf = 17
|
||||
SysinternalsSuite.Files.ProgramFiles = 16422,Sysinternals Suite
|
||||
SysinternalsSuite.Files.ProgramFiles.ShellRunas = 16422,Sysinternals Suite
|
||||
|
||||
[SysinternalsSuite.Files.Inf]
|
||||
Install_SysinternalsSuite.inf
|
||||
|
||||
[SysinternalsSuite.Files.ProgramFiles]
|
||||
<ProgramFiles>
|
||||
|
||||
[SysinternalsSuite.Once.UnInst.Reg]
|
||||
HKLM,Software\Microsoft\Windows\CurrentVersion\RunOnce\Setup,SysinternalsSuite,,"%11%\cmd.exe /c rd /s /q ""%16422%\Sysinternals Suite"""
|
||||
|
||||
[SysinternalsSuite.AddReg]
|
||||
HKLM,%UDHERE%,DisplayName,,"%DisplayName%"
|
||||
HKLM,%UDHERE%,DisplayVersion,,"%DisplayVersion%"
|
||||
HKLM,%UDHERE%,UninstallString,,"rundll32.exe syssetup.dll,SetupInfObjectInstallAction DefaultUninstall 132 %17%\Install_SysinternalsSuite.inf"
|
||||
|
||||
[SysinternalsSuite.DelReg]
|
||||
HKLM,%UDHERE%
|
||||
|
||||
[SysinternalsSuite.Links]
|
||||
setup.ini, progman.groups,,""group1="%16407%\%SysinternalsSuiteGroup%\"""
|
||||
setup.ini, group1,,"""%SysinternalsSuiteCmdPrompt%"",""""""%11%\cmd.exe"""" /k cd /d """"%16422%\%SysinternalsSuiteGroup%"""""",,,,""%16422%\%SysinternalsSuiteGroup%"",""%SysinternalsSuiteCmdPrompt%"""
|
||||
setup.ini, group1,,"""%SysinternalsSuiteURL%"",""""""%16422%\Internet Explorer\iexplore.exe"""" """"http://www.microsoft.com/technet/sysinternals/utilities/sysinternalssuite.mspx"""""",""%16422%\Internet Explorer\iexplore.exe"",1,,""%HOMEDRIVE%%HOMEPATH%"",""%SysinternalsSuiteURL%"""
|
||||
<AddProgramShortcuts>
|
||||
|
||||
setup.ini, progman.groups,,""group2="%16407%\%SysinternalsSuiteGroup%\%SysinternalsSuiteDocs%\"""
|
||||
<AddHelpShortcuts>
|
||||
|
||||
|
||||
[SysinternalsSuite.Links.Remove]
|
||||
setup.ini, progman.groups,,""group1="%16407%\%SysinternalsSuiteGroup%"""
|
||||
setup.ini, group1,,"""%SysinternalsSuiteCmdPrompt%"""
|
||||
setup.ini, group1,,"""%SysinternalsSuiteURL%""
|
||||
<RemoveProgramShortcuts>
|
||||
|
||||
setup.ini, progman.groups,,""group2="%16407%\%SysinternalsSuiteGroup%\%SysinternalsSuiteDocs%\"""
|
||||
<RemoveHelpShortcuts>
|
||||
|
||||
|
||||
[Strings]
|
||||
DisplayName = "Sysinternals Suite (Uninstall only)"
|
||||
DisplayVersion = "<Updated>"
|
||||
|
||||
SysinternalsSuiteGroup = "Sysinternals Suite"
|
||||
SysinternalsSuiteCmdPrompt = "Sysinternals Suite Command Prompt"
|
||||
SysinternalsSuiteURL = "Sysinternals Suite Web Page"
|
||||
<ProgramStrings>
|
||||
|
||||
SysinternalsSuiteDocs = "Documentation"
|
||||
<HelpStrings>
|
||||
|
||||
UDHERE = "Software\Microsoft\Windows\CurrentVersion\Uninstall\SysinternalsSuite"
|
||||
'@
|
||||
|
||||
|
||||
# Hash table for graphical programs that should have a Start Menu shortcut
|
||||
# Entries are "<executable name>" = "<start menu shortcut name>"
|
||||
$hashStartMenuPrograms = @{
|
||||
"AccessEnum.exe" = "AccessEnum";
|
||||
"AdExplorer.exe" = "Active Directory Explorer";
|
||||
"Autologon.exe" = "Autologon for Windows";
|
||||
"ADInsight.exe" = "Insight for Active Directory";
|
||||
"Autoruns.exe" = "AutoRuns for Windows";
|
||||
"Bginfo.exe" = "Bginfo";
|
||||
"Dbgview.exe" = "DebugView for Windows";
|
||||
"Diskmon.exe" = "DiskMon for Windows";
|
||||
"DiskView.exe" = "DiskView";
|
||||
"LoadOrd.exe" = "LoadOrder";
|
||||
"procexp.exe" = "Process Explorer";
|
||||
"Procmon.exe" = "Process Monitor";
|
||||
"RamMap.exe" = "RamMap";
|
||||
"RootkitRevealer.exe" = "RootkitRevealer";
|
||||
"Tcpview.exe" = "TCPView for Windows";
|
||||
"VMMap.exe" = "VMMap";
|
||||
"Winobj.exe" = "WinObj";
|
||||
"ZoomIt.exe" = "ZoomIt"
|
||||
}
|
||||
|
||||
# Hash table for help files that should have a Start Menu shortcut
|
||||
# Entries are "<help file name>" = "<start menu shortcut name>"
|
||||
$hashStartMenuHelp = @{
|
||||
"PsTools.chm" = "PsTools Help";
|
||||
"AdExplorer.chm" = "Active Directory Explorer Help";
|
||||
"ADInsight.chm" = "Insight for Active Directory Help";
|
||||
"Autoruns.chm" = "AutoRuns for Windows Help";
|
||||
"Dbgview.chm" = "DebugView for Windows Help";
|
||||
"Disk2vhd.chm" = "Disk2vhd Help";
|
||||
"Diskmon.hlp" = "DiskMon for Windows Help";
|
||||
"Procexp.chm" = "Process Explorer Help";
|
||||
"procmon.chm" = "Process Monitor Help";
|
||||
"RootkitRevealer.chm" = "RootkitRevealer Help";
|
||||
"Tcpview.chm" = "TCPView for Windows Help";
|
||||
"VMMap.chm" = "VMMap Help";
|
||||
"Winobj.hlp" = "WinObj Help";
|
||||
}
|
||||
|
||||
$wc = new-object System.Net.WebClient
|
||||
$wc.Headers.Add("user-agent", $userAgent)
|
||||
|
||||
write-host "Downloading web page `"$($uriWebPage)`""
|
||||
$webPage = $wc.DownloadString($uriWebPage)
|
||||
|
||||
$updatedDateString = (select-string -pattern $regexPattern -InputObject $webPage | Select -Expand Matches | Foreach { $_.Groups[1] }).Value
|
||||
write-host "Suite Updated: $($updatedDateString)"
|
||||
|
||||
$downloadFolder = "$($scriptPath)\$($updatedDateString)"
|
||||
$extractFolder = "$($downloadFolder)\Extracted"
|
||||
$filename = "$($downloadFolder)\SysinternalsSuite.zip"
|
||||
|
||||
if ((Test-Path $downloadFolder) -eq $false)
|
||||
{
|
||||
write-host "Creating download folder `"$($downloadFolder)`""
|
||||
New-Item -path "$($scriptPath)\" -name $updatedDateString -type directory > $null
|
||||
}
|
||||
|
||||
if ((Test-Path $extractFolder) -eq $false)
|
||||
{
|
||||
write-host "Creating zip extraction folder `"$($extractFolder)`""
|
||||
New-Item -path "$($downloadFolder)\" -name "Extracted" -type directory > $null
|
||||
}
|
||||
else
|
||||
{
|
||||
write-host "Deleting and recreating zip extraction folder `"$($extractFolder)`""
|
||||
Remove-Item -path $extractFolder -recurse
|
||||
New-Item -path "$($downloadFolder)\" -name "Extracted" -type directory > $null
|
||||
}
|
||||
|
||||
write-host "Downloading Sysinternal Suite Zip file `"$($uriZipFile)`""
|
||||
$wc.DownloadFile($uriZipFile, $filename)
|
||||
|
||||
write-host "Extracting Sysinternal Suite Zip file content"
|
||||
extract-zip $filename $extractFolder
|
||||
|
||||
write-host "Creating INF installer `"$($extractFolder)\Install_SysinternalsSuite.inf`""
|
||||
$infContent = $infContent | %{$_.replace("<Updated>", $updatedDateString)}
|
||||
|
||||
$extractedFiles = Get-ChildItem "$($extractFolder)\*.*"
|
||||
|
||||
write-host " -- Update script version"
|
||||
$infContent = $infContent | %{$_.replace("<Scriptversion>", $scriptVersion)}
|
||||
|
||||
write-host " -- Update file list"
|
||||
[string] $fileList = ""
|
||||
foreach ($file in $extractedFiles)
|
||||
{
|
||||
$fileList = $fileList + $file.Name + "`r`n"
|
||||
}
|
||||
$infContent = $infContent | %{$_.replace("<ProgramFiles>", $fileList)}
|
||||
|
||||
|
||||
write-host " -- Update entries related to program shortcuts"
|
||||
[string] $AddProgramShortcuts = ""
|
||||
[string] $RemoveProgramShortcuts = ""
|
||||
[string] $ProgramStrings = ""
|
||||
foreach ($programName in $hashStartMenuPrograms.Keys)
|
||||
{
|
||||
if (Test-Path "$($extractFolder)\$($programName)")
|
||||
{
|
||||
[string]$fileExt = (Get-Item "$($extractFolder)\$($programName)").extension
|
||||
[string]$fileBaseName = $programName -replace($fileExt ,"")
|
||||
|
||||
$AddLine = 'setup.ini, group1,,"""' + "%$($fileBaseName)Desc%" + '"",""""""%16422%\%SysinternalsSuiteGroup%\' + $programName + '"""""",,,,""""%16422%\%SysinternalsSuiteGroup%"""",""' + "%$($fileBaseName)Desc%" + '"""'
|
||||
$AddProgramShortcuts = $AddProgramShortcuts + $AddLine + "`r`n"
|
||||
|
||||
$RemoveLine = 'setup.ini, group1,,"""' + "%$($fileBaseName)Desc%" + '""'
|
||||
$RemoveProgramShortcuts = $RemoveProgramShortcuts + $RemoveLine + "`r`n"
|
||||
|
||||
$StringsLine = "$($fileBaseName)Desc = " + '"' + "$($hashStartMenuPrograms[$programName])" + '"'
|
||||
$ProgramStrings = $ProgramStrings + $StringsLine + "`r`n"
|
||||
}
|
||||
else
|
||||
{
|
||||
write-host "$($programName) not found"
|
||||
}
|
||||
}
|
||||
$infContent = $infContent | %{$_.replace("<AddProgramShortcuts>", $AddProgramShortcuts)}
|
||||
$infContent = $infContent | %{$_.replace("<RemoveProgramShortcuts>", $RemoveProgramShortcuts)}
|
||||
$infContent = $infContent | %{$_.replace("<ProgramStrings>", $ProgramStrings)}
|
||||
|
||||
|
||||
write-host " -- Update entries related to help file shortcuts"
|
||||
[string] $AddHelpShortcuts = ""
|
||||
[string] $RemoveHelpShortcuts = ""
|
||||
[string] $HelpStrings = ""
|
||||
foreach ($helpName in $hashStartMenuHelp.Keys)
|
||||
{
|
||||
if (Test-Path "$($extractFolder)\$($helpName)")
|
||||
{
|
||||
[string]$fileExt = (Get-Item "$($extractFolder)\$($helpName)").extension
|
||||
[string]$fileBaseName = $helpName -replace($fileExt ,"")
|
||||
#$fileBaseName
|
||||
|
||||
$AddLine = 'setup.ini, group2,,"""' + "%$($fileBaseName)Desc%" + '"",""""""%16422%\%SysinternalsSuiteGroup%\' + $helpName + '"""""""'
|
||||
$AddHelpShortcuts = $AddHelpShortcuts + $AddLine + "`r`n"
|
||||
|
||||
$RemoveLine = 'setup.ini, group2,,"""' + "%$($fileBaseName)Desc%" + '""'
|
||||
$RemoveHelpShortcuts = $RemoveHelpShortcuts + $RemoveLine + "`r`n"
|
||||
|
||||
$StringsLine = "$($fileBaseName)Desc = " + '"' + "$($hashStartMenuHelp[$helpName])" + '"'
|
||||
$HelpStrings = $HelpStrings + $StringsLine + "`r`n"
|
||||
}
|
||||
else
|
||||
{
|
||||
write-host "$($helpName) not found"
|
||||
}
|
||||
}
|
||||
$infContent = $infContent | %{$_.replace("<AddHelpShortcuts>", $AddHelpShortcuts)}
|
||||
$infContent = $infContent | %{$_.replace("<RemoveHelpShortcuts>", $RemoveHelpShortcuts)}
|
||||
$infContent = $infContent | %{$_.replace("<HelpStrings>", $HelpStrings)}
|
||||
|
||||
write-host " -- Saving file to disk"
|
||||
$infContent | Set-Content "$($extractFolder)\Install_SysinternalsSuite.inf"
|
||||
|
||||
write-host ""
|
||||
|
||||
#########################################################################################
|
||||
# MICROSOFT LEGAL STATEMENT FOR SAMPLE SCRIPTS/CODE
|
||||
#########################################################################################
|
||||
# This Sample Code is provided for the purpose of illustration only and is not
|
||||
# intended to be used in a production environment.
|
||||
#
|
||||
# THIS SAMPLE CODE AND ANY RELATED INFORMATION ARE PROVIDED "AS IS" WITHOUT WARRANTY
|
||||
# OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED
|
||||
# WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE.
|
||||
#
|
||||
# We grant You a nonexclusive, royalty-free right to use and modify the Sample Code
|
||||
# and to reproduce and distribute the object code form of the Sample Code, provided
|
||||
# that You agree:
|
||||
# (i) to not use Our name, logo, or trademarks to market Your software product
|
||||
# in which the Sample Code is embedded;
|
||||
# (ii) to include a valid copyright notice on Your software product in which
|
||||
# the Sample Code is embedded; and
|
||||
# (iii) to indemnify, hold harmless, and defend Us and Our suppliers from and
|
||||
# against any claims or lawsuits, including attorneys’ fees, that arise
|
||||
# or result from the use or distribution of the Sample Code.
|
||||
#########################################################################################
|
||||
# //***************************************************************************
|
||||
# // ===============================
|
||||
# // Elevation PowerToys for Windows
|
||||
# // ===============================
|
||||
# //
|
||||
# // Sysinternals Suite INF Installer Creation Script
|
||||
# //
|
||||
# // File: New-SysinternalsSuiteInstaller.ps1
|
||||
# //
|
||||
# // Purpose: PowerShell Script to generate an INF file that installs the
|
||||
# // Sysinternals Suite.
|
||||
# //
|
||||
# // Version: 1.0.0
|
||||
# //
|
||||
# // Revisions:
|
||||
# // ----------
|
||||
# // 1.0.0 10/27/2010 Created script.
|
||||
# //
|
||||
# //***************************************************************************
|
||||
|
||||
$scriptVersion = "1.0.0"
|
||||
|
||||
|
||||
function Extract-Zip
|
||||
{
|
||||
param([string]$zipfilename, [string] $destination)
|
||||
|
||||
if(test-path($zipfilename))
|
||||
{
|
||||
$shellApplication = new-object -com shell.application
|
||||
$zipPackage = $shellApplication.NameSpace($zipfilename)
|
||||
$destinationFolder = $shellApplication.NameSpace($destination)
|
||||
$destinationFolder.CopyHere($zipPackage.Items())
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
$invocation = (Get-Variable MyInvocation -Scope 0).Value
|
||||
$scriptPath = Split-Path $Invocation.MyCommand.Path
|
||||
|
||||
$uriZipFile = "https://download.sysinternals.com/files/SysinternalsSuite.zip"
|
||||
$uriWebPage = "http://technet.microsoft.com/en-us/sysinternals/bb842062.aspx"
|
||||
$regexPattern = "Updated: (.+?)<\/p>"
|
||||
$userAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; .NET CLR 1.0.3705;)"
|
||||
|
||||
|
||||
# Template content of INF file
|
||||
$infContent = @'
|
||||
; #########################################################################################
|
||||
; # MICROSOFT LEGAL STATEMENT FOR SAMPLE SCRIPTS/CODE
|
||||
; #########################################################################################
|
||||
; # This Sample Code is provided for the purpose of illustration only and is not
|
||||
; # intended to be used in a production environment.
|
||||
; #
|
||||
; # THIS SAMPLE CODE AND ANY RELATED INFORMATION ARE PROVIDED "AS IS" WITHOUT WARRANTY
|
||||
; # OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED
|
||||
; # WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE.
|
||||
; #
|
||||
; # We grant You a nonexclusive, royalty-free right to use and modify the Sample Code
|
||||
; # and to reproduce and distribute the object code form of the Sample Code, provided
|
||||
; # that You agree:
|
||||
; # (i) to not use Our name, logo, or trademarks to market Your software product
|
||||
; # in which the Sample Code is embedded;
|
||||
; # (ii) to include a valid copyright notice on Your software product in which
|
||||
; # the Sample Code is embedded; and
|
||||
; # (iii) to indemnify, hold harmless, and defend Us and Our suppliers from and
|
||||
; # against any claims or lawsuits, including attorneys’ fees, that arise
|
||||
; # or result from the use or distribution of the Sample Code.
|
||||
; #########################################################################################
|
||||
; //***************************************************************************
|
||||
; // ===============================
|
||||
; // Elevation PowerToys for Windows
|
||||
; // ===============================
|
||||
; //
|
||||
; // Sysinternals Suite INF Installer
|
||||
; //
|
||||
; // File: Install_SysinternalsSuite.inf
|
||||
; //
|
||||
; // Purpose: Installs the Sysinternals Suite
|
||||
; //
|
||||
; // Updated: <Updated>
|
||||
; //
|
||||
; // INF File Generation Script version: <Scriptversion>
|
||||
; //
|
||||
; //***************************************************************************
|
||||
|
||||
|
||||
[Version]
|
||||
Signature="$Windows NT$"
|
||||
|
||||
[SysinternalsSuiteInstall]
|
||||
CopyFiles = SysinternalsSuite.Files.Inf
|
||||
CopyFiles = SysinternalsSuite.Files.ProgramFiles
|
||||
AddReg = SysinternalsSuite.AddReg
|
||||
UpdateInis = SysinternalsSuite.Links
|
||||
|
||||
[DefaultInstall]
|
||||
CopyFiles = SysinternalsSuite.Files.Inf
|
||||
CopyFiles = SysinternalsSuite.Files.ProgramFiles
|
||||
AddReg = SysinternalsSuite.AddReg
|
||||
UpdateInis = SysinternalsSuite.Links
|
||||
|
||||
|
||||
[DefaultUnInstall]
|
||||
DelFiles = SysinternalsSuite.Files.Inf
|
||||
DelFiles = SysinternalsSuite.Files.ProgramFiles
|
||||
DelReg = SysinternalsSuite.DelReg
|
||||
AddReg = SysinternalsSuite.Once.UnInst.Reg
|
||||
UpdateInis = SysinternalsSuite.Links.Remove
|
||||
|
||||
[SourceDisksNames]
|
||||
55="Windows Sysinternals Suite","",1
|
||||
|
||||
[SourceDisksFiles]
|
||||
Install_SysinternalsSuite.inf=55
|
||||
|
||||
[DestinationDirs]
|
||||
SysinternalsSuite.Files.Inf = 17
|
||||
SysinternalsSuite.Files.ProgramFiles = 16422,Sysinternals Suite
|
||||
SysinternalsSuite.Files.ProgramFiles.ShellRunas = 16422,Sysinternals Suite
|
||||
|
||||
[SysinternalsSuite.Files.Inf]
|
||||
Install_SysinternalsSuite.inf
|
||||
|
||||
[SysinternalsSuite.Files.ProgramFiles]
|
||||
<ProgramFiles>
|
||||
|
||||
[SysinternalsSuite.Once.UnInst.Reg]
|
||||
HKLM,Software\Microsoft\Windows\CurrentVersion\RunOnce\Setup,SysinternalsSuite,,"%11%\cmd.exe /c rd /s /q ""%16422%\Sysinternals Suite"""
|
||||
|
||||
[SysinternalsSuite.AddReg]
|
||||
HKLM,%UDHERE%,DisplayName,,"%DisplayName%"
|
||||
HKLM,%UDHERE%,DisplayVersion,,"%DisplayVersion%"
|
||||
HKLM,%UDHERE%,UninstallString,,"rundll32.exe syssetup.dll,SetupInfObjectInstallAction DefaultUninstall 132 %17%\Install_SysinternalsSuite.inf"
|
||||
|
||||
[SysinternalsSuite.DelReg]
|
||||
HKLM,%UDHERE%
|
||||
|
||||
[SysinternalsSuite.Links]
|
||||
setup.ini, progman.groups,,""group1="%16407%\%SysinternalsSuiteGroup%\"""
|
||||
setup.ini, group1,,"""%SysinternalsSuiteCmdPrompt%"",""""""%11%\cmd.exe"""" /k cd /d """"%16422%\%SysinternalsSuiteGroup%"""""",,,,""%16422%\%SysinternalsSuiteGroup%"",""%SysinternalsSuiteCmdPrompt%"""
|
||||
setup.ini, group1,,"""%SysinternalsSuiteURL%"",""""""%16422%\Internet Explorer\iexplore.exe"""" """"http://www.microsoft.com/technet/sysinternals/utilities/sysinternalssuite.mspx"""""",""%16422%\Internet Explorer\iexplore.exe"",1,,""%HOMEDRIVE%%HOMEPATH%"",""%SysinternalsSuiteURL%"""
|
||||
<AddProgramShortcuts>
|
||||
|
||||
setup.ini, progman.groups,,""group2="%16407%\%SysinternalsSuiteGroup%\%SysinternalsSuiteDocs%\"""
|
||||
<AddHelpShortcuts>
|
||||
|
||||
|
||||
[SysinternalsSuite.Links.Remove]
|
||||
setup.ini, progman.groups,,""group1="%16407%\%SysinternalsSuiteGroup%"""
|
||||
setup.ini, group1,,"""%SysinternalsSuiteCmdPrompt%"""
|
||||
setup.ini, group1,,"""%SysinternalsSuiteURL%""
|
||||
<RemoveProgramShortcuts>
|
||||
|
||||
setup.ini, progman.groups,,""group2="%16407%\%SysinternalsSuiteGroup%\%SysinternalsSuiteDocs%\"""
|
||||
<RemoveHelpShortcuts>
|
||||
|
||||
|
||||
[Strings]
|
||||
DisplayName = "Sysinternals Suite (Uninstall only)"
|
||||
DisplayVersion = "<Updated>"
|
||||
|
||||
SysinternalsSuiteGroup = "Sysinternals Suite"
|
||||
SysinternalsSuiteCmdPrompt = "Sysinternals Suite Command Prompt"
|
||||
SysinternalsSuiteURL = "Sysinternals Suite Web Page"
|
||||
<ProgramStrings>
|
||||
|
||||
SysinternalsSuiteDocs = "Documentation"
|
||||
<HelpStrings>
|
||||
|
||||
UDHERE = "Software\Microsoft\Windows\CurrentVersion\Uninstall\SysinternalsSuite"
|
||||
'@
|
||||
|
||||
|
||||
# Hash table for graphical programs that should have a Start Menu shortcut
|
||||
# Entries are "<executable name>" = "<start menu shortcut name>"
|
||||
$hashStartMenuPrograms = @{
|
||||
"AccessEnum.exe" = "AccessEnum";
|
||||
"ADExplorer.exe" = "Active Directory Explorer";
|
||||
"ADInsight.exe" = "Insight for Active Directory";
|
||||
"Autologon.exe" = "Autologon for Windows";
|
||||
"Autoruns64.exe" = "AutoRuns for Windows (64bit)";
|
||||
"Autoruns.exe" = "AutoRuns for Windows";
|
||||
"Bginfo64.exe" = "Bginfo (64bit)";
|
||||
"Bginfo.exe" = "Bginfo";
|
||||
"Cacheset.exe" = "Cacheset";
|
||||
"Dbgview.exe" = "DebugView for Windows";
|
||||
"Desktops.exe" = "Desktops for Windows";
|
||||
"Diskmon.exe" = "DiskMon for Windows";
|
||||
"DiskView.exe" = "DiskView";
|
||||
"LoadOrd64.exe" = "LoadOrder (64bit)";
|
||||
"LoadOrd.exe" = "LoadOrder";
|
||||
"procexp64.exe" = "Process Explorer (64bit)";
|
||||
"procexp.exe" = "Process Explorer";
|
||||
"Procmon.exe" = "Process Monitor";
|
||||
"RAMMap.exe" = "RamMap";
|
||||
"ShareEnum.exe" = "ShareEnum";
|
||||
"Tcpview.exe" = "TCPView for Windows";
|
||||
"vmmap.exe" = "VMMap";
|
||||
"Winobj.exe" = "WinObj";
|
||||
"ZoomIt.exe" = "ZoomIt"
|
||||
}
|
||||
|
||||
# Hash table for help files that should have a Start Menu shortcut
|
||||
# Entries are "<help file name>" = "<start menu shortcut name>"
|
||||
$hashStartMenuHelp = @{
|
||||
"AdExplorer.chm" = "Active Directory Explorer Help";
|
||||
"ADInsight.chm" = "Insight for Active Directory Help";
|
||||
"autoruns.chm" = "AutoRuns for Windows Help";
|
||||
"Dbgview.chm" = "DebugView for Windows Help";
|
||||
"Disk2vhd.chm" = "Disk2vhd Help";
|
||||
"procexp.chm" = "Process Explorer Help";
|
||||
"procmon.chm" = "Process Monitor Help";
|
||||
"Pstools.chm" = "PsTools Help";
|
||||
"tcpview.chm" = "TCPView for Windows Help";
|
||||
"Vmmap.chm" = "VMMap Help";
|
||||
"pagedfrg.hlp" = "PageDefrag for Windows Help";
|
||||
"Diskmon.hlp" = "DiskMon for Windows Help";
|
||||
"portmon.hlp" = "Port Monitor Help";
|
||||
"tcpview.hlp" = "TCPView for Windows Help";
|
||||
"Winobj.hlp" = "WinObj Help";
|
||||
}
|
||||
|
||||
$wc = new-object System.Net.WebClient
|
||||
$wc.Headers.Add("user-agent", $userAgent)
|
||||
|
||||
write-host "Downloading web page `"$($uriWebPage)`""
|
||||
$webPage = $wc.DownloadString($uriWebPage)
|
||||
|
||||
$updatedDateString = (select-string -pattern $regexPattern -InputObject $webPage | Select -Expand Matches | Foreach { $_.Groups[1] }).Value
|
||||
write-host "Suite Updated: $($updatedDateString)"
|
||||
|
||||
$downloadFolder = "$($scriptPath)/$($updatedDateString)"
|
||||
$extractFolder = "$($downloadFolder)/Extracted"
|
||||
$filename = "$($downloadFolder)/SysinternalsSuite.zip"
|
||||
|
||||
if ((Test-Path $downloadFolder) -eq $false)
|
||||
{
|
||||
write-host "Creating download folder `"$($downloadFolder)`""
|
||||
New-Item -path "$($scriptPath)\" -name $updatedDateString -type directory > $null
|
||||
}
|
||||
|
||||
if ((Test-Path $extractFolder) -eq $false)
|
||||
{
|
||||
write-host "Creating zip extraction folder `"$($extractFolder)`""
|
||||
New-Item -path "$($downloadFolder)\" -name "Extracted" -type directory > $null
|
||||
}
|
||||
else
|
||||
{
|
||||
write-host "Deleting and recreating zip extraction folder `"$($extractFolder)`""
|
||||
Remove-Item -path $extractFolder -recurse
|
||||
New-Item -path "$($downloadFolder)\" -name "Extracted" -type directory > $null
|
||||
}
|
||||
|
||||
write-host "Downloading Sysinternal Suite Zip file `"$($uriZipFile)`""
|
||||
$wc.DownloadFile($uriZipFile, $filename)
|
||||
|
||||
write-host "Extracting Sysinternal Suite Zip file content"
|
||||
#extract-zip $filename $extractFolder
|
||||
Expand-Archive $filename -DestinationPath $extractFolder
|
||||
|
||||
write-host "Creating INF installer `"$($extractFolder)\Install_SysinternalsSuite.inf`""
|
||||
$infContent = $infContent | %{$_.replace("<Updated>", $updatedDateString)}
|
||||
|
||||
$extractedFiles = Get-ChildItem "$($extractFolder)\*.*"
|
||||
|
||||
write-host " -- Update script version"
|
||||
$infContent = $infContent | %{$_.replace("<Scriptversion>", $scriptVersion)}
|
||||
|
||||
write-host " -- Update file list"
|
||||
[string] $fileList = ""
|
||||
foreach ($file in $extractedFiles)
|
||||
{
|
||||
$fileList = $fileList + $file.Name + "`r`n"
|
||||
}
|
||||
$infContent = $infContent | %{$_.replace("<ProgramFiles>", $fileList)}
|
||||
|
||||
|
||||
write-host " -- Update entries related to program shortcuts"
|
||||
[string] $AddProgramShortcuts = ""
|
||||
[string] $RemoveProgramShortcuts = ""
|
||||
[string] $ProgramStrings = ""
|
||||
foreach ($programName in $hashStartMenuPrograms.Keys)
|
||||
{
|
||||
if (Test-Path "$($extractFolder)\$($programName)")
|
||||
{
|
||||
[string]$fileExt = (Get-Item "$($extractFolder)\$($programName)").extension
|
||||
[string]$fileBaseName = $programName -replace($fileExt ,"")
|
||||
|
||||
$AddLine = 'setup.ini, group1,,"""' + "%$($fileBaseName)Desc%" + '"",""""""%16422%\%SysinternalsSuiteGroup%\' + $programName + '"""""",,,,""""%16422%\%SysinternalsSuiteGroup%"""",""' + "%$($fileBaseName)Desc%" + '"""'
|
||||
$AddProgramShortcuts = $AddProgramShortcuts + $AddLine + "`r`n"
|
||||
|
||||
$RemoveLine = 'setup.ini, group1,,"""' + "%$($fileBaseName)Desc%" + '""'
|
||||
$RemoveProgramShortcuts = $RemoveProgramShortcuts + $RemoveLine + "`r`n"
|
||||
|
||||
$StringsLine = "$($fileBaseName)Desc = " + '"' + "$($hashStartMenuPrograms[$programName])" + '"'
|
||||
$ProgramStrings = $ProgramStrings + $StringsLine + "`r`n"
|
||||
}
|
||||
else
|
||||
{
|
||||
write-host "$($programName) not found"
|
||||
}
|
||||
}
|
||||
$infContent = $infContent | %{$_.replace("<AddProgramShortcuts>", $AddProgramShortcuts)}
|
||||
$infContent = $infContent | %{$_.replace("<RemoveProgramShortcuts>", $RemoveProgramShortcuts)}
|
||||
$infContent = $infContent | %{$_.replace("<ProgramStrings>", $ProgramStrings)}
|
||||
|
||||
|
||||
write-host " -- Update entries related to help file shortcuts"
|
||||
[string] $AddHelpShortcuts = ""
|
||||
[string] $RemoveHelpShortcuts = ""
|
||||
[string] $HelpStrings = ""
|
||||
foreach ($helpName in $hashStartMenuHelp.Keys)
|
||||
{
|
||||
if (Test-Path "$($extractFolder)\$($helpName)")
|
||||
{
|
||||
[string]$fileExt = (Get-Item "$($extractFolder)\$($helpName)").extension
|
||||
[string]$fileBaseName = $helpName -replace($fileExt ,"")
|
||||
#$fileBaseName
|
||||
|
||||
$AddLine = 'setup.ini, group2,,"""' + "%$($fileBaseName)Desc%" + '"",""""""%16422%\%SysinternalsSuiteGroup%\' + $helpName + '"""""""'
|
||||
$AddHelpShortcuts = $AddHelpShortcuts + $AddLine + "`r`n"
|
||||
|
||||
$RemoveLine = 'setup.ini, group2,,"""' + "%$($fileBaseName)Desc%" + '""'
|
||||
$RemoveHelpShortcuts = $RemoveHelpShortcuts + $RemoveLine + "`r`n"
|
||||
|
||||
$StringsLine = "$($fileBaseName)Desc = " + '"' + "$($hashStartMenuHelp[$helpName])" + '"'
|
||||
$HelpStrings = $HelpStrings + $StringsLine + "`r`n"
|
||||
}
|
||||
else
|
||||
{
|
||||
write-host "$($helpName) not found"
|
||||
}
|
||||
}
|
||||
$infContent = $infContent | %{$_.replace("<AddHelpShortcuts>", $AddHelpShortcuts)}
|
||||
$infContent = $infContent | %{$_.replace("<RemoveHelpShortcuts>", $RemoveHelpShortcuts)}
|
||||
$infContent = $infContent | %{$_.replace("<HelpStrings>", $HelpStrings)}
|
||||
|
||||
write-host " -- Saving file to disk"
|
||||
$infContent | Set-Content "$($extractFolder)\Install_SysinternalsSuite.inf"
|
||||
|
||||
write-host ""
|
||||
|
||||
|
5
readme
5
readme
@ -1,4 +1,7 @@
|
||||
Creating the Install_SysinternalsSuite.inf:
|
||||
|
||||
follow the howto:
|
||||
http://blogs.technet.com/b/elevationpowertoys/archive/2010/10/27/powershell-script-to-create-a-sysinternals-suite-inf-file-installer.aspx
|
||||
http://blogs.technet.com/b/elevationpowertoys/archive/2010/10/27/powershell-script-to-create-a-sysinternals-suite-inf-file-installer.aspx
|
||||
|
||||
https://www.domador.net/extras/sysinternals-suite-installer/
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user