Problem Description
After installing Siemens WinCC V6.2 (or V6.2 + SP1/SP2) on a Windows XP SP2 workstation equipped with a dual-core or multi-core processor, the WinCC Explorer launches without error, but the moment the operator selects File → New Project (or uses the project wizard) the following dialog appears:
- Exception Text: "An exception occurred while executing a Transputer command."
- Followed by: "threw an exception" with an inner reference to
CSIGA::CSCUSTPROJ::CSCREATEor theWCCILpmonsubsystem. - The project is not created, and subsequent attempts produce identical errors.
- Reinstalling WinCC V6.2 with the default installer does not clear the fault.
CCR_RT.DB and the project registry hive HKEY_LOCAL_MACHINE\SOFTWARE\Siemens\WinCC become partially populated, which is the reason a plain reinstall does not resolve the issue. A complete purge of the registry, file system, and DCOM/OPC catalog is required.Affected Environments
| Component | Confirmed Versions | Status |
|---|---|---|
| WinCC | V6.2, V6.2 SP1, V6.2 SP2 (builds 6.2.0.x through 6.2.2.4) | Affected |
| Windows | XP SP2 (32-bit), XP SP3 (32-bit) | Affected |
| Windows | Server 2003 R2 (32-bit) | Affected |
| CPU | Intel Pentium D, Core Duo, Core 2 Duo, early Atom D-series, AMD Athlon 64 X2 | Affected (multi-core) |
| CPU | Single-core Pentium 4 / Celeron | Not affected |
| RAM | < 3 GB | BOOT.INI switch required |
| .NET | 2.0 SP2, 3.0, 3.5 | Required prerequisite |
Root Cause Analysis
Two interacting failures produce the "threw an exception" dialog when a WinCC V6.2 project is created on a multi-core XP system:
-
Symmetric Multi-Processing (SMP) thread affinity bug. WinCC V6.2 was compiled and tested against the Windows XP uniprocessor (UP) HAL and against single-core SMP kernels. The internal
WCCILpmonandWCCRTProcservices allocate worker threads with default affinity, which on a dual-core CPU causes a race condition inside the project-creation routine. The exception is thrown from the COM object that callsCSIGA::CSCUSTPROJ::CSCREATEwhen two threads attempt to register the new project CLSID simultaneously. -
DCOM/OPC catalog corruption. The installer registers several WinCC-specific DCOM applications (
{A7E5A0A0-...},WCC-OCX,WCC-RT). When the install fails partway through on a multi-core system, the DCOM registrations remain inHKEY_CLASSES_ROOT\AppIDandHKEY_CLASSES_ROOT\CLSIDwith staleLocalService32pointers. Subsequent reinstalls skip the registration phase because the keys already exist, leaving the catalog in a broken state.
The error message is therefore not a permission problem (administrator rights are sufficient) and not a missing-file problem; it is a thread-affinity + DCOM catalog combination that requires both a CPU-affinity mitigation and a clean catalog rebuild.
Prerequisites
- Local Administrator account on the target XP workstation.
- Original WinCC V6.2 installation media (DVD or ISO) plus all available hotfixes (HF1…HF7) and the latest SP2 cumulative update.
- Windows XP SP2 or SP2 + KB936929 (D3D9 fix) install CD, to repair the boot loader if a
BOOT.INIedit fails. - Siemens SIMATIC Automation License Manager V5.3 (or later) installed and pointed at the local license key or dongle.
- Empty USB stick or network share to back up the license backup file
LicenseKeyBackup.LSB. - Approximately 90 minutes of downtime.
Step-by-Step Resolution
Step 1 — Back up licenses and project data
- Open Start → SIMATIC → Automation License Manager.
- Select the local license key, choose License Key → Back Up…, and save
LicenseKeyBackup.LSBto a USB stick. - Copy any existing project directories (typically
C:\Program Files\Siemens\WinCC\WinCCProjects) and theRedundancy\Archivefolder to the USB stick.
Step 2 — Configure processor affinity at boot
- Right-click My Computer → Properties → Advanced → Settings (Startup and Recovery) and click Edit to open
C:\boot.ini. - Append
/NUMPROC=1to the default line so the kernel only enumerates one logical processor. Example:
[boot loader]
timeout=5
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect /NUMPROC=1
- Save and reboot. Verify in Device Manager → Computer that the ACPI Uniprocessor HAL is loaded (not ACPI Multiprocessor PC).
/3GB /PAE instead, but only on Server 2003. On 32-bit XP, do not enable /3GB — WinCC V6.2 is not large-address aware and will fail to start its data manager.Step 3 — Remove WinCC through the official uninstaller
- Insert the WinCC V6.2 DVD; if setup.exe autoruns, cancel it.
- Open Control Panel → Add or Remove Programs and remove, in this order:
- WinCC V6.2
- WinCC V6.2 ASIA
- WinCC V6.2 Connectivity Pack (if present)
- SQL Server 2005 (the WinCC instance only — leave other instances)
- SIMATIC WinCC Option → all sub-options
- Restart the workstation even if not prompted.
Step 4 — Purge residual files, services, and registry
- Stop and delete the WinCC services:
sc stop "WCCILpmon"
sc stop "WCCRTProc"
sc stop "WCCExplorer"
sc delete "WCCILpmon"
sc delete "WCCRTProc"
sc delete "WCCExplorer"
- Delete the installation directories:
rd /s /q "C:\Program Files\Siemens\WinCC"
rd /s /q "C:\Program Files\Common Files\Siemens"
rd /s /q "%ALLUSERSPROFILE%\Application Data\Siemens\WinCC"
rd /s /q "%USERPROFILE%\Local Settings\Application Data\Siemens\WinCC"
- Edit the registry with
regeditand delete the following keys (export a backup first):
HKEY_LOCAL_MACHINE\SOFTWARE\Siemens\WinCC
HKEY_LOCAL_MACHINE\SOFTWARE\Siemens\AutomationLicenseManager
HKEY_USERS\.DEFAULT\Software\Siemens\WinCC
HKEY_CLASSES_ROOT\CLSID\{A7E5A0A0-0E0E-4A2E-9F0E-0E0E0E0E0E0E}
HKEY_CLASSES_ROOT\AppID\{WinCC_AppIDs}
- Search the registry for any remaining WCC or WinCC string under
HKCR,HKLM, andHKCUand remove orphaned entries.
Step 5 — Rebuild the DCOM/OPC catalog
- Open Start → Run → dcomcnfg.
- Navigate to Component Services → Computers → My Computer → DCOM Config.
- Delete any entry whose Application Name begins with WCC or WinCC.
- Close Component Services and run
regsvr32 /s "%SystemRoot%\System32\msxml3.dll"to ensure the MSXML parser (used by the OPC DA 2.05 wrapper) is properly registered.
Step 6 — Reinstall WinCC V6.2 with affinity set
- Insert the DVD; when setup.exe starts, choose Install.
- Select WinCC V6.2 and the relevant options (Runtime, Configuration, Connectivity, etc.).
- During SQL Server 2005 instance creation, accept the default instance name WinCC and use Mixed Mode authentication; set the
sapassword to a known value. - When prompted, point the installer at the license key; the
LicenseKeyBackup.LSBcan be restored later if needed. - After installation completes, do not reboot yet.
Step 7 — Apply hotfixes and force single-core affinity for the WinCC processes
- Install hotfixes in ascending order: HF1 → HF2 … → HF7. Restart between each if the hotfix requests it.
- Open Computer Management → System Tools → Local Users and Groups → Groups → SIMATIC HMI. Verify that the WinCC user account is a member; if not, add it.
- Create a launcher batch file
StartWinCC.cmdin the WinCC installation directory:
@echo off
rem Force single-core affinity for the WinCC runtime
start /affinity 1 "C:\Program Files\Siemens\WinCC\bin\WCCRTProc.exe" -r
- Use this batch file whenever the runtime is started, until the workstation is upgraded to a 64-bit OS with WinCC V7.0+.
Step 8 — Test the project wizard
- Launch WinCC Explorer.
- Select File → New Project…, enter
TestProj, and click Create. - The wizard should complete without the "threw an exception" dialog and produce a new project tree with default pictures, variables, and the
TestProj.MCPmaster file.
Verification Checklist
| Check | Expected Result | Pass/Fail Criteria |
|---|---|---|
| New project creation | Wizard completes in < 30 s | No "threw an exception" dialog |
| Generated files |
TestProj.MCP, TestProj.PDL, TestProj.DBF
|
All present in project folder |
| WinCC services |
WCCILpmon, WCCRTProc running |
sc query returns STATE: 4 RUNNING |
| SQL Server | Instance WinCC started, database CC_TestProj_080101_112233 created | SSMS shows DB online |
| CPU affinity | WinCC processes pinned to CPU 0 | Process Explorer → affinity = 1 core |
| Runtime activation | Picture switches to runtime without "Connect to SQL" error | Activates in < 15 s |
| Event log | No "CSIGA" or "WCCILpmon" errors | Application log clean |
Troubleshooting Matrix
| Symptom after fix | Likely Cause | Corrective Action |
|---|---|---|
| Exception reappears on new project | Installer left over CLSID under HKCR
|
Repeat Step 4.3 registry purge; reinstall |
| "License not found" on startup | Dongle driver not re-detected | Reinstall AlmV53 and restore LSB backup |
| SQL Server instance will not start | Mixed mode not enabled | Run SQL Server Surface Area Configuration, enable mixed auth, set sa password |
| Runtime hangs at startup |
NUMPROC=1 not active |
Re-check BOOT.INI, reboot, verify HAL |
| OPC tag cannot be added | DCOM not rebuilt | Re-run Step 5; also re-register opcdaauto.dll
|
| Exception on first compile | Picture cache corruption | Delete %USERPROFILE%\Local Settings\Temp\WinCC
|
| Graphical Editor crashes | Video driver incompatible with multi-core scheduler | Apply /NUMPROC=1 in BOOT.INI
|
Alternative Mitigations
- Run WinCC inside a virtual machine with a single vCPU assigned. VMware Workstation 6.x and Microsoft Virtual PC 2007 SP1 both reliably run WinCC V6.2 when processors = 1 is configured.
-
Replace the HAL manually using
devconto swap the ACPI Multiprocessor HAL for the ACPI Uniprocessor HAL without editingBOOT.INI:
devcon sethwid @ROOT\HAL\0000 := !ACPIPIC_UP !E_ISA_UP hal.dll
- Upgrade the operating system to Windows 7 32-bit (with KB2755801 hotfix for WinCC V6.2 compatibility) or, preferably, migrate to WinCC V7.4 SP1 on Windows 10 IoT Enterprise LTSC 2019, which natively supports multi-core CPUs without affinity hacks.
Field-Commissioning Notes
- Always keep a golden image of the XP workstation so a full rebuild takes < 45 minutes; the procedure above is the single most common support request for legacy WinCC V6.2 plants.
- Schedule the rebuild during a planned shutdown — WinCC V6.2 + MSDE 2000 / SQL Server 2005 are no longer supported by Microsoft, so ensure the security perimeter of the plant network is reviewed before bringing the station back online.
- Document the new
BOOT.INIflag and the/affinitylauncher in the project README so that on-call engineers do not delete them. - If a redundant WinCC pair is being rebuilt, perform the steps on the standby first, fail over, and only then touch the primary; this avoids a 2-hour simultaneous outage.
- Where possible, replace the legacy pair with a current SIMATIC WinCC / WinCC Professional V17 installation on a 64-bit Windows Server 2019 / 2022, eliminating the multi-core affinity problem at its source.
Safety and Compliance Considerations
WinCC V6.2 was certified for use in safety-related HMI contexts only on validated hardware lists. Modifying the boot configuration or forcing process affinity may invalidate the SIL 2 / SIL 3 certification of the HMI station. Re-run the Siemens WinCC Validation Suite after performing the steps above, and file a deviation report in the plant change-management system. Any safety-related operator panel (e.g., a WinCC F-system variant) must be re-validated by a TÜV-certified engineer before being returned to production.
FAQ
Why does WinCC V6.2 fail to create a project on a dual-core CPU?
WinCC V6.2 was tested against the uniprocessor HAL. The internal WCCILpmon service uses default thread affinity, so on a dual-core CPU two worker threads race to register the new project CLSID, and one of them throws an exception inside CSIGA::CSCUSTPROJ::CSCREATE. Add /NUMPROC=1 to BOOT.INI or pin the WinCC processes to a single core with start /affinity 1.
Will a normal reinstall of WinCC V6.2 fix the "threw an exception" error?
No. The installer skips DCOM/registry re-registration when the keys already exist, so corrupted entries from the failed first install remain. You must uninstall WinCC, delete the Siemens\WinCC registry hives, purge the DCOM catalog, and only then reinstall.
Do I need Windows XP SP2 or can I use SP3?
WinCC V6.2 + SP2 is qualified for Windows XP SP2 and SP3 32-bit. SP3 is preferred because it includes later hotfixes (notably KB936929 for the D3D9 stack used by the Graphics Runtime), but the multi-core mitigation steps are still required on SP3.
Can I run WinCC V6.2 on a 64-bit Windows 7 or Windows 10?
Not officially. WinCC V6.2 is a 32-bit application and was never certified for 64-bit Windows. WinCC V7.0 SP3 or later is required for 64-bit operating systems; plan a migration if your workstation fleet is moving off Windows XP.
Is the LicenseKeyBackup.LSB file tied to the workstation hardware?
Yes. Siemens license keys of V6.2 era are node-locked to the USB dongle serial number or to the hard disk volume serial number. The LSB backup can be restored to the same hardware, but if the motherboard is replaced, you must request a new license from Siemens (process "CoL" / Certificate of License transfer).