Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Ergebnis 1 bis 7 von 7

Thema: C Script mit VBA auslesen

  1. #1
    Registriert seit
    09.09.2005
    Beiträge
    108
    Danke
    0
    Erhielt 1 Danke für 1 Beitrag

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Weiss jemand ob es möglich ist ein das C-Scipt hinter Aktion z.b Mausklick mit VBA auszulesen?
    Vieleicht hat jemand schon mal was in der Richtung gemacht.
    Zitieren Zitieren C Script mit VBA auslesen  

  2. #2
    Registriert seit
    19.12.2008
    Beiträge
    336
    Danke
    19
    Erhielt 28 Danke für 28 Beiträge

    Standard

    ??? Apfelkompott aus Birnen machen ?

    Aus der Frage werde ich nicht schlau - was hast du vor ?
    In jedem Fall : VBA kann mit C (egal welche Form davon) nichts anfangen.

  3. #3
    Adenauer ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    09.09.2005
    Beiträge
    108
    Danke
    0
    Erhielt 1 Danke für 1 Beitrag

    Standard

    Also es geht hier nicht um die Runtime. Es geht um Prokjetieren im Grafics Designer
    Ich habe mehrere Bilder mit ca 60 Objekten pro Bild. An allen Objekten ist hinter dem Ereigniss Mausklick eine C Aktion hinterlegt die einen Bildwechsel macht.
    Den C Code dieser Aktion möchte ich mit VBA auslesen.

    In der Hilfe von WinCC gibts ja einiges an Beispielen wie man mit VBA Objekte erzeugt etc.
    Nur hab ich nix gefunden was eine Aktion ausliest.

  4. #4
    Registriert seit
    08.08.2007
    Ort
    Süd-Süd-Deutschland (CH)
    Beiträge
    220
    Danke
    29
    Erhielt 27 Danke für 21 Beiträge

    Standard

    Zitat Zitat von Lupo Beitrag anzeigen
    ??? Apfelkompott aus Birnen machen ?

    Aus der Frage werde ich nicht schlau - was hast du vor ?
    In jedem Fall : VBA kann mit C (egal welche Form davon) nichts anfangen.
    ..........
    "Hätte ich das gewusst, hätte ich einen anderen Beruf gelernt." - "Hast Du gelernt diese Scheisse?"
    (Zitat aus Knockin' on Heaven's Door)

    "Kommentare? Wieso? Steht doch alles im Code..!"

    Avatar erstellt auf www.sp-studio.de

  5. #5
    Registriert seit
    08.04.2011
    Beiträge
    4
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hier ein Beispiel, das das aktive Bild nach C-Script-Dynamiken durchsucht. Diese werden dann selektiert. Das Objekt, die Eigenschaft, sowie der C-Code werden im Immediate-Fenster von VBA ausgegeben.
    Es werden nur Eigenschaften durchsucht, Events funktionieren aber ähnlich.


    Dim objHMIObject As HMIObject
    Dim objHMIProperty As HMIProperty
    Dim objHMIScriptInfo As HMIScriptInfo

    For Each objHMIObject In ActiveDocument.HMIObjects
    For Each objHMIProperty In objHMIObject.Properties
    If objHMIProperty.DynamicStateType = hmiDynamicStateTypeScript Then
    Set objHMIScriptInfo = objHMIProperty.Dynamic
    If objHMIScriptInfo.ScriptType = hmiScriptTypeCScript Then
    objHMIObject.Selected = True
    Debug.Print ActiveDocument.name & " - " & objHMIObject.ObjectName & " - Property: " & objHMIProperty.DisplayName
    Debug.Print objHMIScriptInfo.SourceCode
    End If
    End If
    Next
    Next

  6. #6
    Adenauer ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    09.09.2005
    Beiträge
    108
    Danke
    0
    Erhielt 1 Danke für 1 Beitrag

    Standard

    Hallo Sam,

    danke schon mal für die Antwort. Für Dynamiken klappt das ganze schon. Ich bekomme es aber nicht hin auf eine Aktion zuzugreifen. Vieleicht has du da noch den entscheidenen Tip



    Dim objHMIObject As HMIObject
    Dim objHMIEvent AS HMIEvent
    Dim objHMIScriptInfo As HMIScriptInfo

    For Each objHMIObject In ActiveDocument.HMIObjects
    For Each objHMIEvent In objHMIObject.Event
    If objHMIEvent.EventType= hmiEventTypeMouseLButtonDown Then ---------------------> Hier liegt das C Script
    Set objHMIScriptInfo = objHMIObject.Event(2).Actions ----------------------------->hier bekomme ich einen Fehler
    If objHMIScriptInfo.ScriptType = hmiScriptTypeCScript Then
    objHMIObject.Selected = True
    MsgBox (ActiveDocument.name & " - " & objHMIObject.ObjectName & " - Property: " & objHMIProperty.DisplayName)
    MsgBox (objHMIScriptInfo.SourceCode)
    End If
    End If
    Next
    Next

  7. #7
    Registriert seit
    08.04.2011
    Beiträge
    4
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo Adenauer,

    hier ein Beispiel für Events:


    For Each objHMIEvent In objHMIObject.Events
    If objHMIEvent.EventType <> hmiEventTypeNotDefined Then
    For Each objHMIActionDynamic In objHMIEvent.Actions
    If objHMIActionDynamic.ActionType = hmiActionTypeScript Then
    Set objHMIScriptInfo = objHMIActionDynamic
    If objHMIScriptInfo.ScriptType = hmiScriptTypeCScript Then
    objHMIObject.Selected = True
    Debug.Print ActiveDocument.name & " - " & objHMIObject.ObjectName & " - Event: " & objHMIEvent.EventName
    End If
    End If
    Next
    End If
    Next

Ähnliche Themen

  1. Antworten: 1
    Letzter Beitrag: 21.11.2010, 17:20
  2. WinCC mit VBA ein C Script einfügen
    Von Zipfelklatscher im Forum Hochsprachen - OPC
    Antworten: 0
    Letzter Beitrag: 25.08.2010, 19:22
  3. VBA-script von WinCC in STEP7 aufrufen
    Von tomyy im Forum Simatic
    Antworten: 8
    Letzter Beitrag: 16.10.2009, 08:08
  4. Auslesen Bausteincode aus S7-Projekt mit VBA
    Von HaSchi im Forum Hochsprachen - OPC
    Antworten: 0
    Letzter Beitrag: 25.11.2007, 13:32
  5. VBA Script
    Von Tobias135 im Forum Hochsprachen - OPC
    Antworten: 4
    Letzter Beitrag: 29.08.2006, 12:55

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •