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

Ergebnis 1 bis 5 von 5

Thema: Fehler bei strcmp in c-Script

  1. #1
    Registriert seit
    06.02.2012
    Beiträge
    3
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo zusammen,

    ich habe bei meinem WinCC (v7.0 SP2) einen Fehler und weiß nicht wirklich weiter.

    Ich speichere einen Text in der SPS (Textvariable 8-Bit) den Rechnernamen wenn ich auch einen Button klicke.

    Nun habe ich ein Scrpit in c gemacht, was meinen Aktuellen Rechnernamen ausließt und mit dem ver Variable vergleicht. doch irgendwie stimmt das was nicht. Wenn ich am Rechner SRV01 den Button klicke wird der Name in die Variable geschreiben. der Vergleich passt dann. schreibe ich allerdings dort SRV02 oder TEST rein, dann soll der Vergleich auch ok sein. Nur wenn die Variable leer ist klappt der vergleich.

    Hier der Code für den Vergleich:
    Code:
    int Freigabe_2(char* FreigBereich)
    {
    char* cThisClient;
    
    cThisClient = GetTagChar("@LocalMaschineName");
    
    
    if(!strcmp(cThisClient, GetTagChar(FreigBereich)))
        return 0;
    else
        return 1;
    }
    FreigBereich wird als Parameter bei start der Funktion/Mehtode übergeben, da ich verschiedene Bereiche habe, dort steht dann der PC Name dirn.(z.B. "Client_1", Client_2")

    Hoffe jemand von euch erkennt den Fehler den ich hier mache.

    Gruß Simon
    Zitieren Zitieren Fehler bei strcmp in c-Script  

  2. #2
    SimonGrimm ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    06.02.2012
    Beiträge
    3
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Ein Stück bin ich der Lösung näher gekommen.

    Wenn ich statt den Rechnernamen auszulesen feste eintrage, dann klappt es.

    Achja, vielleicht noch als Tipp, ich arbeite auf den Clients mit dem Webnavigator.

  3. #3
    Registriert seit
    22.09.2006
    Ort
    Bodenseeraum
    Beiträge
    1.022
    Danke
    61
    Erhielt 136 Danke für 122 Beiträge

    Standard

    Hi, so nebenbei, ist das ein Test? Denn mit VB Script geht das ganz easy. C-Script, ok, aber da sind Strings,
    na ja, nicht so angenehm.

    Gruss: Vl.

  4. #4
    SimonGrimm ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    06.02.2012
    Beiträge
    3
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Ich denke ich habe den Fehler gefunden.

    Man sollte auch die Variable @LocalMachineName richtig schreiben.

    *SchandeÜberMeinHaupt*

  5. #5
    Registriert seit
    24.10.2011
    Ort
    Adelsdorf
    Beiträge
    19
    Danke
    0
    Erhielt 6 Danke für 6 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo, deine C Aktionen ist unsicher programmiert. Du solltest immer auf NULL Pointer prüfen. Der C Interpreter fängt das normalerweise ab und stürzt nicht ab.

    char* cThisClient;

    cThisClient = GetTagChar("@LocalMaschinName");
    if (pcThisClient = NULL) return; // Nullpointerauswertung
    ...
    Das gilt auch für den anderen GetTagChar .

Ähnliche Themen

  1. WinCC flex 2008: Fehler im Script
    Von Da_Basco im Forum HMI
    Antworten: 10
    Letzter Beitrag: 31.10.2011, 21:08
  2. Script gibt fehler aus
    Von Bensen83 im Forum HMI
    Antworten: 2
    Letzter Beitrag: 10.08.2011, 11:51
  3. Antworten: 0
    Letzter Beitrag: 19.04.2011, 11:54
  4. Antworten: 16
    Letzter Beitrag: 14.03.2011, 12:16
  5. WINCC Script Fehler
    Von Trocellen im Forum HMI
    Antworten: 9
    Letzter Beitrag: 08.11.2010, 12:38

Lesezeichen

Berechtigungen

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