Resolving TIA Portal V18 Crash on Save As and Archive Operations

David Krause10 min read
SiemensTIA PortalTroubleshooting
Licensed PE Working through this on a live machine? A Maine-licensed engineer can take it from here — included with IMD hardware, by the hour for everything else. Book an engineer

Problem Overview

Siemens TIA Portal V18 with Update 3 terminates unexpectedly (silent shutdown, no error dialog) the moment the user invokes any operation that opens a Windows shell dialog. The most frequently reported triggers are:

  • Project > Save As (file system picker to choose destination path)
  • Project > Archive (file system picker for .zap archive target)
  • Options > Settings > Browse (storage location configuration)
  • Any dialog requiring a native IFileOpenDialog / IFileSaveDialog COM call from the TIA shell process

The application closes without an error code, Event Viewer entry tied to a Siemens module, or a TIA Portal crash dump in the default location (%LOCALAPPDATA%\Siemens\Automation\Portal V18\Logs). Standard editing, online monitoring, and program download all function correctly; only Windows shell integration triggers the failure. This behavior has been reproduced on Windows 10 Enterprise 22H2 and confirmed on both fresh and upgraded installations.

Field signature: The TIA Portal TIA_Portal.exe process exits with code 0xC0000005 (access violation) in Windows Application logs immediately after the common file dialog is requested by the IDE. The crash is triggered by the IFileDialog::SetOptions call inside the shell extension host, not by TIA logic itself.

Affected Versions and Platforms

Component Verified Version Status
TIA Portal STEP 7 / WinCC V18.0 + Update 3 Affected
TIA Portal STEP 7 / WinCC V17.x (same laptop) Not affected
Windows 10 Enterprise 22H2 (build 19045) Reproduced
Windows 11 Pro 23H2 Reported (similar)
OneDrive sync client Build 23.xx and newer Contributing factor

The defect is specific to the V18 shell bridge between the .NET-based IDE and the Windows shell. TIA V17 on the same machine works correctly, which proves the regression was introduced in the V18 install image, the V18 Update 3 patch, or the supporting runtime (Siemens SIMATIC S7-PCT, PLCSIM, or the Openness V18 API shell extension). Reviewing the Major changes for long-term stability in TIA Portal Openness V18 confirms that V18 introduced rewritten save, save-as-new, and save-as-new-revision code paths for proxy objects. The same shell-bridge changes that harden the Openness API are also present in the IDE dialog layer and are the likely regression vector.

Root Cause Analysis

Three independent factors can cause the silent crash. They often combine on a single workstation.

1. Installation privilege mismatch

TIA Portal V18 uses a per-user COM activation model. If the original installation was performed with elevated (run-as-administrator) rights but the daily launcher is started as a standard user, or vice versa, the HKEY_CLASSES_ROOT\CLSID registrations for the Siemens file dialog handler are owned by an account that cannot read them. The IDE spins up a BrowseFolder host, fails the CoCreateInstance call, and the unmanaged shell bridge dereferences a null interface pointer. Siemens' standard repair routine does not rewrite the COM class store under %LOCALAPPDATA%; only a full uninstall + reinstall with matching UAC context rebuilds the entries.

2. OneDrive-managed default storage path

The TIA Portal first-run wizard writes the default project storage location to %USERPROFILE%\OneDrive\Documents\Automation when OneDrive is set to back up the Documents library. The OneDrive Files On-Demand filter driver (OneDriveTelemetry.dll) hooks every IRP_MJ_CREATE on user-profile paths and returns STATUS_REPARSE for files that have not been hydrated. When TIA's file dialog calls GetFolderTargetInfo to enumerate the proposed path, the reparse storm corrupts the dialog's internal state and the IDE shuts down.

Test: Open the registry at HKCU\Software\Siemens\Automation\Portal V18\Settings\ProjectStorage. If the value contains OneDrive, this factor is active.

3. Shell extension conflict

Third-party shell extensions (Dropbox, Google Drive, Box, Git LFS, antivirus context-menu handlers such as Trend Micro, SentinelOne, or Carbon Black) inject in-process objects into every file dialog. Several of them are not thread-safe and crash the dialog when the V18 shell bridge raises the dialog on a non-UI thread, which V18 does for the Openness-driven proxy save paths described in the V18 Openness stability notes.

Pre-Diagnostic Checklist

Run the following commands before changing anything, so the root cause can be confirmed:

  1. Open Event Viewer > Windows Logs > Application and filter for Source = Application Error. Confirm the faulting module is Siemens.Automation.Portal.Shell.dll or Siemens.Automation.Openness.dll with exception code 0xC0000005.
  2. Open Task Manager > Details, add the Command Line column, and right-click the TIA Portal shortcut. Verify whether it includes --elevated or the standard user token.
  3. Open regedit and export:
    HKLM\SOFTWARE\Siemens\Automation\Portal V18
    HKCU\SOFTWARE\Siemens\Automation\Portal V18
  4. Run whoami /priv | findstr "SeDebug" and whoami /groups | findstr "Mandatory". Capture the integrity level.
  5. Run where /R "%ProgramFiles%\Siemens\Automation" TIA_Portal.exe and record the install path.
  6. Run fsutil reparsepoint query "%USERPROFILE%\OneDrive\Documents\Automation" to confirm reparse status.

