Jump to content

SSIBuild (Sysinternals Suite Installer Builder)


DarkShadows

Recommended Posts

SSIBuild (Sysinternals Suite Installer Builder)

 

Version:
2.7

 

Last Update:
05:00 PM 11/10/2009 (GMT-5 +1 during DST)
Copyright © 2009 Kenneth R. Alcock, all rights reserved.

 

The Sysinternals Suite Installer Builder (SSIBuild) includes:
  • All Sysinternals Suite Installer files (listed below)
  • The .cmd file: SSIBuild.cmd
  • The .txt file: ReadMe.txt
  • The .ouc file: USBProgram.ouc
  • The .dcf file: Sysinternals.dcf

 

The Sysinternals Suite Installer includes:
  • The .inf files: InstSSI.inf, AcceptEULA.inf
  • The .hta file: AcceptEULA.hta
  • The .cmd files: SFX-SSI.cmd, Uninstall.cmd
  • The .ini files: SFX-SSI.ini
The Sysinternals Suite of utilities was originally authored by Mark Russinovich and Bryce Cogswell of Sysinternals. The Sysinternals Suite is Copyright © 2000-2009 by Sysinternals, a wholly owned subsidiary of the Microsoft Corporation. Read the Eula.txt file included in the SysinternalsSuite.zip download from Microsoft TechNet for Sysinternals Suite licensing restrictions. A shortcut to this file is installed in the Windows Start Menu.
Kenneth R. Alcock is not affiliated with or a representative of the Microsoft Corporation.

Objective:

 

To:
build an installer package, named SysinternalsSuite.exe, for the popular
by Mark Russinovich and Bryce Cogswell.

 

NOTE:
Sysinternals is now subsidiary of the Microsoft Corporation.

 

In a way that:
  • Requires one to download the Sysinternals Suite directly from Microsoft.
     
    NOTE:
    WUD will download SysinternalsSuite.zip directly from Microsoft.
  • Allows one to quickly create their own SysinternalsSuite.exe installer.
     
    NOTE:
    The Sysinternals Suite End User License Agreement (Eula.txt) expressly states that you may not: "publish the software for others to copy" or: "transfer the software or this agreement to any third party". Thus, redistributing the Microsoft SysinternalsSuite.zip download, or the SysinternalsSuite.exe installer created by using this guide, are both violations of the Sysinternals Suite EULA. This is why I am publishing tools to create your own installer.
  • Automates as much of the process as is practical.
  • Does not require an installation software suite--one only need download the free tools listed in this guide to create the installation package.
  • Uses open-source-like techniques to create the installer and install all of the Sysinternals Suite utilities, which allows anyone with technical knowledge to see, report, and help trouble-shoot any issues.
  • Ensures the resulting installer does the following:
  • Installs all Sysinternals Suite utilities to this folder:
    %ProgramFiles%\Sysinternals Suite
     
    NOTE:
    The program folder may be changed in SFX-SSI.ini.
  • Adds the program folder listed above to the system %PATH% variable.
     
    NOTE:
    A reboot is required before the new path will take effect.
  • Creates shortcuts under the following Start Menu program groups:
    •  
      Start Menu\Programs\Sysinternals Suite
    •  
      Start Menu\Programs\Sysinternals Suite\File And Disk Utilities
    •  
      Start Menu\Programs\Sysinternals Suite\Networking Utilities
    •  
      Start Menu\Programs\Sysinternals Suite\Process Utilities
    •  
      Start Menu\Programs\Sysinternals Suite\PsTools
    •  
      Start Menu\Programs\Sysinternals Suite\Security Utilities
    •  
      Start Menu\Programs\Sysinternals Suite\System Information
    •  
      Start Menu\Programs\Sysinternals Suite\Miscellaneous Utilities

     

    NOTE:
    The group names may be changed in SFX-SSI.ini.
    [*]
    Creates an uninstaller entry in
    Control Panel - Add/Remove Programs
    .
    [*]
    Supports Windows 2000/XP/2003/Vista/2008/7 (32-bit versions only).

     

    NOTE:
    I have only tested the installer on Windows XP and Vista. However, this should also work on Windows 7.
    [*]
    Supports unattended installation.

     

    NOTE:
    So far, only Windows XP CD integration has been tested.

 

So that:
  • It becomes quick and easy to install the Sysinternals Suite.
  • It becomes quick and easy to cleanly uninstall the Sysinternals Suite.
  • Providing an installer and uninstaller for the Sysinternals Suite is
     
    legal, since you still download the Sysinternals Suite files directly
     
    from Microsoft and you create the installer package yourself.
  • The installer is simple to integrate into an XPCD building process.

The Automated Process:

