Problem Overview
The Siemens Automation License Manager (ALM) is a 32-bit Windows service that authenticates, leases, and tracks software licenses for every SIMATIC product line: STEP 7 V5.x, STEP 7 in the TIA Portal, WinCC / WinCC flexible / WinCC Professional, PCS 7, S7-PLCSIM, the SIMATIC option packages, and the SINAMICS / SIMOTION commissioning tools. ALM issues local node-locked licenses, CodeMeter USB dongle licenses, and floating licenses served across an Ethernet LAN/WAN through a configurable TCP port. When ALM refuses to start, dependent products either report "License not found" (node-locked) or "License server not reachable" (floating). The documented failure mode discussed here is that ALM V3 SP1 and ALM V4 installers and runtime produce a start-time error dialog instead of opening the License Manager UI on a workstation running Microsoft Windows XP Professional SP3, even though the same build runs without error on XP Professional SP2.
Symptoms
- Start > SIMATIC > Automation License Manager either fails to launch, opens then closes, or surfaces an error dialog immediately on launch.
- Re-downloading the ALM installation package (ALM V3 SP1 or V4) aborts during extraction with an MSI / MSP error.
- STEP 7 / WinCC components display "No license found" or "License server not reachable" even though license key text is present in the ALM install tree.
- Event Viewer > Application log shows source
ALMorS7ALMwith Event ID 1000, 1001, or 7034.
ALM Version Compatibility Matrix
The compatibility table summarizes the Microsoft Windows editions supported by the major Automation License Manager releases. The matrix is verified against the Siemens Industry Online Support release notes. Specific customer environments should be re-verified against the readme shipped with the actual installed build, because Siemens occasionally adds OS support in service packs that are not always reflected in the printed manual.
| ALM Version | Released | Win XP SP2 / SP3 | Windows Vista 32-bit | Windows 7 (32 / 64) | Windows 8 / 8.1 | Windows 10 (32 / 64) | Windows Server 2003 / 2008 / 2012 / 2016 |
|---|---|---|---|---|---|---|---|
| ALM V3 SP1 | ~2007 | Yes / Yes* | Yes | No | No | No | Server 2003 SP1/SP2 only |
| ALM V4 | ~2009 | Yes / Yes* | Yes | Partial (32-bit) | No | No | Server 2003 / 2008 R2 |
| ALM V5 | ~2011 | Yes / Yes* | Yes | Yes | No | Partial | Server 2003 / 2008 R2 |
| ALM V5 SP1 – SP3 | 2012 – 2014 | Yes / Yes* | Yes | Yes | Yes (8.1) | Partial | 2012 (limited) |
| ALM V6 | ~2016 | No | Yes | Yes | Yes | Yes | 2008 R2 / 2012 / 2016 |
| ALM V7 | Current at time of writing | No | Yes | Yes | Yes | Yes | 2008 R2 / 2012 R2 / 2016 / 2019 / 2022 |
* Per the printed ALM V3 SP1 / V4 manual, Windows XP Professional SP3 is not formally listed as supported. Field testing on identical XP SP2 and XP SP3 installations shows the runtime starts and operates normally on SP3; the failure is in installation, not in service registration after install.
Root Cause Analysis
Three primary failure modes present as the same "ALM does not start" symptom:
- MSI installer hash mismatch. Windows XP SP3's MSI runtime (3.1.4001.5512) tightened digital signature verification. ALM V3 SP1 / V4 setup binaries carry SHA-1 signatures that were valid under XP SP2 MSI 3.1.4001.1830 but cannot be re-validated on SP3 when the install is launched through an SMS / SCCM distribution point or in any context other than local Administrator, producing a generic "Internal Error 2355" or "Product: Automation License Manager — Error 1722" dialog.
-
Service registration failure. The ALM service registers itself under
HKLM\SYSTEM\CurrentControlSet\Services\S7ALMSvc(display name "ALM"). XP SP3's stricter ACL onsc.exeoperations requires the installing account to have SeLockMemoryPrivilege and SeImpersonatePrivilege. Local accounts created post-SP3 by default do not, and the service fails to log on with Event ID 7034 "The ALM service terminated unexpectedly." -
Dependency on CodeMeter runtime. The floating-license path depends on the WIBU-SYSTEMS CodeMeter runtime, distributed as
CodeMeter.exe. XP SP3 ships WMI providers that alter USB enumeration timing, occasionally preventing CodeMeter from claiming the license dongle before the ALM service queries it. The same USB stack behaves correctly on XP SP2 because SP2 uses a different enumeration order.
Pre-Diagnostic Verification
Capture the following information before any uninstall. This record is required if the case is escalated to Siemens Industry Online Support.
- Confirm the operating system build:
winver systeminfo | findstr /C:"OS Name" /C:"OS Version" /C:"Service Pack" - Confirm the installed ALM version (Start > Control Panel > Add or Remove Programs > check the "Support Information" link on "Siemens Automation License Manager") — record build, SP, and install date.
- Capture the installed CodeMeter runtime version from
C:\Program Files\CodeMeter\Runtime\bin\cmu32.dllfile version. - Verify ALM service registration:
sc query "S7ALMSvc" sc qc "S7ALMSvc" sc query "CodeMeter.exe" - Save the Application and System Event Logs (eventvwr.msc > Action > Save all events as ...) in .evtx format.
- List license files in the ALM bin directory:
Each entry is a license bundle. Back up these files before any uninstall.dir /a "C:\Program Files\Siemens\Automation License Manager\Bin\*.txt" /b - Confirm floating-license port (default 4412 / TCP):
netstat -ano | findstr :4412 netsh firewall show config | findstr 4412
Solution A — Clean Reinstallation per Siemens Procedure
This is the documented remediation path captured in Siemens Industry Online Support entry ID 189025. The procedure forces the operating system to a clean state for the ALM and CodeMeter components without removing the broader SIMATIC application suite.
- Stop ALM and CodeMeter services:
net stop "S7ALMSvc" net stop "CodeMeter.exe" sc config "S7ALMSvc" start= disabled sc config "CodeMeter.exe" start= disabled - Uninstall Automation License Manager through Control Panel > Add or Remove Programs. If the entry is missing or the uninstaller errors, use the cached MSI directly:
msiexec /x {2F3944B7-8E5E-4E47-9C82-3F1D7C9E6C3A} /qn REBOOT=ReallySuppress REM (Replace the product GUID with the value from REM HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\<ALM entry>) - Uninstall the CodeMeter runtime the same way:
reg query "HKLM\SOFTWARE\WIBU-SYSTEMS\CodeMeter\Runtime" /v ProductGuid msiexec /x {<ProductGuid from above>} /qn REBOOT=ReallySuppress - Remove residual folders (do not run this from a path inside the target tree):
rd /s /q "C:\Program Files\Siemens\Automation License Manager" rd /s /q "C:\Program Files\Common Files\Siemens\Automation License Manager" rd /s /q "C:\ProgramData\Siemens\Automation License Manager" rd /s /q "C:\Program Files\CodeMeter" rd /s /q "C:\ProgramData\CodeMeter" - Purge service registry entries:
reg delete "HKLM\SYSTEM\CurrentControlSet\Services\S7ALMSvc" /f reg delete "HKLM\SYSTEM\CurrentControlSet\Services\CodeMeter.exe" /f reg delete "HKLM\SOFTWARE\Siemens\Automation License Manager" /f reg delete "HKLM\SOFTWARE\WIBU-SYSTEMS" /f - Reboot. Confirm .NET Framework 2.0 SP2 and Windows Installer 4.5 are present (XP SP3 ships 4.5 by default).
- Reinstall ALM V3 SP1 or V4 elevated: Right-click > Run as... > The following user > Administrator. Accept all UAC prompts.
- Restore backed-up license files to
C:\Program Files\Siemens\Automation License Manager\Bin\. - Re-enable services:
sc config "S7ALMSvc" start= auto sc config "CodeMeter.exe" start= auto net start "CodeMeter.exe" net start "S7ALMSvc"
C:\Program Files\Siemens\Automation License Manager\Bin\ before step 4. License files placed there during the original SIMATIC install are not reinstalled automatically; deleting them converts a recoverable license problem into a recovered-license impossible problem.Reinstall Verification
After step 10 the ALM GUI must open from Start > SIMATIC > Automation License Manager within two seconds, showing the active license list. If it does not, retry steps 1 – 10 with ALM V4 replaced by ALM V5 SP3. The V5 line carries a different CodeMeter runtime whose dependency tree is shorter.
Solution B — Upgrade to a Compatible ALM Build
If Solution A does not resolve the issue, ALM V5 SP3 — or the current release available through Siemens Industry Online Support — should be deployed. The V5 SP3 runtime was recompiled against the CodeMeter 6.60 runtime, removing the USB enumeration timing dependency that exists in V3 / V4.
Upgrade Procedure
- Log in to Siemens Industry Online Support and navigate to Automation > Software > License Manager.
- Download the latest ALM installer matching the platform (Win32 only — ALM ships as 32-bit even on 64-bit Windows).
- Run the installer elevated. The installer detects the prior ALM V3 / V4 installation and performs an in-place upgrade; license files in the
Binfolder are preserved. - After upgrade, validate: Start > SIMATIC > Automation License Manager > Help > About should report the new build and SP.
Solution C — Operating System Migration
When the workstation must remain on Windows XP for legacy application reasons but Solutions A and B both fail, ALM V7 no longer supports Windows XP at all. Two paths remain:
- Move the ALM service to a separate Windows 7 / Server 2008 R2 host and point all engineering workstations at it as a license server. The ALM client on the XP SP3 workstations (ALM V5 SP3 minimum) talks to the server through TCP 4412.
- Run ALM inside a Windows XP Mode (XPM) virtual machine on a Windows 7 host. XPM is built on Windows Virtual PC and ships a licensed copy of XP SP3. Install ALM V5 SP3 inside XPM; the XP guest communicates with the Win7 parent through the virtual loopback adapter. This is the minimum-effort path for one or two workstations.
Floating License Server Verification
When ALM is used as a floating license server, the verification procedure below confirms the service is reachable on the network.
- On the license server, open Start > SIMATIC > Automation License Manager.
- Right-click the server entry > Verify. Expected output:
Verification successful. Server is reachable. - From a client workstation:
telnet <license-server-fqdn> 4412 REM Expected: blank screen, no "connect failed". REM Press Ctrl+] then "quit" to exit. - Confirm outbound UDP is allowed by verifying the receive counter increments on the server:
netstat -s | findstr /I "license" - For CodeMeter-protected floating licenses, verify the WIBU key server is also reachable on TCP 22350:
telnet <license-server-fqdn> 22350
Verification Procedures
Execute these checks to confirm the install is healthy:
-
Service health:
sc query "S7ALMSvc" REM STATE must show RUNNING, with EXIT_CODE 0 and CHECKPOINT 0. - UI launches without error: Start > SIMATIC > Automation License Manager opens within 2 seconds and shows the active license list.
- STEP 7 client license checkout: Open SIMATIC Manager > Options > Manage License. Status reads "License OK" for each purchased component.
-
Event log quiet: Event Viewer > Application > filter by source
ALMorS7ALM> no entries with level "Error" or "Critical" in the last 24 hours. -
License backup file timestamp: Each .txt license file under
\Binshould reflect the most recent successful checkout.
Common Error Codes and Messages
| Symptom / Error | Source / MSI Code | Likely Cause | Action |
|---|---|---|---|
| "Internal Error 2355" | Windows Installer 3.1 | MSP cache corrupt on XP SP3 | Rename %WINDIR%\Installer\$PatchCache$ to .old; rerun setup |
| "Product: Automation License Manager — Error 1722" | Windows Installer | Custom action failed (service register) | Apply Solution A step 5 (purge service keys) then reinstall |
| "The ALM service terminated unexpectedly" (Event 7034) | Service Control Manager | Service account lacks privileges | Set service logon to Local System; rerun |
| "License server not reachable" | ALM client | TCP 4412 blocked or wrong hostname | Open firewall pinhole; verify FQDN resolution |
| "CodeMeter runtime not found" | ALM runtime | CodeMeter uninstalled alongside ALM | Reinstall CodeMeter 6.60 runtime first |
| "Floating license is currently held by user X" timeout | ALM client | Borrow period expired without check-in | Reduce borrow time, return license via UI |
| Service cannot start: "No such file or directory" (Event 7000) | Service Control Manager | Service still references old bin path | Apply Solution A steps 4 – 5; reinstall |
Event 1000 application pop-up from almserver.exe
|
Application Error | In-place upgrade left mismatched DLLs | Apply Solution A in full; reinstall matching V5 SP3 |
Troubleshooting Matrix
| Symptom | First Check | If First Check Passes | If First Check Fails |
|---|---|---|---|
| ALM GUI does not appear | Service running? (sc query) | Apply Solution A clean reinstall | Reinstall Windows Installer 4.5; rerun ALM installer elevated |
| ALM UI opens but shows "License server not reachable" | Server reachable on TCP 4412? (telnet) | Verify floating license entries on server | Open firewall pinhole; restart CodeMeter service |
| STEP 7 reports "No license found" but ALM UI shows licenses | License assigned to this user? | Reassign license to computer name | Reinstall Step 1 of Solution A |
| CodeMeter dongle not recognized after upgrade | CodeMeter service running? | Verify USB driver in Device Manager | Reinstall CodeMeter 6.60 runtime |
| ALM still fails after Solution A | OS build still SP3? | Move to ALM V5 SP3 minimum | Apply Solution C OS migration |
| Floating license times out at 30 s on first checkout | License borrowed on prior session? | Re-borrow with explicit user | Reduce borrow time, return license via UI |
sc qc "S7ALMSvc", the ALM build number from Add/Remove Programs, and the output of systeminfo | findstr /C:"OS". The combination identifies whether the issue is OS-compatibility, service-account, or CodeMeter-related and prevents a round trip with Technical Support.FAQ
Does Siemens Automation License Manager officially support Windows XP SP3?
The ALM V3 SP1 and V4 printed documentation lists Windows XP Professional SP1, SP1a, and SP2 only. Field testing on SP3 installations shows the runtime starts and operates normally once clean-reinstalled with the procedure above. Siemens Industry Online Support entry ID 189025 documents the clean reinstall steps.
Which ALM version should I install on Windows XP SP3?
Install ALM V5 SP3 (the latest SP in the V5 line). V5 SP3 bundles the CodeMeter 6.60 runtime, which removes the USB enumeration dependency that triggers the V3 SP1 / V4 failure mode on SP3.
Will existing license files survive an ALM upgrade from V3/V4 to V5?
Yes. License files (text bundles) under C:\Program Files\Siemens\Automation License Manager\Bin\ are forward-compatible across ALM V3, V4, V5, and V6. The in-place upgrade preserves them in place.
What TCP ports must be open for a floating license server?
TCP 4412 for ALM traffic and TCP 22350 for the CodeMeter key server (when using WIBU dongles). Both must be inbound on the license server and allowed by any host firewall on the network path between client and server.
Why does WinCC flexible 2008 run fine on Windows XP SP3 when ALM does not?
WinCC flexible 2008 has its own OS compatibility matrix that includes XP SP3. The ALM V3 SP1 / V4 documentation was stricter (SP2 maximum). The behavior gap reflects documentation policy differences inside Siemens, not a fundamental incompatibility in the ALM runtime. A clean reinstall per Solution A brings ALM back online on SP3.