Step-by-Step Resolution

Step 1 - Move the default storage path off OneDrive

  1. Open TIA Portal as Administrator.
  2. Navigate to Options > Settings > General > Storage locations for projects / libraries / archives.
  3. Replace the path with a local, non-synced location such as D:\Automation\Projects or C:\Programs\Siemens\Projects.
  4. Create the folder manually in Explorer first; do not rely on the dialog to create it.
  5. Restart TIA Portal and confirm the path persists in HKCU\Software\Siemens\Automation\Portal V18\Settings\ProjectStorage.
Path-length rule: Keep the full project path under 200 characters. TIA Portal V18 truncates paths above 248 characters and the dialog may not surface the failure cleanly.

Step 2 - Disable hostile shell extensions for the TIA session

Use Sysinternals Autoruns and untick the following entries under the Shell Extensions tab:

  • DropboxExt64.dll / DropboxExt.dll
  • GoogleDriveFS64.dll
  • OneDriveShellExtensions.dll (this is the most common culprit on a OneDrive-managed profile)
  • Antivirus right-click handlers (Trend Micro TiMiniFt64.dll, SentinelOne SentinelShellExt.dll, CrowdStrike CSShellExt.dll)

Reboot. Do not uninstall the OneDrive client; simply disable the shell extension so the dialog is not intercepted.

Step 3 - Force a clean V18 reinstall with matching UAC context

  1. Close all Siemens applications (TIA Portal, PLCSIM, SINAMICS Startdrive, SIMOCODE ES).
  2. Open Control Panel > Programs and Features and uninstall, in this order:
    1. SIMATIC TIA Portal V18 Update 3
    2. SIMATIC TIA Portal V18
    3. SIMATIC STEP 7 / WinCC Professional V18
    4. Siemens Openness V18
    5. Siemens PLCSIM V18
  3. Delete the leftover folders:
    %ProgramFiles%\Siemens\Automation
    %ProgramData%\Siemens\Automation
    %AppData%\Siemens\Automation
    %LocalAppData%\Siemens\Automation
  4. Run regedit and remove the keys:
    HKLM\SOFTWARE\Siemens\Automation\Portal V18
    HKCU\SOFTWARE\Siemens\Automation\Portal V18
    HKCR\CLSID\{B0AB4F4A-XXXX-...} entries owned by Siemens AG
  5. Reboot into a clean, elevated command prompt (cmd.exe > Run as administrator).
  6. Mount the V18 install media, run Setup.exe as Administrator, and apply Update 3 in the same elevated session.
  7. After install, create the TIA Portal desktop shortcut from the freshly written %ProgramData%\Microsoft\Windows\Start Menu\Programs\Siemens Automation link, right-click it, choose Properties > Compatibility > Run this program as administrator, and tick it permanently.
  8. Launch TIA Portal from that shortcut, then always invoke Save As / Archive from this elevated process.
Why the second install fixed it: the first install created the shell bridge COM objects under the system account; the second install, performed entirely under the same administrative token that will be used at runtime, rebuilds the COM objects in the same security context the IDE will later use to read them. The dialog handler now resolves cleanly.

Step 4 - Verify the Openness shell bridge is registered

The Openness V18 save-as proxy code path described in the V18 long-term stability notes requires the following assemblies to be GAC-registered and readable by the current user:

Siemens.Engineering.dll
Siemens.Engineering.AddIn.dll
Siemens.Engineering.Hmi.dll
Siemens.Engineering.Openness.dll

From an elevated PowerShell run:

[System.Reflection.Assembly]::LoadFrom("C:\Program Files\Siemens\Automation\Portal V18\PublicAPI\V18\Siemens.Engineering.dll") | Select-Object FullName

If the assembly throws FileLoadException or UnauthorizedAccessException, the COM bridge is broken and the GUI dialog will continue to crash.

Verification