Here's how to create your own SysinternalsSuite.exe installer.
  1. Download SysinternalsSuite.zip from Sysinternals (Microsoft) to the Sysinternals Suite download folder.
     
  2. Download SSIBuild.exe from me to the Sysinternals Suite download folder.
     
  3. Open the
    Sysinternals Suite download folder
    , and double-click on SSIBuild.exe (Sysinternals Suite Installer Builder), which will extract itself and run SSIBuild.cmd.
     
    NOTE:
    SSIBuild.exe and SSIBuild.cmd are discussed in detail later on.
  4. SSIBuild.cmd will prompt to delete the WORK files. Enter "N", if you wish to customize your installer.
     
    NOTE:
    When the SSIBuild.cmd script completes, SysinternalsSuite.exe will exist in the
    Sysinternals Suite download folder
    .
  5.  
    OPTIONAL:
    OPTIONAL: You can customize certain aspects of your installer, including Start Menu Folder and Program Folder names. To customize your installer:
     
    1.  
    2. Copy SFX-SSI.ini
       
      from:
      the
      WorkSSIB subfolder
       
      to:
      the
      Sysinternals Suite download folder
      .
    3. Edit your own customized SFX-SSI.ini and save it
       
      to:
      the
      Sysinternals Suite download folder
      .
    4. Re-execute either SSIBuild.cmd or SSIBuild.exe.

       
SSIBuild.cmd will recreate SysinternalsSuite.exe, this time using your version of SFX-SSI.ini from the
Sysinternals Suite download folder
, which it will copy to the
WorkSSIB
subfolder (overwriting it).

 

NOTE:

 

SSIBuild.cmd never deletes your version of SFX-SSI.ini from the
Sysinternals Suite download folder
.

 

NOTE:

 

To reset SFX-SSI.ini back to the default values, simply delete your version from the
Sysinternals Suite download folder
and restart the process from
step 3
.

 

 

NOTE:

 

 

You are done at this point. The remaining sections below are just the technical details of the entire process, and the issue log.

 


Using Windows Update Downloader

 

 

 

by Jean-Sebastien Carle (JCarle on MSFN.org) is a great tool for keeping up-to-date with all of your Windows Updates and Microsoft Technologies used to build a stable Windows system. I provide a WUD update list for this project named SysinternalsSuite-x86-ENU.ulz, which allows you to (re) download everything within WUD. After installing WUD on your engineering system, just click the download link in the MSFN.org guide to download and import the update list directly into WUD.

 

 


Check for Updates Often

 

 

Mark Russinovich tends to update the Sysinternals Suite regularly; however, the download link for the suite is static and does not change. Whenever a new version is released, you should re-download the SysinternalsSuite.zip and re-execute SSIBuild.exe. (In WUD, just select the Sysinternals Suite and re-download it.)

 

 

For the most part, the process to create your own installer should remain the same from version-to-version. However, Mark occassionally adds new utilities or retires old and obsolete ones. SSIBuild only supports the most current version of Sysinternals Suite. Subscribe to the MSFN.org discussion thread to be notified of any new releases of SSIBuild. Whenever I update this guide and release a new SSIBuild version, always do the following:

 

  1. Read the Version History, along with the related detailed sections for any changes I have made to the process.
  2. Re-download both SysinteralsSuite.zip and SSIBuild.exe.
     
    If you are using WUD, click on the SysinternalsSuite-x86-ENU.ulz from. the MSFN.org guide. The update list will automatically import itself into WUD (overwriting the old list). Then open WUD and select the entire Sysinternals Suite category and re-download all related files at once.
     
    NOTE:
    I have changed the list file name from SysinternalsSuite.ulz to to SysinternalsSuite-x86-ENU.ulz, which is consistent with the meta data internal to the WUD list. If you happen to see two lists in WUD, just delete the older list.
  3. Recreate SysinternalsSuite.exe by double-clicking on SSIBuild.exe.

SSIBuild.exe (Sysinternals Suite Installer Builder)

SSIBuild.exe (Sysinternals Suite Installer Builder) is a WinRar SFX I developed to automate building SysinternalsSuite.exe (see next section) from the SysinternalsSuite.zip downloaded from the www.sysinternals.com (Microsoft TechNet).

 

SSIBuild.exe will do the following:
  1. Unpack the following files directly to the download folder:
    •  
      SSIBuild.cmd
      - Sysinternals Suite Installer Builder script.
    •  
      Readme.txt
      - This content you are reading now in printable format.
    •  
      Sysinternals.dcf
      - Sysinternals menu for Directory Opus running from USB.
    •  
      USBProgram.ouc
      - USBProgram user command for Directory Opus.
