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

Seite 2 von 7 ErsteErste 1234 ... LetzteLetzte
Ergebnis 11 bis 20 von 64

Thema: Libnodave auf 64Bit kompilieren???

  1. #11
    Registriert seit
    21.03.2009
    Beiträge
    18
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Habe villeicht noch einen potentiellen Fehler gefunden. In
    openS7online wird der Rückgabewert als Handle declariert, aber ein Integer zurück gegeben. Wahrscheinlich bei 64 Bit ein Problem.

    Mike

  2. #12
    Registriert seit
    17.06.2004
    Ort
    Offenau
    Beiträge
    3.745
    Danke
    209
    Erhielt 421 Danke für 338 Beiträge

    Standard

    OpenS7online wird unter 64 bit eh nicht funktionieren, da Step7 noch keine 64 Bit Treiber enthält!
    ---------------------------------------------
    Jochen Kühner
    https://github.com/jogibear9988/DotN...ToolBoxLibrary - Bibliothek zur Kommunikation mit PLCs und zum öffnen von Step 5/7 Projekten

  3. #13
    Registriert seit
    21.03.2009
    Beiträge
    18
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hallo,

    also ich bin ein bißchen weiter gekommen.
    Code:
     
    fds.rfd = libnodave.openSocket
    fds.wfd = fds.rfd
    di = New libnodave.daveInterface
    di.initAdapter
    dc = New libnodave.daveConnection

    werden ohne Probleme durchlaufen.
    Aber bei
    Code:
    res = dc.connectPLC()
    bekomme ich eine -1 zurück. DaveConnection gibt mir aber einen Pointer zurück.
    Ich habe einiges im Sourcecode von int auf Handle geändert. Wenn ich den gleichen Sourcecode für 32 Bit übersetzt funktioniert die Schnittstelle auf einem 32 Bit Rechner. Nur mit 64 Bit kompiliert und auf einem 64 Bit Rechner kommt dieser Fehler. Ich denke, da ist immer noch ein int statt einem Pointer deklariert. Ich komme aber leider nicht so ganz klar, was bei dieser Funktion aufgerufen wird.
    Vielleicht seht ihr etwas im Quellcode.

    Mike

  4. #14
    Registriert seit
    17.06.2004
    Ort
    Offenau
    Beiträge
    3.745
    Danke
    209
    Erhielt 421 Danke für 338 Beiträge

    Standard

    Ich hab da auch schon rumprobiert.

    Bei mir brach er immer an der select Anweisung ab.

    Thread dazu hier: http://www.c-plusplus.de/forum/279564
    ---------------------------------------------
    Jochen Kühner
    https://github.com/jogibear9988/DotN...ToolBoxLibrary - Bibliothek zur Kommunikation mit PLCs und zum öffnen von Step 5/7 Projekten
    Zitieren Zitieren Hmm...  

  5. #15
    Registriert seit
    19.06.2003
    Beiträge
    2.200
    Danke
    85
    Erhielt 259 Danke für 175 Beiträge

    Standard

    Ich hab keinen 64-Bit-fähigen Rechner. Vielleicht kann mir ja mal einer von euch nen VPN-Zugang verschaffen?

  6. #16
    Registriert seit
    17.06.2004
    Ort
    Offenau
    Beiträge
    3.745
    Danke
    209
    Erhielt 421 Danke für 338 Beiträge

    Standard

    Zitat Zitat von Zottel Beitrag anzeigen
    Ich hab keinen 64-Bit-fähigen Rechner. Vielleicht kann mir ja mal einer von euch nen VPN-Zugang verschaffen?
    Wennn mein Kollege mit seinem 64 Bit Lappi von Montage zurück ist bestimmt!

    Ansonsten schon mal, hasst du vielleicht eine Idee warum schon bei der select Anweisung ein Fehler passiert, obwohl wenn Ich den Wert des Sockets mit printf ausgebe dies immer noch der gleiche wie nach dem öffnen ist? (steht genauer in dem Thread auf c-plusplus.de)
    ---------------------------------------------
    Jochen Kühner
    https://github.com/jogibear9988/DotN...ToolBoxLibrary - Bibliothek zur Kommunikation mit PLCs und zum öffnen von Step 5/7 Projekten

  7. #17
    Registriert seit
    19.06.2003
    Beiträge
    2.200
    Danke
    85
    Erhielt 259 Danke für 175 Beiträge

    Standard

    Zitat Zitat von Jochen Kühner Beitrag anzeigen
    ...hasst du vielleicht eine Idee warum schon bei der select Anweisung ein Fehler passiert, obwohl wenn Ich den Wert des Sockets mit printf ausgebe dies immer noch der gleiche wie nach dem öffnen ist? (steht genauer in dem Thread auf c-plusplus.de)
    Nein. Nur einen Vorschlag zur Methodik:
    Mal ein 10-Zeilen Programm schreiben (bzw. copy & pasten), das ein Socket öffnet und dann darauf schreibt. Da sieht man den Effekt (wireshark, echo-server). Dann, wenn klar ist, daß das Socket ok ist und auch richtig an read() übergeben werden kann, select() einfügen. Wenn das geht, eventuelle Erkenntnisse auf Libnodave zurückübertragen.

  8. #18
    Registriert seit
    17.06.2004
    Ort
    Offenau
    Beiträge
    3.745
    Danke
    209
    Erhielt 421 Danke für 338 Beiträge

    Standard

    Zitat Zitat von Zottel Beitrag anzeigen
    Nein. Nur einen Vorschlag zur Methodik:
    Mal ein 10-Zeilen Programm schreiben (bzw. copy & pasten), das ein Socket öffnet und dann darauf schreibt. Da sieht man den Effekt (wireshark, echo-server). Dann, wenn klar ist, daß das Socket ok ist und auch richtig an read() übergeben werden kann, select() einfügen. Wenn das geht, eventuelle Erkenntnisse auf Libnodave zurückübertragen.
    Jo wäre noch nee Idee. Wenn mein Kollege wieder zurück ist, werd Ich mich mal wieder dran machen! Ich hab das ganze ja auch extra mit den Beispielprogrammen von dir, und nicht mit C# getestet, weil vielleicht tauchen da ja noch weitere Probleme auf, beim nutzen einer 64 Bit DLL.

    Läufts denn eigentlich unter Linux mit einer 64 Bit DLL? Das könnt ich heut mal Zuhause noch probieren. Da könnt Ich dir auch Zugriff geben falls du Interesse hast!
    ---------------------------------------------
    Jochen Kühner
    https://github.com/jogibear9988/DotN...ToolBoxLibrary - Bibliothek zur Kommunikation mit PLCs und zum öffnen von Step 5/7 Projekten

  9. #19
    Registriert seit
    17.06.2004
    Ort
    Offenau
    Beiträge
    3.745
    Danke
    209
    Erhielt 421 Danke für 338 Beiträge

    Standard

    Ok, habs heute nochmal auf meinem Linux Server probiert (Ubuntu Server 64Bit).

    Compilieren und verbinden klappt da ohne Probleme, somit schein es nur ein Problem mit dem Windows Socket zu sein!
    ---------------------------------------------
    Jochen Kühner
    https://github.com/jogibear9988/DotN...ToolBoxLibrary - Bibliothek zur Kommunikation mit PLCs und zum öffnen von Step 5/7 Projekten
    Zitieren Zitieren Ok...  

  10. #20
    Registriert seit
    17.06.2004
    Ort
    Offenau
    Beiträge
    3.745
    Danke
    209
    Erhielt 421 Danke für 338 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Nochwas: Musste im Linux Makefile unter den Compileroptionen aber -fPIC anhängen, damit es compiliert!

    (Hab auch noch -m64 angehängt um sicher zu sein das eine 64 Bit Version erzeugt wird (wobei das unter meinen 64 Bit System glaub automatisch der Fall ist!))
    ---------------------------------------------
    Jochen Kühner
    https://github.com/jogibear9988/DotN...ToolBoxLibrary - Bibliothek zur Kommunikation mit PLCs und zum öffnen von Step 5/7 Projekten

Ähnliche Themen

  1. Win7: 32 oder 64bit? ...und wenn 64bit: dann auch eine VM mit 32bit dazu?
    Von Perfektionist im Forum PC- und Netzwerktechnik
    Antworten: 9
    Letzter Beitrag: 29.07.2010, 15:34
  2. LibNodave 64bit write error on Linux
    Von 3electrons im Forum Hochsprachen - OPC
    Antworten: 3
    Letzter Beitrag: 23.04.2010, 19:42
  3. S7-Programm übersetzen/kompilieren?
    Von SPSstudent im Forum Simatic
    Antworten: 10
    Letzter Beitrag: 16.12.2009, 00:40
  4. Antworten: 5
    Letzter Beitrag: 22.11.2006, 21:26
  5. libnodave mit DevC++ kompilieren
    Von Thomas_v2.1 im Forum Hochsprachen - OPC
    Antworten: 5
    Letzter Beitrag: 20.11.2006, 01:08

Lesezeichen

Berechtigungen

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