# Programm einbinden in WinCC flexible



## luker (13 Juli 2007)

Hallo Experten,

wie im Thread nebenan bereits ausgeführt, habe ich eine Bildverarbeitungsapplikation, die in WinCC flexible Advanced 2005 eingebunden werden soll. In WinCC flexible gibt es einen Befehl "Programm starten" oder ähnlich. Benutze ich den, startet meine Applikation in Fenster oder Vollbild. So weit, so gut.
Gehe ich zu WinCC flexible zurück, versteckt es aber die Taskleiste. Ohne Tastatur (Alt + Tab) kann ich also nicht zwischen den Programmen wechseln.

Kann ich in WinCC flexible einem externen Programm eine Fläche auf dem Bildschirm zuweisen, in dem es ausgeführt wird (So, wie ich ein Bild positioniere)?

Kann ich wenigstens die Taskleiste eingeblendet lassen, während WinCC läuft?

Mit freundlichem Gruß


luker


----------



## Larry Laffer (13 Juli 2007)

Hallo,
unter ProTool heisst diese Funktion Zielsystem-Einstellungen-Vollbild.
Da WinCCFlex alle Funktionen von ProTool hat, müßtest du diese Funktion dort auch finden ...


----------



## xhasx (14 Juli 2007)

Es gibt auch die Moeglichkeit den Taskmanager zu oeffnen. Ich weiss - nicht besonders schön...


----------



## luker (20 Juli 2007)

xhasx schrieb:


> Es gibt auch die Moeglichkeit den Taskmanager zu oeffnen. Ich weiss - nicht besonders schön...


Ganz genau. Es wäre halt schon schön, wenn man Anwendungen in einer Art WinCCflex-Fenster laufen lassen könnte. Hat dafür jemand eine Idee?


----------



## xhasx (20 Juli 2007)

Guten Morgen

Es gibt wohl VB Befehle fuer's ein- und ausblenden. Pruefen kann ich das momentan nicht. Hab das hier gefunden...

Option Explicit  Private Declare Function FindWindow Lib "user32" _Alias "FindWindowA" (ByVal lpClassName As String, _ByVal lpWindowName As String) As Long  Private Declare Function SetWindowPos Lib "user32" _(ByVal hwnd As Long, ByVal hWndInsertAfter As Long, _ByVal x As Long, ByVal y As Long, ByVal cx As Long, _ByVal cy As Long, ByVal wFlags As Long) As Long  Private Const SWP_SHOWWINDOW = &H40Private Const SWP_HIDEWINDOW = &H80Private Sub Command1_Click()'ausblenden     Dim lWnd As Long     lWnd = FindWindow("Shell_TrayWnd", "")     SetWindowPos lWnd, 0, 0, 0, 0, 0, SWP_HIDEWINDOW End Sub  Private Sub Command2_Click()' einblenden     Dim lWnd As Long     lWnd = FindWindow("Shell_TrayWnd", "")     SetWindowPos lWnd, 0, 0, 0, 0, 0, SWP_SHOWWINDOW End Sub  Private Sub Form_Load()'initialisieren     Command1.Move 120, 120, 1695, 375    Command1.Caption = "Ausblenden"    Command2.Move 120, 600, 1695, 375    Command2.Caption = "Einblenden" End Sub  Was passiert wenn du das Programm nochmal aufrufst? Mit dem dem Panel fuer das RTX-Control ist das kein Problem.Wenn das weg ist "starte" ich das Programm ueber die Taste nochmal. Ist kein Problem.Vielleicht kannst du ja bei den Programmparametern was drehen. Bei meiner RTX muss der Mist dahinter stehen: -n "WinLC RTX"Sonst geht da mal gleich gar nix!


----------



## luker (20 Juli 2007)

xhasx schrieb:


> Guten Morgen
> 
> Es gibt wohl VB Befehle fuer's ein- und ausblenden. Pruefen kann ich das momentan nicht. Hab das hier gefunden...
> [VB code snipped]
> ...


Dann sendet es eine MessageBox, es werde bereits ausgeführt, ohne selbst in den Vordergrund zu kommen.



> [..]Vielleicht kannst du ja bei den Programmparametern was drehen. Bei meiner RTX muss der Mist dahinter stehen: -n "WinLC RTX"Sonst geht da mal gleich gar nix!


Das Bildverarbeitungsprogramm startet klaglos ohne Parameter. Einfach "C:\pfad\programm.exe" genügt. Aber es funktioniert eben nicht mehrmals.

Da kommt mir eine Idee: Gibt es einen Kommandozeilenbefehl, der einen bestimmten Task in den Vordergrund holt?


----------



## Larry Laffer (20 Juli 2007)

Schau doch mal hier :
http://www.sps-forum.de/showthread.php?t=14288


----------