[*]
Unpack all 7-Zip command line files to the
7za465 subfolder
.
  •  
  • 7za.exe
  • 7-Zip.chm
  • 7-Zip Command Line License.txt
  • 7-Zip Command Line ReadMe.txt
  • 7-Zip Extra History.txt
  • 7-Zip Extra License.txt
  • 7-Zip Extra ReadMe.txt
  • 7-Zip For Installers ReadMe.txt
  • 7zS.sfx
  • Copying.txt
     
    NOTE:
    SSIBuild.cmd also writes temporary VBScript (.vbs) files here.
[*]
Unpack all SSIBuild.exe installation files to the
WorkSSIB subfolder
.
  •  
    AcceptEULA.hta
    - HTML app that lets user read and accept EULA globally.
  •  
    AcceptEULA.inf
    - The .inf file called by AcceptEULA.hta.
  •  
    hidec.exe
    - Tiny executable that hides the command prompt.
  •  
    InstSSI.inf
    - Installer .inf file (this does most of the work).
  •  
    SFX-SSI.cmd
    - Sets system path and launches InstSSI.inf.
  •  
    SFX-SSI.ini
    - Governs a few installer parameters.
  •  
    Uninstall.cmd
    - Unsets system path and launches Uninstall.inf.
  •  
    Urls\*.url
    - Several shortcuts to the Microsoft TechNet web page for each Sysinternals utility or utility category.
[*]
If SFX-SSI.ini exists in the download folder, copy it to
WorkSSIB
, overwriting any existing destination copy.

 

NOTE:
This would be your own customized SFX-SSI.ini file.
[*]
Extract SysinternalsSuite.zip to
WorkSSIB\SysinternalsSuite
.
[*]
Version the SysinsternalsSuite.exe installer by using an assumed Build Date for the Sysinternals Suite. SSIBuild will find the
Date Modified
stamp of the most recent file extracted from the SysinternalsSuite.zip download and assume the Build Date of the suite is one day later.

 

NOTE:
SSIBuild updates InstSSI.inf, which will not work correctly, until the Version string assignment is appended to the end of the file.
[*]
Create SysinternalsSuite.exe in the download folder.
[*]
Prompt to delete from the
Syinternals Suite download folder
:
  •  
    7za465 subfolder
    .
  •  
    WorkSSIB subfolder
    .
  •  
    Readme.txt
  •  
    SSIBuild.cmd
[*]
Open the
SSIBuild.log
file in Notepad.

SysinternalsSuite.exe (Sysinternals Suite Installer)

SysinternalsSuite.exe (Sysinternals Suite Installer) is a 7-Zip SFX that I developed to properly install the Sysinternals Suite. (By proper, I mean with a Start Menu group, shortcuts, and a Control Panel uninstaller entry.) SysinternalsSuite.exe is the final output of running SSIBuild.exe (see previous section above).

 

SysinternalsSuite.exe does the following:
  1. Extracts all its files to a subfolder under
    %TEMP%
    .
  2. Executes SFX-SSI.cmd, via a hidden command console, which:
  3. Adds the
    %ProgramFiles%\Sysinternals Suite
    folder to the system %PATH%.
     
    NOTE:
    A reboot is required before the new path will take effect.
  4. Determines which version of Windows is running.
  5. Modifies the installation files based on you SFX-SSI.ini settings.
  6. Launches the
    InstSSI*.inf
    file for the Windows version, which:
  7. Copies all Sysinternals Suite files to the program folder:
    %ProgramFiles%\Sysinternals Suite
     
    NOTE:
    The program folder can be changed in SFX-SSI.ini.
  8. Copies the
    InstSSI.inf
    to the program folder as Uninstall.inf.
  9. Copies the Uninstall.cmd script to the program folder.
  10. Creates a
    Sysinternals Suite
    uninstall entry in Control Panel.
  11. Creates the following program group and subgroups:
     
     
    |
     
    +--File And Disk Utilities
     
    |
     
    +--Networking Utilities
     
    |
     
    +--Process Utilities
     
    |
     
    +--PsTools
     
    |
     
    +--Security Utilities
     
    |
     
    +--System Information
     
    |
     
    \--Miscellaneous Utilities
    
     
    Start Menu\Programs\Sysinternals Suite

     

    The Sysinternals web site divides the utilities into the above categories; some utilities fit into more than one category. The Start Menu\Programs group contains a subgroup for each utility category. Category subgroups each contain the following items:
    • A shortcut for each utility in that category.
       
      NOTE:
      Command line utilities are run via
      Cmd.exe /K
      . If the command has a help screen, the shortcut will display it rather than just running the command itself.
    • A shortcut to each Shell utility's help file (if one exists).
    • A Microsoft TechNet Reference subgroup with:
      • A shortcut to the utility category's TechNet web page.
      • A Shortcut to each utility's individual TechNet web page.






    1.  
 
Deletes its subfolder under
%TEMP%
after installation completes.

 

 

 


