Resolving Faceplate Access Violations (dwErrorCode 1007001) in SIMATIC PCS 7 V8.1 WinCC

Resolving Faceplate Access Violations (dwErrorCode 1007001) in SIMATIC PCS 7 V8.1 WinCC

When clicking a technological block icon (such as a valve or motor) in WinCC Runtime after updating to SIMATIC PCS 7 V8.1 SP1 / WinCC V7.3 Upd7 fails to open the faceplate and APDIAG logs 'General Protection Fault / Exception in Action / Access Violation (dwErrorCode1: 1007001)' in PDLRuntimeSystem, the failure is caused by obsolete faceplate C-scripts and graphic templates in the project's GraCS folder. In WinCC V7.3, the graphic runtime engine enforces strict memory pointer boundaries. To resolve this, open WinCC Explorer, run the OS Project Editor to replace obsolete system pictures (@*.pdl) with updated V8.1 templates, regenerate WinCC Server Data Packages, and execute 'Options > OS > Compile' with 'Create/update block icons' checked.

Table of Contents

Executive Summary

Upgrading industrial visualization software across service pack or update boundaries is essential for system security and performance. However, after upgrading an engineering suite from SIMATIC PCS 7 V8.0 to V8.1 SP1 (with WinCC V7.3 Update 7), operators and commissioning engineers frequently report a complete breakdown of operator faceplates: clicking on valves (VlvL), motors (MotL), or analog indicators (MonAnL) produces zero visual response. Launching the WinCC script diagnostic debugger (APDIAG) reveals an immediate memory crash: 'F23a (26) : general protection fault.. dwErrorCode1: 1007001, access violation in PDLRuntimeSystem'. While engineers often suspect corrupted tag logging or broken Windows user privileges, this access violation is caused by outdated, pre-upgrade faceplate picture scripts executing against the newer WinCC runtime engine. This technical guide details the root causes and remediation.

Root Cause Analysis: APDIAG Error dwErrorCode1 1007001 and Access Violations

The APDIAG error log provides specific diagnostic pointers:

  • dwErrorCode1: 1007001: Indicates an unhandled Windows Access Violation (STATUS_ACCESS_VIOLATION / 0xC0000005) raised during the execution of a C-action script.
  • szApplicationName: PDLRuntimeSystem: Identifies that the fault occurred within the core WinCC picture window management DLL.
  • Trigger Mechanism: When an operator clicks a block icon, the icon's mouse-action script calls function APL_OpenFaceplate. In PCS 7 V8.1, this function expects new parameter arguments and standardized window handles. If the target picture templates (@PG_*.pdl or @screen.pdl) residing in the project's GraCS folder are obsolete files carried over from V8.0, the C-script dereferences a null pointer, crashing the script thread.

WinCC V7.3 Graphic Runtime Engine Architectural Changes

WinCC V7.3 introduced significant enhancements to graphic performance and security:

  • Re-engineered C-script memory allocators to prevent heap exploitation.
  • Stricter validation of picture window handles and server prefix strings (@ServerName::).
  • Upgraded APL faceplate style guides (Style 1 and Style 2) with dynamic multi-screen panning and multi-monitor routing.

The Role of the OS Project Editor in Picture Replacement

The OS Project Editor in WinCC is the designated tool for maintaining system picture integrity:

  • Scans the project GraCS folder and compares standard @ pictures against the master templates delivered with the installed PCS 7 version.
  • Overwrites obsolete @PG_*.pdl, @PL_*.pdl, @screen.pdl, and @Overview.pdl files with verified V8.1 release files.
  • Running the OS Project Editor is mandatory after every PCS 7 version upgrade, Service Pack installation, or Update (Upd).

Faceplate Script Error Diagnostic Matrix

The following table compares APDIAG error signatures and their corrective engineering actions:

