Skip to Content
Technical Articles
Author's profile photo David Meder

SAPonWin Check Tool

The SAPonWin Check Tool (SCT) collects configuration and logging data from a Windows Server host. Based on the collected information, the SAPonWin Check Tool validates your configuration and checks for common misconfigurations, for example:

  • Operating System: Operating System Version, Windows Service Start-up types, Permissions for file System objects and network shares, etc.
  • Network configuration: Forward/Backward Name Resolution of IP Addresses and Hostnames

Disclaimer: This tool is not part of the SAP Products and thus not officially supported by SAP. It was designed to help our customers and supporters to identify potential misconfigurations. Use it at your own risk.

Download the SAPonWin Check Tool (SCT)

Get the latest version

You can find the latest version of the SCT attached to SAP Note 3273783 – How to use SAPonWin Check Tool?.

The version history of the SCT can be found at the end of this blog post.

Advance information

For more details about how to upgrade the .NET Framework and the WMF, see:

System Requirements

To run the SCT, the system must fulfil the following requirements

  • Windows Server 2012 or later with .NET Framework 4.5.2
  • Windows Management Framework 5.1 (including PowerShell 5.1) or later. You can get the Windows Management Framework 5.1 from Microsoft: http://aka.ms/wmf5download
  • Disk space: The required disk space (on the drive where SAPonWinCheckTool.exe is located) mainly depends on the size of the collected data. Especially the size of the Windows event logs and the SAP work and log folders can sum up to several Gigabytes.
  • The user used to run the SCT must be at least a member of the local Administrators group. It can be either a local user account or a domain user account.

Running SCT

Extract the archive to a local directory on the system you want to check, for example C:\SCT.

You can run the SCT by running SAPonWinCheckTool.exe via Windows Explorer:

  • Navigate to C:\SCT
  • Run SAPonWinCheckTool.exe

or from an administrative (= run as Administrator) command prompt or PowerShell:

cd C:\SCT
.\SAPonWinCheckTool.exe

Wait until SCT has collected all required information from your local system. This may take some minutes depending on the performance of your local system and the amount of data being collected.

After the SCT completed its work successfully, the generated report is opened with the default web browser. You will also find a SCTReport-<Date>-<Timestamp>.zip archive in the same directory where SAPonWinCheckTool.exe is located (C:\SCT in this example). This ZIP archive contains all data that was collected by the SCT:

  • Network:
    • Network related configuration data like IP configuration, IP to Hostname resolution, configured SMB shares, etc.
  • OperatingSystem
    • EventLogs: Export of the event logs Application and System.
    • Configuration data like user rights Assignment, environment variables, list of active filter drivers, …
  • SAP
    • Profile\<SID>: Profile files for all detected SAP Systems, grouped by the <SID>
    • Work\<SID>: Work folders of all local SAP Systems, grouped by the <SID> This directory contains one subdirectory <SID> for each detected SAP System storing the collected data
  • WMI:
    • Several XML files that contain WMI/CIM data that was exported by SCT
  • SCTReport.html
    • The generated report

Attach this archive file to a SAP incident to provide SAP support additional information about the affected Windows host and SAP system.

FAQ

Method Invocation failed because [[…]] does not contain a method named ‘new’.

The SAPonWin Check Tool fails immediately after starting with an error message like the following:

Method Invocation failed because [[ ... ]] does not contain a method named 'new'.

This error message was observed on Windows Server 2012 R2 and below if the system does not fulfill the .NET Framework– and PowerShell/WMF requirements. Please check if the required .NET Framework and PowerShell-versions are installed. Do not forget to reboot the system after you have installed the new .NET Framework and PowerShell/WMF version.

To prevent this error message, SCT version 1.0.0.6 later run some basic prerequisite checks for the installed .NET Framework and PowerShell version.

Version History

The latest version is 1.0.0.8.

Version 1.0.0.8 (November 10th, 2023)

  • Added export of Image File Execution Options
  • Added export of Local Dumps configurations

Version 1.0.0.7 (August 7th, 2023)

  • Added extended data collection mode (parameter “-extended”)
  • Added check for NetBIOS over TCP/IP setting
  • Added detection of Windows Defender EDR + EDR Block Mode
  • Fixed check for Memory Compression
  • Query all PnP-Devices

Version 1.0.0.6 (April 5th, 2023)

  • Added parsing of exploit protection settings
  • Added export of running processes and Windows Firewall Profiles

Version 1.0.0.5 (March 8th, 2023)

  • Added processor info and BIOS info to report file
  • Fixed handling of invalid characters (ASCII char 0x0) in registry values