Directory Opus USB Files:

 

 

 

 

In my quite-biased opinion, Directory Opus by GPSoftware is simply the best file manager available for the Windows operating system. Directory Opus is not freeware, but compared against the time it saves me every day, it's well worth the price of my license. When purchased with a USB license, Directory Opus runs from any ordinary USB flash drive or U3 drive. GPSoftware offers a free, fully-functioning, 60-day trial license, so check out Directory Opus at the links below.

 

  •  
     
    Download the software installer and PDF Manual from this web site. Be sure to complete the online form to receive a free, 60-day license certificate by email. Otherwise, the stock software certificate may expire.
  •  
     
    Here's a link to an excellent Directory Opus online introductory tutorial.
  •  
     
    The Directory Opus Resource Center is a very active user-to-user forum with: FAQs; tutorials; plug-ins; themes; as well as customized toolbars, buttons, menus, and user commands. (I'm user KenAlcock on that forum.)
Personally, I use an ordinary USB flash drive running the PortableApps.com menu and Directory Opus. I like the PortableApps.com menu, but it's tedious to manually add all the Sysinternals programs to it. On the other hand, Directory Opus is the most customizable software package to be found. So my solution was to create an Opus user command that correctly launches programs from a USB flash drive and a Sysinternals menu for Directory Opus. SSIBuild now includes both of these as exported files for use with Directory Opus v9.x and later.
  •  
    Sysinternals.dcf -
     
    In Directory Opus, menus are just a type of button containing other buttons. And all buttons can be exported as Directory Opus Command files (.dcf). Sysinternals.dcf contains an exported Sysinternals Suite menu that contains all the same submenus and shortcuts (buttons) installed by the Sysinternals Suite Installer (SysinternalsSuite.exe). Buttons that run each Sysinternals Suite command use the Directory Opus USBProgram user command (below) to run the programs correctly from a USB flash drive.
  •  
    USBProgram.ouc -
     
    Directory Opus user commands are reusable commands that can accept a command parameter template and can be invoked from command lines stored in: a menu item, a toolbar button, a hotkey sequence, or a File Type context menu item within Directory Opus. The Directory Opus user commands themselves can be comprised of: internal Directory Opus commands, external commands (3rd-party or operating system programs), or even scripts. The USBProgram.ouc file is an exported Directory Opus user command I developed named USBProgram. It's designed to correctly launch USB programs from within Directory Opus running on a USB flash drive, where the USB drive could have any drive letter. USBProgram can launch command-line utilities inside a new Cmd.exe console (which remains open after execution), after appending the program's folder path to the %Path% environmental variable for the Cmd.exe console. This allows the user to type regular syntax for the command-line utility, without having to specify a completely qualified file path for it.

 

NOTE:
I provide support for these Directory Opus related files, and document them more extensively, in the Directory Opus Resource Center under the Buttons and Toolbars forum. Please direct all related questions there.
Edited by DarkShadows
Link to comment
Share on other sites


Version History:

  • v2.7 - 2009-11-10
    Current Version
    • Updated InstSSI.inf, removed NewSID.exe installation.

    [*]
    v2.6 - 2009-09-16
    • Added support for Directory Opus running from USB.

    • Updated InstSSI.inf, removed RegMon installation.

    • Updated InstSSI.inf, removed FileMon installation.

    • Audited the different utility categories.

    [*]
    v2.5 - 2009-08-23
    • Updated InstSSI.inf to install ProcDump.

    • Updated InstSSI.inf, removed DiskMNT installation.

    • Updated InstSSI.inf, removed Physmem installation.

    • Updated InstSSI.inf, removed RegHide installation.

    [*]
    v2.3 - 2009-03-24
    • Updated InstSSI.inf script to install shortcut for VMMap help file.

    • Updated SSIBuild.cmd to open .log file with focus, even on Vista+.

    • SSIBuild now uses 7-Zip v4.65.

    [*]
    v2.2 - 2009-02-26
    • Updated InstSSI.inf script to install the newly-added VMMap utility.

    [*]
    v2.1 - 2009-02-20
    • Fixed a reported bug where SSIBuild no longer supported a download folder path containing spaces in name. The following characters are still not supported in folder names: "<, >, (, ), %, ^, |, *, \".

    [*]
    v2.0 - 2009-02-16
    • Updated: Online Guide and Readme.txt, and Sysinternals.ulz.

    • Fixed a reported issue by recoding the Windows version check inside SFX-SSI.cmd to find strings: " 5.1", " 6.0", etc. (note preceding space), instead of strings like: "Version 5.1", "Version 6.0", etc. Apparently, Microsoft changes the word "Version" in some language variants of Windows XP, which was "Versi¢n 5.1" in Spanish. Hopefully, this resolves all issues with non-English languages.

    • Hereafter, SSIBuild will always version the SysinsternalsSuite.exe installer by using an assumed Build Date for the Sysinternals Suite. SSIBuild will find the Date Modified stamp of the most recent file inside the SysinternalsSuite.zip download and assume the Build Date of the suite is one day later. I will now only update SSIBuild when new files are added to the suite, or when older files are deprecated and removed from the suite. Since the SysinternalsSuite.zip download URL is static, the WUD entry will no longer reflect a version (Build Date).

      NOTE:
      Always redownload SysinternalsSuite.zip and SSIBuild.exe, before creating your installer to ensure you have the most recent version of all the utilities!

    [*]
    v1.8 - 2008-12-23
    • Updated Sysinternals Suite Version to 2008-12-19.

    • Updated: Online Guide and Readme.txt, and Sysinternals.ulz.

    [*]
    v1.7 - 2008-12-17
    • Updated Sysinternals Suite Version to 2008-12-10.

    • Added detailed Version History.

    • Updated: Online Guide and Readme.txt, and Sysinternals.ulz.

    [*]
    v1.6 - 2008-12-08
    • Fixed bug in SSIBuild.cmd where it was checking Windows version with a case-sensitive Find command; script would fall back to :BetaCode and report an unsupported Windows version. This affected French Windows XP Pro SKUs (and maybe others).

      NOTE:
      I'm still waiting for end-user to confirm the issue resolution.

    [*]
    v1.5 - 2008-11-21
    • Updated Sysinternals Suite version (build date) to 2008-11-19.

    • Added HTML application (AcceptEULA.hta and AcceptEULA.inf), which allows the current user to read and accept EULA for all Sysinternals Suite utilities at once. Accepting the EULA can still be pre-set in the installer, but it only applies to the currently logged in user (unless installed from unattended Windows XP setup at T-12 or T-13).

    • Fixed one minor bug in the uninstaller, where the user could get prompted for the EULA, when unregistering shell extensions.

    • Updated: Online Guide and Readme.txt, and Sysinternals.ulz.

    [*]
    v1.4 - 2008-10-30
    • Updated Sysinternals Suite version (build date) to 2008-10-30.

    • Online Guide, Readme.txt, and Sysinternals.ulz were not updated.

    [*]
    v1.3 - 2008-10-26
    • First version published on MSFN.org forums (at least I think it was).

    • Added :BetaCode to SFX-SSI.cmd, which will hopefully inspire users to report any unsupported Windows versions or SKUs.

    • Updated SFX-SSI.ini to register ShellRunAs and ShellRunAsNetOnly.

    [*]
    v1.2 - 2008-10-23
    • Updated SFX-SSI.ini to pre-accept EULA during installation.

    • Updated InstSSI5.inf.ini to set accept EULA registry values during installation. However, since these are HKCU settings, they only affect the currently logged-in user. Recommend T-12, T-13 install.

    • Settled on using the SysinternalsSuite.zip Build Date for version inside Control Panel - Add/Remove Programs listing.

    [*]
    v1.1 - 2008-10-21
    • Added SFX-SSI.ini, which allows users to customize program groups.

    [*]
    v1.0 - 2008-10-11
    • First version, had several unhandled known issues and a few bugs.

    • Created unpublished CreateSSIBuild.cmd which automatically builds new versions of InstSSI5.inf on-the-fly and packages SSIBuild.exe.

Edited by DarkShadows
Link to comment
Share on other sites

Issue Log

This is a list of technical issues I am currently working or have resolved. I could use some help with the open issues. If you have technical value to add, please post to the MSFN.org thread, rather than sending me private messages--I want to encourage other MSFN.org members to participate. The more eyes on an issue, the more air-tight the resolution. Thanks!

00.Meta Data (Look out for errors)

I manually maintain a Sysinternals Suite.xls file that lists known meta-data for each Sysinternals Suite utility, such as:

  • File name
  • Proper name (when the utility is run).
  • Current version (Modified Date Stamp on the file itself).
  • Date last updated (Modified Date or as posted on TechNet).
  • Type (Shell, Console, Help, File, NT4).
  • TechNet web page URL .aspx
  • TechNet web page URL .mspx
  • Which Console utilities have help screens ("exe" or "-?").
  • Which Shell utilities have help files (.hlp/.chm file name).
  • Which utilities have no help (Help column = "None").
  • Which utilities will run on a given Windows version (not yet added).
  • Which utilities fall into each category as posted on TechNet:
    • File And Disk Utilities
    • Networking Utilities
    • Process Utilities
    • PsTools
    • Security Utilities
    • System Information
    • Miscellaneous Utilities

    [*] Which utilities require elevated UAC privileges (not yet added).

    [*] Description of each file (used in Start Menu shortcut InfoTip).

I execute an unpublished .cmd script that parses a text version of my Excel spreadsheet to programmatically create the InstSSI.inf file used by the installer. The meta-data constantly changes going forward, as Mark Russinovich constantly updates his utilities to better support newer Windows Versions (Mark recently added two new utilities). I try to keep this Excel spreadsheet accurate and up-to-date, so I encourage everyone to be watchful for any mistakes in the Start Menu shortcuts.

NOTE: This issue will always remain open.

01. List of small known minor errors and omissions.

  1. I wanted some kind of version to display in Control Panel, so I'm using the Modified date of the most recent utility plus one day.
  2. DiskMNT.exe and DiskMNT.hlp are installed but no shortcuts are added. They are intentionally skipped.

02. You can have your installer pre-accept the EULA for each utility.

The installer builder will allow you to pre-accept the EULA when you build your installer. However, this will only apply to the current user. Accepting the EULA for any Sysinternals utility is a per-user setting (HKCU). So if the suite is installed on a previously installed Windows PC, only the currently logged in user will benefit from this setting. But if the installer were run from Windows XP Setup at T-13, when the Default User profile is the current user, the setting will apply to all users who log into the PC afterward.

04:00 AM 11/21/2008

As of v1.5, I changed the EULA shortcut in the main Sysinternals Suite group, which now launches an HTML application that displays EULA.txt from Sysinternals and permits the currently logged in user to accept (or decline) the EULA for all Sysinternals Suite utilities at once.

03. Your installer can register the ShellRunAs shell context menu entries.

The installer builder will allow you to register the ShellRunAs shell context menu entries. SFX-SSI.ini contains two parameters that govern the registration of the shell extensions. (The default action will not register either shell extension.) Uninstall.cmd will always unregister both shell extensions, since they are being uninstalled.

Most Sysinternals utilities pop up a EULA dialog at first execution; the ShellRunas.exe /quiet parameter does not suppress this. While the ShellRunas.exe shell extensions are being registered, the EULA is temporarily accepted. After shell extension registration completes, the EULA registry setting is then set according to the AcceptEULA value in SFX-SSI.ini.

04. FYI, you may receive this Windows XP Process Monitor Warning:

The version of Dbghelp.dll configured does not support the Microsoft
Symbol Server. Please download and install the Microsoft Debugging
Tools for Windows to get a version that does.

The warning dialog has the following link:

http://www.microsoft.com/whdc/devtools/deb...ng/default.mspx

05. Utilities with known issues on Windows Vista.

PageDefrag - Program runs, but it doesn't work on Vista. I really hope Mark updates this utility for Vista.

FileMon - Advises to use Process Monitor instead.

RegMon - Advises to use Process Monitor instead.

Some Sysinternals utilities utilize older 32-bit .hlp files, which require WinHlp32.exe. Microsoft deprecated this help program starting with Windows Vista. However, Microsoft published an update package to install the missing software. You can read more about it here: KB917607.

06. Windows Vista Physmem.exe Error:

Physmem v1.0: physical memory viewer
By Mark Russinovich
Sysinternals - http://www.sysinternals.com

Could not open \device\physicalmemory: Access is denied.

I received this error message while running Windows Vista Ultimate with UAC disabled, and logged in as an Administrator.

Q1: Can anyone else confirm this?

Q2: Any ideas?

07. Phd.dll

In the past, I encountered a more recent version of phd.dll on one PC, than the version included in the SysinternalsSuite.zip downloaded at that time.

08:46 PM 10/11/2008 I just scanned a virgin Vista install on VPC and found no phd.dll file.

06:58 AM 10/21/2008 I just scanned a virgin XP install on VPC and found no phd.dll file.

07:26 AM 10/22/2008 I just compared the Modified date and time stamp, file size, and file version of phd.dll in the last two version of the SysinternalsSuite.zip download. The phd.dll in the most recent SysinternalsSuite.zip version has a more recent Modified date and time stamp and a larger file size. Curiously, both files display the same file version (v5.0.2195.1600).

Q1: Perhaps phd.dll is installed with some other Microsoft software?

Q2: Has anyone else found another version of phd.dll?

Q3: If so, do you know where you got the newer phd.dll from?

Q4: I wonder if this issue can be closed or not?

08. Read unexpanded system %PATH%

Using a Windows NT command script (.cmd), I need to read the system path into a environmental variable, without expanding any environmental variables used by folder paths that already exist in the system path.

RESOLVED: See Issue 10.

09. Add folder to system %PATH%

Using a Windows NT command script (.cmd), I Need to add Sysinternals Suite program folder path to the system path, (HKLM Path Environmental Variable registry value), in a way that:

  • Uses a Windows NT command script (.cmd).
  • Uses %ProgramFiles% in the Sysinternals Suite program folder path.
  • Only adds the Sysinternals Suite program folder path to the system path, if it is not already part of the system path (either as a discrete folder path, or one that uses %ProgramFiles%).

RESOLVED: See Issue 10.

10. Remove folder from system %PATH%

Using a Windows NT command script (.cmd), I Need to remove Sysinternals Suite program folder path from the system path, (HKLM Path Environmental Variable registry value), in a way that:

  • Uses a Windows NT command script (.cmd).
  • Uses %ProgramFiles% in the Sysinternals Suite program folder path.
  • Removes the Sysinternals Suite program folder path from the system path, if it has been added either as a discrete folder path, or one that uses %ProgramFiles%.

RESOLVED: I developed :SysPath, a label function for NT command scripts that can add or remove a folder path to the system path. Currently, :SysPath supports Windows XP Pro and Windows Vista Ultimate, but it still needs to be tested on other Windows versions and possible modification.

11. Is the HKLM Environmental Variable: Path type REG_SZ or REG_EXPAND_SZ

(when Windows 2000/XP/2003/2005/Vista/2008 is first installed)?

I'm fairly certain they will all be Type REG_EXPAND_SZ, but I would like concrete confirmation.

Operating System					  Data Type of HKLM %PATH%
--------------------------------------------------------------
Windows 2000 ........................ ?
Windows XP Pro ...................... REG_EXPAND_SZ
Windows Server 2003 ................. ?
Windows Media Center Edition 2005 ... ?
Windows Server 2008 ................. ?
Windows Vista Ultimate .............. REG_EXPAND_SZ

12. I need one beta tester for each Windows version or edition below:

  1. Windows 2000.
  2. Windows Server 2003 (32-bit only).
  3. Windows Media Center 2005.
  4. Windows Server 2008 (32-bit only).
  5. Windows XP Home Edition.
  6. Windows Vista Home Basic Edition (32-bit).
  7. Windows Vista Home Premium Edition (32-bit).

To any interested Beta Tester:

When you run your installer on an untested Windows version, the script will attempt to:

  1. Capture your Windows Version using the Ver command.
  2. Capture your Windows Product Name using Reg.exe.
  3. Capture your Windows Product Current Version using Reg.exe.
  4. Capture your %Path% environmental variable using Reg.exe.
  5. Open the text file with all the captured results in Notepad.

IMPORTANT: It is imperative that you DO NOT modify the .txt file in any way. just save the file and post it to the MSFN.org thread as an attachment.

What I'm after in these tests is the range of responses that each version and edition of Windows will yield. For example, Reg.exe under Windows XP pro returns Reg.exe output that requires my script to skip 4 lines, whereas the same command under Vista Ultimate returns Reg.exe output that requires my script to skip only 2 lines. Also, I want to ensure that Reg.exe is included in each version of Windows that the Sysinternals Suite Installer will support, since I will be using it to modify the System Path. I also want a verified collection of Ver output strings to use in my .cmd scripts (not just for this project).

Before anyone starts making a boatload of suggestions, yes, I am aware that there are other ways to gather this information. However, I'm not at all interested in them. The Sysinternals Suite Installer script, and the uninstaller script will be using these techniques.

Edited by DarkShadows
Link to comment
Share on other sites

  • 2 weeks later...

Sysinternals Suite Current Build Date: 2008-10-30

SysinternalsSuite.zip Changes:

ProcMon.exe	Process Monitor	v2.2	2008-10-29

SSIBuild Guide Changes: None

SysinternalsSuite.ulz Changes: None (disregard SysinternalsSuite.zip build date)

SSIBuild.exe Changes: Updated Sysinternals Suite version (build date) to 2008-10-30 — very inconsequential

Required End User Action:

  1. Using WUD, re-download SysinternalsSuite.zip and SSIBuild.exe.
  2. Execute SSIBuild.exe to recreate SysinternalsSuite.exe.

Link to comment
Share on other sites

  • 2 weeks later...

Sysinternals Suite Current Build Date: 2008-11-19

SysinternalsSuite.zip Changes:

Handle.exe	  Handle			  v3.42   2008-11-19
ProcExp.exe Process Explorer v11.3 2008-11-19
AccessChk.exe AccessChk v4.22 2008-11-11
ZoomIt.exe ZoomIt v2.2 2008-11-11

SSIBuild Guide Changes: Minor

SysinternalsSuite.ulz Changes: Updated SysinternalsSuite.zip build date and SSIBuild.exe version number

SSIBuild.exe Changes:

  • Updated Sysinternals Suite version (build date) to 2008-11-19
  • Added HTML application (AcceptEULA.hta and AcceptEULA.inf), which allow the current user to read and accept EULA for all Sysinternals Suite utilities at once. Accepting the EULA can still be pre-set in the installer, but it only applies to the currently logged in user (unless installed from unattended Windows XP setup at T-12 or T-13).
  • Fixed one minor bug in uninstaller user could get prompted for EULA, when unregistering shell extensions.

Required End User Action:

  1. Re-download SysinternalsSuite.ulz from first post.
  2. Using WUD, re-download SysinternalsSuite.zip and SSIBuild.exe.
  3. Execute SSIBuild.exe to recreate SysinternalsSuite.exe.

Link to comment
Share on other sites

  • 2 weeks later...

Okat thanks for the report and the log file. I'm won't be able to look at this any time this week, but I will look into it.

At first glance I believe it's because of this:

	Common Start Menu	REG_EXPAND_SZ	%ALLUSERSPROFILE%\Menu Démarrer

I'm using a Windows NT Command script for the uninstaller, and perhaps the accented letter is the issue. I may have to write a VBScript-based installer and uninstaller.

Link to comment
Share on other sites

@chtom

Okay, I think found out the real problem. It wasn't your French Program group name. It was the output of the Ver command. For some reason French Windows XP uses lowercase "v" in "version", and my Find command was case sensitive. This has been fixed now. Please re-download SSIBuild.exe, rebuild your installer, and post back and let me know if it works for you now.

Thanks, -DS

Link to comment
Share on other sites

A new version is out, go get it. B)

