try/except - Sockets / Programmaufruf

Sockets, TCP/IP, (XML-)RPC und ähnliche Themen gehören in dieses Forum
Antworten
blackip
User
Beiträge: 1
Registriert: Mittwoch 23. Juli 2008, 12:13

Mittwoch 23. Juli 2008, 12:25

Hallo,

wie kann ich nach der try/except-Anweisung im Code weiterarbeiten?

Code: Alles auswählen

import socket

ip = "127.0.0.1"
port = 9009

x = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)

try:
  x.connect((ip, port))
except socket.error:
  print "Fehlgeschlagen"
In meinem Fall möchte ich prüfen, ob sich ein Socket aufbauen lässt. Ist dies der Fall soll ein weiteres Programm starten.
Ist es nicht möglich den Socket aufzubauen, wird eine Fehlermeldung erstellt.

Meine Funktion sieht so aus (mit PyQt Elementen):

Code: Alles auswählen

self.connect(self.Button_Verbinden,QtCore.SIGNAL("clicked()"),self.verbinden)

def verbinden(self):
        
        self.Meldungsfeld.setText("")
        IP = str(self.Inhalt_IP.text())
        file = open("IP.txt","w")
        file.write(IP)
        file.close()
        s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        
        try:
            s.connect((IP, 1234))
            
        except socket.error:
            self.Meldungsfeld.setText("IP nicht erreichbar!")
            
        s.close()
        os.popen("programm.pyw")    
        
Die IP wird aus einem Textfeld ausgelesen und abgespeichert.
Das nachfolgende Programm greift wieder darauf zu.
Ich habe schon mehrere Kombinationen versucht. Auch den Programmaufruf in die "try"-Anweisung mit hineinzuschreiben.
Alles ohne Erfolg.

Vielleicht habt ihr ja eine Idee.

Vielen Dank schonmal.

BlackIP
Antworten