Version 1.0.0.3 (February 13th, 2023)

  • Fixed handling of invalid characters (for example ASCII characters 0x0 and 0x4) in WMI data
  • Fixed crash if SCT is running on Windows Server 2012 R2
  • Added export of Windows Event Logs Microsoft-Windows-SMBClient/* and Microsoft-Windows-SMBServer/*
  • More detailed error message if execution of the collector script fails.

Version 1.0.0.1 (January 11th, 2023)

  • Added evaluation of security setting ‘RestrictRemoteSAM’

Version 1.0.0.0 (November 25th, 2022)

  • First Release

Assigned Tags

      2 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Kristian fernando Hernandez
      Kristian fernando Hernandez

      Hi,

      Getting errors running this tool,

      Error: You cannot call a method on a null-valued expression. Also, it seems that it's looking for files on the D: drive, that drive doesn't exist in our environment.

      Any help is appreciated, Here is the log:

      System.Management.Automation.CmdletInvocationException: You cannot call a method on a null-valued expression. ---> System.Management.Automation.RuntimeException: You cannot call a method on a null-valued expression.
      at System.Management.Automation.ExceptionHandlingOps.CheckActionPreference(FunctionContext funcContext, Exception exception)
      at System.Management.Automation.Interpreter.ActionCallInstruction`2.Run(InterpretedFrame frame)
      at System.Management.Automation.Interpreter.EnterTryCatchFinallyInstruction.Run(InterpretedFrame frame)
      at System.Management.Automation.Interpreter.EnterTryCatchFinallyInstruction.Run(InterpretedFrame frame)
      at System.Management.Automation.Interpreter.Interpreter.Run(InterpretedFrame frame)
      at System.Management.Automation.Interpreter.LightLambda.RunVoid1[T0](T0 arg0)
      at System.Management.Automation.PSScriptCmdlet.RunClause(Action`1 clause, Object dollarUnderbar, Object inputToProcess)
      at System.Management.Automation.PSScriptCmdlet.DoEndProcessing()
      at System.Management.Automation.CommandProcessorBase.Complete()
      --- End of inner exception stack trace ---
      at System.Management.Automation.Runspaces.PipelineBase.Invoke(IEnumerable input)
      at System.Management.Automation.PowerShell.Worker.ConstructPipelineAndDoWork(Runspace rs, Boolean performSyncInvoke)
      at System.Management.Automation.PowerShell.Worker.CreateRunspaceIfNeededAndDoWork(Runspace rsToUse, Boolean isSync)
      at System.Management.Automation.PowerShell.CoreInvokeHelper[TInput,TOutput](PSDataCollection`1 input, PSDataCollection`1 output, PSInvocationSettings settings)
      at System.Management.Automation.PowerShell.CoreInvoke[TInput,TOutput](PSDataCollection`1 input, PSDataCollection`1 output, PSInvocationSettings settings)
      at System.Management.Automation.PowerShell.Invoke(IEnumerable input, PSInvocationSettings settings)
      at SAP.MSP.Tools.CheckTool.ReportGenerator.Utilities.DataCollector.RunCollectorScript(String path, String gsiDataCollectionName) in D:\BuildAgent\_work\14\s\SAPCheckTool\Utilities\DataCollector.cs:line 78
      at SAP.MSP.Tools.CheckTool.ReportGenerator.Utilities.DataCollector.CollectData(String path) in D:\BuildAgent\_work\14\s\SAPCheckTool\Utilities\DataCollector.cs:line 36
      at SAP.MSP.Tools.CheckTool.ReportGenerator.Program.Main(String[] args) in D:\BuildAgent\_work\14\s\SAPCheckTool\Program.cs:line 55

       

      Author's profile photo David Meder
      David Meder
      Blog Post Author

      Hi Kristian,

       

      we are very sorry for this issue with the SAPonWin Check Tool.

      Can you please check for some additional error messages in two additional log files (CollectorTool.dev.log and CollectorTool.log), that are written by the collector script, that fails on your system?

      The two log files are located in a subdirectory data\<Hostname>-<Date> (for example: data\win2022-2023-02-09), that is created when the SAPonWin Check Tool is started. It can be found in the same directory where the executable SAPonWinCheckTool.exe is located.

       

      If there are no errors written to this two log files, or the log files do not exist, please try the following to get some more information about the error:

      • Open an elevated PowerShell windows (= Run as Administrator)
      • Navigate to the location where you SAPonWinCheckTool.exe is located, for example: cd c:\SCT
      • Run the SAPonWinCheckTool.exe with the -x parameter to extract the data collector script: .\SAPonWinCheckTool.exe -x
      • Run the data collector script "Get-SystemInformation.ps1" manually to get some more details about the runtime error: .\Get-SystemInformation.ps1 -NoArchive

       

      Many thanks in advance and best regards,

      David