Sysinternals Suite Installer Builder Version: 1.7

Sysinternals Suite Current Build Date: 2008-12-10

SysinternalsSuite.zip Changes:

Executable	  Program			Version  Date
------------------------------------------------------
Autoruns.exe AutoRuns v9.36 2008-12-10
Autorunsc.exe Autorunsc v9.36 2008-12-10
Du.exe Disk Usage v1.33 2008-12-10
ProcExp.exe Process Explorer v11.31 2008-12-10
ProcMon.exe Process Monitor v2.3 2008-12-10

Required End User Action:

  1. Read Version History in second post.
  2. Re-download SysinternalsSuite.ulz from first post.
  3. Using WUD, re-download SysinternalsSuite.zip and SSIBuild.exe.
  4. Execute SSIBuild.exe to recreate SysinternalsSuite.exe.

Link to comment
Share on other sites

A new version is out, go get it. B)

Sysinternals Suite Installer Builder Version: 1.8

Sysinternals Suite Current Build Date: 2008-12-19

SysinternalsSuite.zip Changes:

Executable	  Program	 Version   Date
------------------------------------------------------
Autoruns.exe AutoRuns v9.37 2008-12-17
Autorunsc.exe Autorunsc v9.37 2008-12-17
AccessChk.exe AccessChk v4.23 2008-12-17