APDIAG Error SignatureFaulting ModuleUnderlying Root CauseCorrective Engineering ActiondwErrorCode1: 1007001PDLRuntimeSystemOutdated @PG_*.pdl faceplate templatesRun OS Project Editor to replace @*.pdl files.Error in APL_OpenFaceplatePassThru.dllMissing WinCC Server Data Package (*.pck)Re-generate and assign Server Data Packages.Unknown Tag @ServerName::Script ChannelUninitialized multi-station server prefixCompile OS project with Tags and messages.Picture window not foundPicture TreePicture resolution layout mismatchedRe-run OS Project Editor layout configuration.General Protection FaultC-Script ActionObsolete custom script syntaxReview custom C-scripts against WinCC V7.3 API.

Step-by-Step Procedure to Update Graphics and Restore Faceplates

Method: Executing OS Project Editor and Icon Regeneration

  1. Open the OS project in WinCC Explorer on the Engineering Station.
  2. In the navigation tree, double-click OS Project Editor.
  3. In the Layout tab, select the target monitor resolution (e.g. 1920x1080) and monitor configuration.
  4. In the Basic data tab, ensure all checkboxes for system pictures (@*.pdl) are set to Replace from delivery directory.
  5. Click OK. WinCC replaces all obsolete faceplate, overview, and navigation pictures in the project GraCS folder with pristine PCS 7 V8.1 SP1 templates.
  6. Open SIMATIC Manager.
  7. Right-click the OS project and select Compile > Tags and messages.
  8. In the compile wizard, ensure the checkbox Create/update block icons is checked.
  9. Click Compile; the compiler updates all block icons across all process pictures to match the new faceplate calling conventions.
  10. If operating a multi-station client-server system, right-click the OS Server and execute Generate Server Data.
  11. Download the OS project to the target stations and activate Runtime.

Verification

To verify faceplate functionality and script stability:

  1. Faceplate Activation: In WinCC Runtime, left-click a valve (VlvL) and motor (MotL) block icon. Confirm that the faceplate window opens immediately without delay.
  2. APDIAG Diagnostic Audit: Launch APDIAG (apdiag.exe). Execute Output Window. Perform multiple faceplate openings, tab switches, and command operations. Confirm that zero access violations or 1007001 errors are logged.
  3. Command Verification: Test manual/auto mode switches and setpoint adjustments from the faceplate. Confirm that values write to the AS smoothly.

Limitations and Operational Precautions

  • Customized System Pictures: If engineering teams previously edited standard system pictures (such as modifying @screen.pdl or @Overview.pdl), running the OS Project Editor will overwrite these customizations; always maintain backups of modified scripts.
  • OS Clients Require Updated Server Data: In client-server environments, OS Clients must have freshly imported Server Data Packages (*.pck) after OS compilation; otherwise, faceplate jumps will fail to resolve the server prefix.
  • Script Debugging: If custom faceplates still crash, insert printf("Checkpoint 1\n"); diagnostic calls inside the mouse-click C-action to trace the exact line causing the pointer exception in APDIAG.

Engineer FAQ

How do I start the APDIAG diagnostic tool?

Open Windows Run, browse to 'C:\Program Files (x86)\Siemens\WinCC\bin\apdiag.exe', launch it, and select 'Output Window'.

Why did faceplates work in PCS 7 V8.0 but fail in V8.1 with the same pictures?

Because PCS 7 V8.1 updated the underlying APL faceplate scripts; using V8.0 pictures with V8.1 runtime creates parameter mismatches.

Does running the OS Project Editor delete user-created plant pictures?

No. The OS Project Editor modifies only system pictures prefixed with '@'; user-authored plant mimic pictures are untouched.

Technical References

Related Articles

Related Tags

  • https://industrialautomation.net/search?query=simatic-pcs7
  • https://industrialautomation.net/search?query=wincc
  • https://industrialautomation.net/search?query=faceplates
  • https://industrialautomation.net/search?query=troubleshooting
6 respuestas