Сообщается, что переменная не определена - PullRequest
0 голосов
/ 29 февраля 2020

это самая странная ошибка, которую я когда-либо имел (я пишу это потому, что большая часть моего поста - это код !! Вы можете мне помочь? У меня новая ошибка: / line 43: conn.send = command.encode () NameError: имя 'conn' не определено вот код:

import os
import socket
import sys
from _thread import *
mm = 0
owncmds = ["dir", "erase"]
def clientthread(conn):
    buffer = ""
    data = conn.recv(8192)
    buffer += data
    print(buffer)
    # conn.sendall(reply)
def main():
    try:
        host = socket.gethostname()
        port = 6666
        tot_socket = input("Wie viele Clients sind zugelassen?: ")
        list_sock = []
        for i in range(int(tot_socket)):
            s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
            s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
            s.bind((host, port + i))
            s.listen(2)
            list_sock.append(s)
            print("[*] Server listening on %s %d" % (host, (port + i)))
        for j in range(len(list_sock)):
            conn, addr = list_sock[j].accept()
            print('[*] Connected with ' + addr[0] + ':' + str(addr[1]))
            start_new_thread(clientthread, (conn,))
    finally:
        s.close()
main()
while mm < 1:
    command = input(str("Command: "))
    if command not in owncmds:
        conn.send(command.encode())
    else:
        if command == "dir":
            result = conn.recv(1024)
            result = result.decode()
            print(result)
        if command == "erase":
            command = command + "/F /Q "
            FileErase = input(str("Filename: "))
            command = command + FileErase
            conn.send(command.encode())
    print("Der Befehl wurde gesendet, warte auf Akzeptierung")
    print("")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...