Required End User Action:

  1. Read Version History in second post.
  2. Re-download SysinternalsSuite.ulz from first post.
  3. Using WUD, re-download SysinternalsSuite.zip and SSIBuild.exe.
  4. Execute SSIBuild.exe to recreate SysinternalsSuite.exe.

Link to comment
Share on other sites

  • 1 month later...

Thanks for the issue report! I just signed into to msfn.org to post a new SSIBuild version too!

Yes, this issue is very similar to the French one. I have an idea how to fix this issue once and for all, and for all languages to (so long as they use Arabic version numbers). Chack back here in a hour or so and it will be fixed.

Link to comment
Share on other sites

A new SSIBuild version is out, go get it. B)

Sysinternals Suite Installer Builder Version: 2.0

Sysinternals Suite Current Build Date: 2009-02-04

SysinternalsSuite.zip Changes:

Executable	  Program		  Version  Date
------------------------------------------------------
AccessChk.exe AccessChk v4.23 2008-12-17
Autoruns.exe AutoRuns v9.39 2009-02-03
Autorunsc.exe Autorunsc v9.39 2009-02-03
ProcExp.exe Process Explorer v11.33 2009-02-03
ZoomIt.exe ZoomIt v3.2 2009-02-03

Required End User Action:

  1. Read Version History in second post.
  2. Re-download SysinternalsSuite.ulz from first post.
  3. Using WUD, re-download SysinternalsSuite.zip and SSIBuild.exe.
  4. Execute SSIBuild.exe to recreate SysinternalsSuite.exe.

Edited by DarkShadows
Link to comment
Share on other sites

Thanks for the issue report (and your patience).

When I made changes to the script this last version, I did something which lost support for folder paths containing spaces. This issue has already affected another project I maintain in the same way, since they both share the same 7-Zip build code. :realmad:

For now, just download (or move) everything to a folder path without spaces and you should be fine. When you see SSIBuild v2.1 posted, it will allow folder paths with spaces once again. Somebody didn't test enough I guess... :whistle:

-DS

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...