After the steps above, run the following verification sequence and record the result of each step:

  1. Create a new project (File > New > Project) and confirm the dialog opens without a shutdown.
  2. Use Project > Save As, choose a local path, confirm the file dialog opens and the new .ap18 directory is created.
  3. Use Project > Archive, confirm the Save As dialog opens and produces a .zap18 file.
  4. Open Options > Settings, click the Browse button next to the project storage path, confirm the folder picker appears.
  5. Open Event Viewer and confirm no Application Error entries with faulting module Siemens.Automation.Portal.Shell.dll have been written in the last 30 minutes.
  6. Run a Save-As through the Openness API (C# sample below) to confirm the proxy save path also works end-to-end.
using Siemens.Engineering;
using Siemens.Engineering.Project;

var tia = new TiaPortalProcess(true); // attach to running instance
var project = tia.Projects.First(p => p.Name == "MyProject");
project.SaveAs("D:\\Automation\\Projects\\MyProject_v2");

Preventive Measures

  • Pin the default storage location to a local, non-synced, non-reparsed path. Siemens recommends D:\Programs\Siemens\Automation\Projects in the TIA Portal Installation Manual.
  • Use a dedicated engineering account with consistent UAC behaviour; do not switch between standard and elevated contexts in the same day.
  • Block shell extensions in the engineering image by Group Policy: Computer Configuration > Administrative Templates > Windows Components > File Explorer > Configure Windows Defender SmartScreen shell extension and similar keys for OneDrive, Dropbox, and Google Drive.
  • Exclude TIA install and project folders from antivirus real-time scanning. The Siemens recommended exclusions are %ProgramFiles%\Siemens\Automation\Portal V18, %ProgramData%\Siemens\Automation, and the project root drive letter.
  • Patch cadence: stay on the latest V18 cumulative update. Siemens' release notes state that several shell-bridge fixes shipped in V18 Update 4 and later, including the regression tracked against save-as with proxy objects in the Openness V18 stability changelog.

Troubleshooting Matrix

Symptom Likely Factor First Action
Crash on Save As, Archive, and Browse OneDrive default path Move default path to D:\Automation
Crash only on Save As with proxy object Openness V18 save-as-new path regression Install V18 Update 4 or newer
Crash after change of UAC context COM activation mismatch Run installer and IDE under the same account
Crash only when Dropbox / Google Drive installed Shell extension conflict Disable extension via Autoruns
Crash on terminal server / Citrix session Shell extension not registered for user profile Reset user profile, reinstall V18
Crash with antivirus event 1116 in Application log Real-time scan intercepting shell bridge Add AV exclusion for TIA install path
Event ID 1000, faulting module Siemens.Automation.Openness.dll Broken Openness registration Re-register Openness assemblies

When to Open a Siemens Support Request

If the reinstall sequence above does not resolve the crash, gather the following artifacts and open a ticket through the Siemens Industry Online Support portal at support.industry.siemens.com:

  1. Event Viewer export (.evtx) of the last 24 hours filtered on Source = Application Error.
  2. Full content of %LOCALAPPDATA%\Siemens\Automation\Portal V18\Logs zipped.
  3. Output of msinfo32 /report C:\TIA_MSI.txt.
  4. Output of reg export "HKLM\SOFTWARE\Siemens\Automation" C:\TIA_Reg.txt /y.
  5. Screen recording of the Save As operation that triggers the crash.

Reference the Siemens support entry ID for the V18 shell-bridge regression. If you are also scripting Save-As through the Openness API, reference the long-term stability V18 documentation so the engineer handling the ticket sees the same code paths you do.

Related Engineering Notes

  • If you are running TIA Portal inside a virtual machine, disable 3D graphics acceleration on the VM and set View > Options > Default file viewer to External (Windows) to force the dialog off the WPF renderer.
  • If you deploy TIA Portal via SCCM or Intune, deploy the installer as system but the daily launcher as the engineering user. The reverse pattern reproduces the COM activation mismatch on every reboot.
  • If you require OneDrive backup of engineering projects, sync the local D:\Automation folder via a Move rather than letting OneDrive own the user profile path.

Why does TIA Portal V18 crash only on Save As, Archive, and Browse, but not on open or edit?

Those three operations all open a Windows common file dialog. The V18 shell bridge calls IFileDialog::SetOptions on a non-UI thread; the call fails when the OneDrive reparse driver, a third-party shell extension, or a mismatched COM registration intercepts it. Open, edit, and online monitoring do not need the common file dialog, so they continue to work.

Will moving the project path off OneDrive fix the crash on its own?

Often yes, if the OneDrive reparse driver is the only cause. However, on machines that also have a broken Siemens Openness COM registration, the path change alone is not enough; a full uninstall, registry cleanup, and reinstall run as Administrator is required. Treat the path change as Step 1 of a three-step resolution.

Does running TIA Portal as Administrator always solve the Save As crash?

It solves the case where the COM activation was created under a different account. It does not solve OneDrive reparse or third-party shell extension conflicts. Always pin the elevated context, set the local default path, and disable hostile shell extensions together.

What TIA Portal V18 update fixed the Save As regression?

Siemens V18 Update 4 and later contain the shell-bridge fixes referenced in the Openness V18 long-term stability notes for proxy-object save and save-as-new-revision operations. Update 3 still carries the regression.

Can I script Save As with the Openness API without triggering the crash?

Yes, once the COM bridge is healthy. The TiaPortalProcess attachment pattern, the Project.SaveAs call, and the supporting Siemens.Engineering assemblies must all be GAC-registered and readable by the current user. Verify with the PowerShell Assembly.LoadFrom command shown in Step 4 before scripting production workflows.

Back to blog