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

Seite 2 von 2 ErsteErste 12
Ergebnis 11 bis 18 von 18

Thema: VB Script in WinCC flexible

  1. #11
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.222
    Danke
    533
    Erhielt 2.698 Danke für 1.950 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Ich das hier gefunden für C, aber ob das mit VBS und WinCCFlex geht?

    http://www.experts-exchange.com/Prog..._23380535.html

    Immerhin kann man ja mal im Panel nach der genutzten DLL suchen.
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

  2. #12
    polybassa ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    16.02.2009
    Beiträge
    16
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hi,
    also die coredll.dll hab ich in meinem Panel,
    nur wie mach ich daraus jetzt ne exe Datei die ich dann aufrufen kann?

  3. #13
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.222
    Danke
    533
    Erhielt 2.698 Danke für 1.950 Beiträge

    Standard

    Zitat Zitat von polybassa Beitrag anzeigen
    Hi,
    also die coredll.dll hab ich in meinem Panel,
    nur wie mach ich daraus jetzt ne exe Datei die ich dann aufrufen kann?
    Du könntest dir von MS die richtigen SDK's für das in den Panels genutzte WinCE (war das V5?) und den richtigen Compiler besorgen (hab ich vor Jahren mal mit den TP270 gemacht, hat sogar funktioniert).

    Oder du bekommst raus (ich weiß das leider nicht), ob man die DLL in VBScript einbinden kann und wenn ja, wie man auf die in der DLL enthaltenen Funktionen dann Zugriff nimmt.

    Vielleicht findet sich hier im Forum noch jemand, der das schon einmal gemacht hat.
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

  4. #14
    polybassa ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    16.02.2009
    Beiträge
    16
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hi,

    ich hab bei ner Seite von Microsoft ein VB Code gefunden, der einen Neustart von WinCE V5 auslöst.
    Problem bei der sache is nur das ich den nicht einfach so in WinCC flexible einbinden kann.
    In dem Code sind, wenn ich alles richtig interpretiere, vier Unterprogramme.
    Das letzt Unterprogamm ist für mich unwichtig. Is glaub ich blos des ausgeben von am Meldefenster.
    Der eigentliche Restart findet glaub ich in der Reset pocket pc funktion statt. Dabei wird glaub ich irgendein wert aus dem ctlcode in den IOKernel geschoben.
    Weis jemand wie ich aus den drei Funktionen eine Funktion mach die ich unter Wincc flexible einbinden kann?

    Private Const FILE_DEVICE_HAL As Integer = &H101
    Private Const METHOD_BUFFERED As Integer = 0
    Private Const FILE_ANY_ACCESS As Integer = 0

    Private Function CTL_CODE( _
    ByVal DeviceType As Integer, _
    ByVal Func As Integer, _
    ByVal Method As Integer, _
    ByVal Access As Integer) As Integer

    Return (DeviceType << 16) Or (Access << 14) Or (Func << 2) Or Method

    End Function

    Declare Function KernelIoControl Lib "CoreDll.dll" _
    (ByVal dwIoControlCode As Integer, _
    ByVal lpInBuf As IntPtr, _
    ByVal nInBufSize As Integer, _
    ByVal lpOutBuf As IntPtr, _
    ByVal nOutBufSize As Integer, _
    ByRef lpBytesReturned As Integer _
    ) As Integer

    Private Function ResetPocketPC() As Integer
    Dim bytesReturned As Integer = 0
    Dim IOCTL_HAL_REBOOT As Integer = CTL_CODE(FILE_DEVICE_HAL, _
    15, METHOD_BUFFERED, FILE_ANY_ACCESS)
    Return KernelIoControl(IOCTL_HAL_REBOOT, IntPtr.Zero, 0, _
    IntPtr.Zero, 0, bytesReturned)
    End Function

    Private Sub ResetDevice()
    Dim msg As String
    Dim title As String
    Dim style As MsgBoxStyle
    Dim response As MsgBoxResult
    msg = "Are you sure you want to reset the device?"
    style = MsgBoxStyle.DefaultButton2 Or _
    MsgBoxStyle.Question Or MsgBoxStyle.YesNo
    title = "Device Reset"
    response = MsgBox(msg, style, title)
    If response = MsgBoxResult.Yes Then ' User chose Yes.
    ResetPocketPC()
    End If

    End Sub
    Mfg
    polybassa

  5. #15
    Registriert seit
    10.02.2009
    Ort
    Karlsruhe
    Beiträge
    42
    Danke
    0
    Erhielt 6 Danke für 6 Beiträge

    Standard

    Du könntest doch den VB Code in ein *.exe file kompilieren und dieses dann von WinCC flex aus starten ?

    Gruss

  6. #16
    Registriert seit
    12.05.2007
    Beiträge
    416
    Danke
    14
    Erhielt 45 Danke für 40 Beiträge

    Standard

    Hallo

    Ich schau mir das Spielchen jetzt schon ne Weile an...
    Ich behaupte mal dass man in VBS (man beachte das S) keine DLL's einbinden kann. Wenn du aber die DLL als Eigenes Control (Drag and Drop auf ein Bild ziehen) einbinden kannst, kannst du mittels Skripten auf das Objekt und deren Funktionen zugreifen.

    Meine Schnelllösung wäre glaub bis zum heutigen das einfachste und billigste. Klar versuche ich soweit es geht alles per SW zu erschlagen - an manchen Punkten wo aber Zeit und Geld ins Spiel kommen kommt man um "Unsaubere" Lösungen nicht vorbei! Ihr müsst Geld haben wenn man sich so lange mit dem Thema beschäftigen kann...

  7. #17
    polybassa ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    16.02.2009
    Beiträge
    16
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    @xhasx
    Wenn die Sache mit dem Relai funktionieren würd, hätt ichs schon längst gemacht, aber das Problem an der Sache ist, das die Panels einen Ein-Taster haben (so wie ein normaler PC zuhause). Und wenn ich einfach die Versorgungsspannung aus-und einschalte, passiert erstmal garnichts.
    Solange bis der Eintaster gedrückt wird.
    Und Blockieren kann ich den Eintaster auch nicht. Sonst passiert des gleiche wie bei deinen PC's. Des Panel fährt ca 5 Sekunden hoch und dann wird es wieder ausgeschalten.
    Da der Taster fest in der Folientastatur des Panels integriert ist kann ich den auch nicht kontaktieren und über ein Relai künstlich einen Einschaltimpuls erzeugen.
    So wenn dir jetzt noch eine weiter Unsaubere Lösung einfällt, dann schieß los.

  8. #18
    Registriert seit
    12.05.2007
    Beiträge
    416
    Danke
    14
    Erhielt 45 Danke für 40 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Ups, das wusste ich nicht...
    Ich versuch mich mal schlau zu machen... Also irgendwo hab ich noch ein MP370. Das hat keinen Knopf aber CE... Vielleicht bring ich was raus...

Ähnliche Themen

  1. Antworten: 1
    Letzter Beitrag: 21.11.2010, 17:20
  2. wincc flexible script
    Von hene1985 im Forum HMI
    Antworten: 7
    Letzter Beitrag: 05.08.2010, 14:18
  3. WinCC flexible und Script für Archive
    Von Marc_3 im Forum HMI
    Antworten: 7
    Letzter Beitrag: 19.07.2007, 23:44
  4. Antworten: 1
    Letzter Beitrag: 03.07.2007, 08:25
  5. WinCC flexible und Script
    Von Loipe im Forum HMI
    Antworten: 4
    Letzter Beitrag: 22.02.2007, 12:38

Lesezeichen

Berechtigungen

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