Overview
Siemens S7-300 projects under STEP 7 V5.x are stored on disk as a folder tree, not a single archive. The folder is identified by a small marker file with the .S7P extension that the SIMATIC Manager uses to recognise the directory as a project. By default, double-clicking the folder in Windows Explorer opens it as an ordinary directory listing - the project is not loaded into the Manager. For maintenance technicians who keep dozens of project folders in a central archive, this default behaviour is the single most common cause of "I clicked the folder and got nothing" tickets.
This guide covers four reliable ways to start a STEP 7 V5.x project directly from a file manager, a desktop shortcut, a Microsoft Excel hyperlink, or an automation script:
- Windows file association for the
.S7Pextension (the cleanest, fleet-deployable option) - Direct command-line invocation of
S7tgtopx.exewith the project path (for shortcuts and pinned taskbar entries) - Excel hyperlinks built around the
file://URL scheme (for plant-wide project indexes) - Batch, PowerShell, and VBA automation (for scheduled tasks, logon scripts, and macro-driven archives)
All four methods rely on the same internal contract: pass the path of the .S7P file as the first argument to S7tgtopx.exe. The Manager opens, reads the marker file, and loads the project database.
S7-300 Project File Anatomy and Storage Layout
A STEP 7 V5.x project lives in its own directory. The default install puts it under C:\Program Files\Siemens\STEP7\S7Proj\, but production projects are usually relocated to a network share. Inside the project root sits the .S7P marker, plus the sub-folders that hold the actual engineering data:
C:\Siemens\Projects\Plant_North\
├── Plant_North.S7P <-- marker, ~2 KB; identifies folder as a project
├── Global\ <-- cross-project symbols, sources
│ ├── LanguageDB\
│ ├── Symbols\
│ └── ...
├── S7Prog\ <-- the S7 program(s) themselves
│ ├── Blocks\
│ ├── Sources\
│ ├── STL\
│ └── ...
├── IM\ <-- interface / module data for HW Config
├── Symbols\ <-- project-local symbol table
├── offlines\ <-- snapshot of online view from last session
├── online\ <-- cached PG-side view of PLC state
├── Logs\ <-- diagnostic logs (post V5.5)
└── ...
The .S7P file is a binary pointer that names the project and links to the Access-compatible MDB file holding the cross-reference, symbol, and block metadata. If the marker is missing or renamed, the Manager will not see the folder as a project. If the MDB is corrupted, the Manager opens the project but reports Project database inconsistent on first load - the marker is still essential.
Default STEP 7 install layout for the launchers (relevant entries only):
C:\Program Files\Siemens\STEP7\
├── S7BIN\
│ ├── S7tgtopx.exe <-- SIMATIC Manager (the only one you need)
│ ├── S7WbfX.exe <-- Hardware Config (HW Config)
│ ├── S7LF4XEX.EXE <-- LAD / FBD / STL editor
│ ├── S7EPATX.exe <-- Symbol Editor
│ ├── S7ARCHVX.EXE <-- Archive / Retrieve tool
│ └── ...
├── S7Proj\
│ ├── ProjectA\
│ │ ├── ProjectA.S7P
│ │ ├── Global\
│ │ ├── S7Prog\
│ │ └── ...
│ └── ProjectB\
│ ├── ProjectB.S7P
│ └── ...
└── ...
The exact S7BIN path varies slightly between STEP 7 V5.4, V5.5, V5.6, and V5.7. The Manager executable name is stable across all of them, which is the only filename you need to reference in the registration steps below.
Prerequisites and Permissions
-
STEP 7 V5.x installed (verified on V5.5 SP4, V5.6, and V5.7). TIA Portal uses a different project model (
.ap15/.ap16) and a different launcher; it is not covered here. - SIMATIC Manager at the default path
C:\Program Files\Siemens\STEP7\S7BIN\S7tgtopx.exe. If installed elsewhere, substitute the actual path in every command below. The path may beC:\Program Files (x86)\Siemens\STEP7\S7BIN\on older 32-bit STEP 7 builds. - Local Administrator rights on the workstation for the initial file association. After the initial registration, the association is stored in the registry and inherited by every user that logs on to the machine.
- Project folders stored on a local drive or a mapped network drive. UNC paths work in shortcuts and hyperlinks but require
Modifypermission for STEP 7 to update the offline/online view on load. - For multi-engineer deployments, a documented convention for project folder names and a single source of truth for the path (a network share, a documentation index, or an asset database).
Method 1: Associate the .S7P Extension with SIMATIC Manager
File association is the cleanest and most portable method. Once registered, every .S7P file on the workstation launches the Manager with the parent project loaded - no path, no argument, no extra script.
Step-by-step (Windows 10 / 11, classic shell)
- Open File Explorer and navigate to any project folder under
C:\Program Files\Siemens\STEP7\S7Proj\. - Right-click the
.S7Pfile (for exampleProjectA.S7P) and select Open with → Choose another app. - Click More apps → Look for another app on this PC.
- Browse to
C:\Program Files\Siemens\STEP7\S7BIN\S7tgtopx.exeand select it. - Enable the checkbox Always use this app to open .S7P files, then click OK.
- Test by double-clicking any
.S7Pfile. SIMATIC Manager opens with the matching project loaded, bypassing the File → Open dialog.
Step-by-step (PowerShell, deployable to many workstations)
For a fleet of engineering PCs, push the association through the registry. The script below uses HKCU to avoid HKLM\Software\Classes ACL issues on locked-down workstations:
# Run elevated once per machine, or deploy via GPO / Intune
$ext = '.S7P'
$progId = 'STEP7.Project.1'
$app = 'C:\Program Files\Siemens\STEP7\S7BIN\S7tgtopx.exe'
# 1. Create the ProgID
New-Item -Path "HKCU:\Software\Classes\$progId" -Force | Out-Null
Set-ItemProperty -Path "HKCU:\Software\Classes\$progId" -Name '(Default)' -Value 'STEP 7 Project'
# 2. Define the open-command template
New-Item -Path "HKCU:\Software\Classes\$progId\shell\open\command" -Force | Out-Null
Set-ItemProperty -Path "HKCU:\Software\Classes\$progId\shell\open\command" `
-Name '(Default)' -Value '"' + $app + '" "%1"'
# 3. Bind the extension to the ProgID
New-Item -Path "HKCU:\Software\Classes\$ext" -Force | Out-Null
Set-ItemProperty -Path "HKCU:\Software\Classes\$ext" -Name '(Default)' -Value $progId
# 4. Verify
cmd /c 'assoc .S7P'
cmd /c 'ftype STEP7.Project.1'
Log off and back on, or run ie4uinit.exe -show, to refresh Explorer's cache. This script is the basis for any Group Policy / Intune deployment of STEP 7 to maintenance terminals. A matching Group Policy Preferences extension association can also be created under User Configuration → Preferences → Control Panel Settings → Folder Options.
%1 on its first launch after install. Close the Manager, double-click the .S7P file again, and the project loads. Subsequent clicks behave consistently.
Flowchart: What happens when you double-click a .S7P file
Method 2: Direct Command-Line Invocation and Desktop Shortcuts
For shortcuts, pinned taskbar entries, or batch scripts, call the Manager executable directly with the project path as the argument. The same behaviour as a file-association click is produced.
"C:\Program Files\Siemens\STEP7\S7BIN\S7tgtopx.exe" "C:\Siemens\Projects\Plant_North\Plant_North.S7P"
Useful command-line variants
REM Minimal footprint, useful for kiosk / control-room terminals
start "" /min "C:\Program Files\Siemens\STEP7\S7BIN\S7tgtopx.exe" "D:\Projects\Line3.S7P" -hide
REM Pin to taskbar: this becomes the 'always open Line3' shortcut
"C:\Program Files\Siemens\STEP7\S7BIN\S7tgtopx.exe" "C:\Siemens\Projects\Boiler_01.S7P" -hide
REM UNC path; no mapped drive letter required
"C:\Program Files\Siemens\STEP7\S7BIN\S7tgtopx.exe" "\\fileserver\PLC_Projects\Compressor_42\Compressor_42.S7P"
REM Force offline mode for archive-only workstations
"C:\Program Files\Siemens\STEP7\S7BIN\S7tgtopx.exe" -offline "\\archive\S7_Archive\Boiler_03.S7P"
Creating a desktop shortcut
- Right-click on the desktop, New → Shortcut.
- Enter the location as
"C:\Program Files\Siemens\STEP7\S7BIN\S7tgtopx.exe" "C:\Siemens\Projects\Plant_North\Plant_North.S7P". - Name the shortcut (e.g. Plant North - S7-300) and click Finish.
- Right-click the shortcut, Properties, set Start in to the project folder so the Manager's File → Save As dialog defaults to the right location on first run.
- Change the icon to
C:\Program Files\Siemens\STEP7\S7BIN\S7tgtopx.exefor a consistent look across plants.
Method 3: Excel Hyperlinks for Plant-Wide Project Indexes
Maintenance teams typically maintain a single Excel workbook that maps each plant tag (e.g. PLC-C-102) to the engineering workstation that owns the project. Hyperlinks that call the Manager directly remove the navigation step entirely and let a technician click the row that matches the panel label on the cabinet door.
Why a plain HYPERLINK to an .exe fails
Excel's HYPERLINK(target, friendly_name) interprets target as a URL, not a command line. A link that targets S7tgtopx.exe with an &-separated argument is treated as a malformed URL and the project path is never passed to the Manager. The reliable form is a file:// URL pointing at the .S7P file - the link is then handed to Explorer, which uses the file association from Method 1.
Working cell formula
=HYPERLINK("file:///C:/Program%20Files/Siemens/STEP7/S7Proj/ProjectA/ProjectA.S7P","Open ProjectA")
For UNC paths, omit the drive letter and prefix with file://:
=HYPERLINK("file:///\\fileserver\PLC\Compressor_N\Compressor_N.S7P","Open Compressor North")
Sample plant index layout
| PLC Tag | Plant Area | Project File (UNC) | Open |
|---|---|---|---|
| PLC-C-101 | Compressor Hall North | \\fileserver\PLC\Compressor_N\Compressor_N.S7P |
Open |
| PLC-C-102 | Compressor Hall South | \\fileserver\PLC\Compressor_S\Compressor_S.S7P |
Open |
| PLC-B-201 | Boiler House 01 | \\fileserver\PLC\Boiler_01\Boiler_01.S7P |
Open |
| PLC-P-310 | Packaging Line 3 | \\fileserver\PLC\Pack_03\Pack_03.S7P |
Open |
exe: hyperlink in Excel because the protocol handler is treated like a custom URL scheme. The file:// form above is treated as a normal file open and respects the existing file association. In locked-down environments, deploy the file association through Group Policy Preferences and pre-approve the SIMATIC Manager binary in the AppLocker / SmartScreen policy.
Method 4: Batch, PowerShell, and VBA Automation
One-line batch launcher (drop next to each project)
@echo off
REM OpenProject.cmd - opens the project in the same folder as this script
start "" "C:\Program Files\Siemens\STEP7\S7BIN\S7tgtopx.exe" "%~dp0%~n0.S7P"
Save the file as OpenProject.cmd inside the project folder. The %~dp0 expands to the script's directory, %~n0 to its filename without extension, so the script will open OpenProject.S7P if it sits next to it. This works even if the file association is broken.
PowerShell: bulk-open all projects in a directory
# Open every project under D:\Projects in its own Manager window
$manager = 'C:\Program Files\Siemens\STEP7\S7BIN\S7tgtopx.exe'
Get-ChildItem -Path 'D:\Projects' -Filter '*.S7P' -Recurse | ForEach-Object {
Write-Host "Opening $($_.FullName)"
Start-Process -FilePath $manager -ArgumentList '"' + $_.FullName + '"' -PassThru |
Select-Object Id, ProcessName, StartTime
}
VBA helper: hyperlink in Excel that always calls the Manager with the right path
' Place in ThisWorkbook module; assigns the hyperlink after click
Private Sub Workbook_SheetFollowHyperlink(ByVal Sh As Object, ByVal Target As Hyperlink)
Dim sPath As String
sPath = Target.SubAddress ' not used
sPath = Target.Address ' file:// URL or absolute path
If LCase$(Right$(sPath, 4)) = ".s7p" Then
Application.StatusBar = "Launching SIMATIC Manager for " & sPath
Shell """C:\Program Files\Siemens\STEP7\S7BIN\S7tgtopx.exe"" """ & sPath & """", vbNormalFocus
End If
End Sub
The VBA form above is the only practical way to combine the friendly Excel link experience with a real command-line argument. Use it for regulated environments where the file:// form is blocked by the Office Trust Center.
Startup Parameters, Registry, and Default Behaviour
Siemens documents a set of startup switches in the STEP 7 V5.x online help, chapter Starting STEP 7 with Default Start Parameters. The table below lists the switches most useful for routine project access. Switch behaviour was tightened between V5.4 and V5.6; treat the table as a starting point and confirm against the version actually installed on the engineering station. When in doubt, consult Siemens FAQ 38487159 or the local online help on the station itself.
| Switch | Effect | Typical use |
|---|---|---|
(no switch) |
Opens the Manager with the project passed as the first argument. | Default click / shortcut. |
-hide |
Starts the Manager minimised to the system tray. | Background sync / scheduled tasks. |
-standalone |
Disables integration into other Siemens tools (no proxy ARP, no Automation Interface handshake). | Conflict isolation on locked-down PCs. |
-offline |
Forces offline mode for the first session. | Archive editing on a laptop without a PG/PC interface. |
-noS7Dos |
Disables the S7DOS protection driver; used by Siemens support to bypass access-rights issues. | Diagnostics only - do not use in production. |
Registry layout written by the PowerShell script
| Key | Value | Purpose |
|---|---|---|
HKCU\Software\Classes\.S7P\(Default) |
STEP7.Project.1 |
Bind the extension to a ProgID. |
HKCU\Software\Classes\STEP7.Project.1\(Default) |
STEP 7 Project |
Human-readable name for the association. |
HKCU\Software\Classes\STEP7.Project.1\shell\open\command\(Default) |
"C:\...\S7tgtopx.exe" "%1" |
Command line executed on double-click. |
The same keys can be placed under HKLM\Software\Classes for a machine-wide association, but HKCU is sufficient for a single user and avoids UAC prompts during the registration script.
Default-Start behaviour documented in FAQ 38487159
STEP 7 stores the path of the most recently opened project in HKCU\Software\Siemens\Automation\STEP7\V5.x\LastProject. On the first launch after install, after a service pack update, or after a forced crash recovery, the Manager opens the project from this key and ignores the %1 argument. This is why the first double-click on a freshly associated .S7P file appears to do nothing. Close the Manager, double-click again, and the project loads as expected.
Troubleshooting Matrix
| Symptom | Likely Cause | Fix |
|---|---|---|
| Double-click opens only the empty Manager; no project loaded. | Manager re-opens the most recent project (FAQ 38487159) on the first click after install / update. | Close the Manager, double-click the .S7P file a second time. |
| "Windows cannot open this file" dialog. | No association registered; Explorer cannot resolve .S7P. |
Run the PowerShell registration script or repeat Method 1. |
| Manager opens but the project appears offline; online view empty. | Project stored on a network share that lost its mapping (Z:\ not connected). |
Re-map the network drive or use the UNC path in the shortcut / hyperlink. |
"Access denied" on launching the .S7P from a network share. |
User lacks Modify permission on the project folder; STEP 7 writes back the offline/online view on load. |
Grant Modify to the engineering group, or store read-only archives on the share and a writable copy locally. |
| Excel shows "This operation has been cancelled due to restrictions in effect on this computer." | Office Trust Center blocks file:// links to network shares. |
Add the share to Trusted Locations in the Trust Center, or use a local copy of the index workbook. |
Two Managers run side by side after clicking two different .S7P files. |
Each click spawned a new S7tgtopx.exe process; SIMATIC Manager does not deduplicate by default. |
Open the second project with File → Open inside the running instance, or accept the second instance for read-only archive work. |
| Association reverts after a STEP 7 service pack update. | The installer rewrites the .S7P ProgID under its own GUID. |
Re-run Method 1 after every STEP 7 update, or deploy the PowerShell script through a scheduled task triggered by the installer's exit code. |
| Manager opens with "Project database inconsistent" warning. | MDB file inside the project folder is corrupted; the .S7P marker is fine. |
Restore from the last good backup; if unavailable, run File → Reorganize in the Manager to rebuild the MDB. |
| Hyperlink launches the Manager, but the project title bar shows the wrong project. | Another .S7P file exists with a similar name; Excel opened the first match in the path. |
Use absolute UNC paths in the index; deduplicate project folder names across the share. |
| Slow launch from network share on first click. | STEP 7 transfers the whole offlines / online cache before opening the project UI. |
Copy the project to the local SSD for active engineering; keep the share copy for archival. |
Verification Procedure
- Open a Command Prompt and run
assoc .S7P. Expected output:.S7P=STEP7.Project.1(or whatever ProgID you defined). - Run
ftype STEP7.Project.1. Expected output:STEP7.Project.1="C:\Program Files\Siemens\STEP7\S7BIN\S7tgtopx.exe" "%1". - Double-click an
.S7Pfile. The Manager opens with the project name in the title bar; the Project tree shows the S7-300 station. - From Excel, click the hyperlink. Confirm the same Manager instance opens (or, if none was running, a new one starts with the project loaded).
- Close the Manager and reopen it manually. The last project should be the one you opened from Explorer, confirming the session persistence documented in FAQ 38487159.
- From an elevated Command Prompt, run
reg query "HKCU\Software\Classes\.S7P" /sto confirm the registration keys survived a reboot.
Operational Notes: Multi-User, Archives, and TIA Migration
Multi-user and network share scenarios
STEP 7 V5.x is fundamentally a single-writer application. The offlines\ and online\ sub-folders plus the project MDB are written every time the Manager loads or saves, and concurrent writes will corrupt the database. For shared engineering work, use a source-control workflow: one engineer checks out the project from a version-control repository (SVN, TFS, or a Siemens-managed MUC), edits locally, then commits. The network share stores the released archives only.
Archived projects (.zip, .arc)
Siemens distributes sample and reference projects as compressed archives. The S7ARCHVX.EXE tool in the S7BIN directory unpacks an .arc or .zip file into a regular project folder. After extraction, associate the new .S7P file as documented in Method 1. If you need to keep the project compressed, store the archive and the OpenProject.cmd from Method 4 next to it, with the batch file pointing to the extracted path - the command line accepts the path of an extracted .S7P directly.
64-bit and WOW64 considerations
STEP 7 V5.x is a 32-bit application. On 64-bit Windows the executable runs under WOW64, but file associations are still stored per-user; HKCU registration (as in the script above) avoids the HKLM\Software\Classes WOW64 virtualization issues that bite some installations. Do not redirect the Program Files install path to Program Files (x86) manually - let the installer decide based on the STEP 7 build.
Citrix and Remote Desktop Services
On a Citrix or RDS server, register the .S7P association once at the machine level (HKLM) or via Group Policy so that every user session inherits it. Avoid per-user registration - new sessions will not have the association until the user's first run of the PowerShell script, which leads to inconsistent behaviour between long-lived and short-lived sessions.
Migrating to TIA Portal
When a plant begins its TIA Portal migration, the file-association pattern is reused but the file extension and launcher change:
| STEP 7 V5.x | TIA Portal V15 / V16 | |
|---|---|---|
| Project marker | ProjectName.S7P |
ProjectName.ap15 / .ap16
|
| Launcher | S7tgtopx.exe |
Siemens.Automation.Portal.exe |
| Default install | C:\Program Files\Siemens\STEP7\S7BIN\ |
C:\Program Files\Siemens\Automation\Portal V16\Bin\ |
Re-bind the new extensions to the TIA Portal launcher; the Excel index and the desktop shortcut pattern apply unchanged.
Security, audit, and GxP
- Treat the file association as a configuration item in any GAMP-validated environment. Document the registry keys, the launcher path, and the exact project folder layout.
- For 21 CFR Part 11 deployments, route every project open through an audit-able launcher that records the user, timestamp, and project path to a write-once log. The VBA helper in Method 4 is the right place to add this logging; the
Shellcall can be wrapped in a function that appends to a CSV before the launch. - Restrict write access to the network share at the ACL level. STEP 7 will not warn before writing to
offlines\on load; a user with only Read permission will see Access denied on first click. - Add the
S7BINpath and theS7Projpath to your antivirus exclusion list. The MDB and the offline cache trigger false positives in some scanners and slow project open by an order of magnitude.
FAQ
Where is the .S7P file located on a default STEP 7 install?
Under C:\Program Files\Siemens\STEP7\S7Proj\<ProjectName>\<ProjectName>.S7P. The marker is small; the actual project data sits in the Global, S7Prog, IM, Symbols, offlines, and online sub-folders of the same directory.
Why does the Manager sometimes open empty even though I double-clicked the .S7P file?
Siemens FAQ 38487159 documents that STEP 7 re-opens the last project on its first launch after install or a service pack update. Close the Manager and double-click the .S7P file again - subsequent clicks behave normally.
Can I open a project from a network share without mapping a drive letter?
Yes. Use the UNC path in the shortcut, batch file, or hyperlink: \\fileserver\PLC\ProjectA\ProjectA.S7P. The Manager resolves UNC paths natively; only the offline/online view write-back requires Modify permission on the share.
Will the file association survive a STEP 7 service pack update?
Usually no. Service packs re-register the .S7P ProgID with their own GUID. Re-run Method 1 or redeploy the PowerShell registration script after every STEP 7 update, ideally as a scheduled task tied to the installer's exit code or via Group Policy Preferences.
Does this method work for TIA Portal projects?
No. TIA Portal uses .ap15 (V15) or .ap16 (V16+) project files launched by Siemens.Automation.Portal.exe. The same hyperlink and shortcut pattern applies, but the file extension and launcher path are different - re-bind the new extension to the TIA Portal executable.
How do I open a project from inside Excel without the file:// link being blocked?
Use the VBA helper from Method 4, which intercepts the Workbook_SheetFollowHyperlink event and calls the Manager via Shell with the right command line. This bypasses the Office Trust Center's file:// policy because the actual launch is done by VBA, not by the hyperlink engine.
What command-line switches does S7tgtopx.exe support?
Siemens documents the switch set in the STEP 7 V5.x online help, chapter "Starting STEP 7 with Default Start Parameters". The most useful ones are -hide (start minimised), -standalone (no Automation Interface handshake), and -offline (force offline mode for the first session). Always verify against the version of STEP 7 actually installed, since switch behaviour was tightened between V5.4 and V5.6.