Solution-Konfiguration und Plattform setzen
Für automatisierte Abläufe muss die aktive Solution-Konfiguration explizit gesetzt werden. Das Beispiel iteriert alle Konfigurationen der Solution und aktiviert die gewünschte Plattform.
Für unbeaufsichtigte Skripte und CI/CD-Pipelines sollte zusätzlich dte.SuppressUI = true gesetzt werden. Das unterdrückt modale VS-Dialoge während der Automatisierung. TcAutomationSettings.SilentMode ist davon unabhängig und unterdrückt TwinCAT-spezifische Dialoge. Für vollständig unbeaufsichtigte Abläufe sollten beide aktiviert werden.
Voraussetzungen
- TwinCAT XAE ist installiert und gestartet.
- Eine DTE-Verbindung ist aktiv.
- Eine Solution ist geöffnet.
C#-Beispiel
Die Iteration erfolgt über SolutionBuild.SolutionConfigurations. Der Vergleich mit PlatformName findet die gewünschte Konfiguration.
using EnvDTE;
// Iterate all solution configurations and activate target platform
SolutionConfigurations configs =
solution.SolutionBuild.SolutionConfigurations as SolutionConfigurations;
foreach (SolutionConfiguration2 config in configs)
{
if (config.PlatformName == "TwinCAT OS (x64)")
{
config.Activate();
break;
}
}
// SuppressUI: suppresses UI dialogs (recommended for automation)
dte.SuppressUI = true;
dte.MainWindow.Visible = false;
![]() | Die verfügbaren Plattformnamen hängen von der installierten TwinCAT-Version ab. Eine vollständige Übersicht der gültigen Zielplattformen (Betriebssystem, Prozessor, PE/ELF-Format) bietet die offizielle TwinCAT Platform Matrix. |
