elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: AIO elhacker.NET 2021 Compilación herramientas análisis y desinfección malware


  Mostrar Mensajes
Páginas: [1] 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 ... 159
1  Sistemas Operativos / Windows / Abrir cmd desde pantalla de inicio w10 en: 9 Enero 2024, 19:13 pm
Buenas, tengo un equipo que no me deja bootear desde ningún lado, usb, dvd, etc...
Quiero hacer booteo por red para poder instalar el w10 pero al parecer la tarjeta de red del equipo tiene ip estática y con diferente segmento de red ya que no me detecta mi servidor de booteo de red. Lo que quiero hacer es abrir el CMD desde la pantalla de inicio y por linea de comandos activar el DHCP del equipo para que tome una ip de la misma red que el server.

se puede hacer eso?

EDITO:

ya solucione el tema, es una lenovo todo en uno y tiene un menú de exclusión en el boot, para quitar los dispositivos excluidos y ponerlos como opcionales solo se presiona la tecla x, por si a alguien mas le pasa...
2  Sistemas Operativos / Windows / Teclado en: 24 Julio 2023, 20:52 pm
Buenos días, no sabia si poner el tema a qui o en hardware, tengo un problema con una laptop:
al seleccionar un archivo en windows lo borra como si la tecla suprimir estuviera presionada, ya formatee el equipo y también ya le puse un teclado nuevo, alguien le ha pasado algo parecido??
3  Programación / Scripting / Re: Función en Python en: 29 Marzo 2023, 01:31 am
Buenas no me dejo modificar el mensaje anterior, ya me funciono lo del tema de las variables como me lo mostraste, solo para el tema de la conexión con la base de datos lo tuve que mover a la parte de arriba para que me los tomara en las funciones, pego el código para los que estén aprendiendo como yo, vean lo que tuve que hacer.}

Código
  1. import tkinter
  2. from tkinter import *
  3. import mysql.connector
  4.  
  5. conexion = mysql.connector.connect(host="localhost",user="???",passwd="?????",database="prueba")
  6. cursor = conexion.cursor()
  7.  
  8.  

por cierto me da un error a la hora de agregar la información a la tabla pero ya estema de mySQL.

Código
  1. line 645, IN prepare_for_mysql
  2.    RESULT = SELF._cmysql.convert_to_mysql(*params)
  3. _mysql_connector.MySQLInterfaceError: Python TYPE SET cannot be converted
  4.  

EDITO:

el error que me daba del sql era por como recibía la información y de como la insertaba, les pego el código de como lo solucione:

Código
  1. def alta(cliente):
  2.    datos = [cliente['ID'], cliente['Nombre'], cliente['Direccion'], cliente['Telefono']]
  3.    cursor.execute("INSERT INTO clientes VALUES (%s, %s, %s, %s)", datos)
  4.    conexion.commit()
  5.    tkinter.messagebox.showinfo('Agregar', 'Cliente dado de alta')
  6.  

4  Programación / Scripting / Re: Función en Python en: 25 Marzo 2023, 18:47 pm
mm ya veo, pues en realidad el problema sigue siendo este: el alcance de tus variables o donde las variables pueden utilizarse, tenes que organizar tu codigo en bloques para que te guies qué datos le estas enviando a las funciones.

Python no te impone ninguna forma de codear pero en general siempre es mejor utilizar una estructura en tus programas. Es decir, tendrias que organizar tu codigo en funciones o clases.

considera este refactor, le agregue las explicaciones en forma de comentarios, la funcion main() es la principal y llama agregar_cliente, en agregar_cliente se ingresan los datos pero a diferencia de antes, una mejor opcion es encapsularlos en una unidad tipo cliente, por ejemplo un diccionario. Este cliente (encapsulado) se manda a la funcion alta o baja, de manera que estas funciones pueden procesar al cliente.

pruebalo y me comentas si tienes dudas:

Código
  1. import tkinter
  2. import sqlite3
  3. '''from tkinter import * esto puede traer problemas, te conviene importar solo
  4. lo que necesitas usar'''
  5.  
  6. # Crear la función para el boton Cliente
  7. def agregar_cliente(ventana):
  8.    # Crear etiquetas
  9.    tkinter.Label(ventana, text='ID:').grid(row=1, column=0)
  10.    tkinter.Label(ventana, text='Nombre:').grid(row=2, column=0)
  11.    tkinter.Label(ventana, text='Direccion:').grid(row=3, column=0)
  12.    tkinter.Label(ventana, text='Telefono').grid(row=4, column=0)
  13.  
  14.    # Crear cuadros de texto
  15.    cuadroID = tkinter.StringVar()
  16.    tkinter.Entry(ventana, width=30, textvariable=cuadroID).grid(row=1, column=1)
  17.  
  18.    cuadroNombre = tkinter.StringVar()
  19.    tkinter.Entry(ventana, width=30, textvariable=cuadroNombre).grid(row=2, column=1)
  20.  
  21.    cuadroDireccion = tkinter.StringVar()
  22.    tkinter.Entry(ventana, width=30, textvariable=cuadroDireccion).grid(row=3, column=1)
  23.  
  24.    cuadroTelefono = tkinter.StringVar()
  25.    tkinter.Entry(ventana, width=30, textvariable=cuadroTelefono).grid(row=4, column=1)
  26.  
  27.    '''cuando llamas al boton dar de alta, creas un diccionario o estructura de datos
  28.    del cliente, de manera que esta todo encapsulado en una unidad'''
  29.  
  30.    # Crear botones
  31.    tkinter.Button(ventana, text='Dar de Alta',
  32.            command=lambda: alta(
  33.                {
  34.                'id': cuadroID.get(),
  35.                'nombre': cuadroNombre.get(),
  36.                'direccion': cuadroDireccion.get(),
  37.                'telefono': cuadroTelefono.get()
  38.                }
  39.            )).grid(row=5, column=0)
  40.  
  41.    '''lo mismo en baja'''
  42.  
  43.    tkinter.Button(ventana, text='Dar de Baja',
  44.            command=lambda: baja(
  45.                {
  46.                'id': cuadroID.get(),
  47.                'nombre': cuadroNombre.get(),
  48.                'direccion': cuadroDireccion.get(),
  49.                'telefono': cuadroTelefono.get()
  50.                }
  51.            )).grid(row=5, column=1)
  52.  
  53.  
  54. # Crear la función para el boton Alta
  55. def alta(cliente):
  56.  
  57.    '''
  58.    id_cliente = cuadroID.get()
  59.    nombre_cliente = cuadroNombre.get()
  60.    direccion_cliente = cuadroDireccion.get()
  61.    telefono_cliente = cuadroTelefono.get()
  62.  
  63.    # Agregar los datos a la tabla de la base de datos
  64.    datos = [id_cliente, nombre_cliente, direccion_cliente, telefono_cliente]
  65.    cursor.execute("INSERT INTO tabla_clientes VALUES (?, ?, ?, ?)", datos)
  66.    conexion.commit()
  67.    '''
  68.  
  69.    '''la funcion alta recibe ya un cliente en forma de estructura de datos'''
  70.  
  71.    print(f'Se dara de alta: {cliente}')
  72.    print(f"Tiene ID:' {cliente['id']}")
  73.    print(f"Tiene nombre: {cliente['nombre']}")
  74.  
  75. # Crear la función para el boton Baja
  76. def baja(cliente):
  77.  
  78.    '''
  79.    id_cliente = cuadroID.get()
  80.    cursor.execute("DELETE FROM tabla_clientes WHERE id = ?", [id_cliente])
  81.    conexion.commit()
  82.    '''
  83.  
  84.    '''lo mismo la funcion baja'''
  85.    print(f'Se dara de baja: {cliente}')
  86.  
  87. def main():
  88.    # Crear una ventana principal
  89.    ventana = tkinter.Tk()
  90.    ventana.title("Entorno Gráfico")
  91.    ventana.geometry("500x250")
  92.  
  93.    # Crear la conexión con la base de datos
  94.    conexion = sqlite3.connect("base_datos.db")
  95.    cursor = conexion.cursor()
  96.  
  97.    '''aca llamas a la funcion agregar_cliente y le pasas la referencia
  98.    de la ventana padre'''
  99.    # Crear el boton Clientes
  100.    botonClientes = tkinter.Button(ventana, text="Clientes",
  101.            command=lambda:agregar_cliente(ventana) )
  102.  
  103.    botonClientes.grid(row=0, column=0)
  104.  
  105.    # Iniciar el programa
  106.    ventana.mainloop()
  107.  
  108. if __name__ == '__main__':
  109.    main()


Gracias lo pruebo y te aviso...
5  Programación / Scripting / Re: Función en Python en: 24 Marzo 2023, 23:15 pm
Hola, tu problema es que las variables no son accesibles desde el metodo alta(), además no veo que utilices StringVar(), por lo que sé, el componente Entry tiene que asociarse a una variable tipo StringVar() para que puedas guardar el contenido del entry.
Entonces lo que tenes que hacer es guardar el contenido que el usuario introduce en el componente Entry con una variable StringVar() y luego en el evento del botón de 'dar alta' le tienes que pasar la referencia a la función que procesa el evento y además el CONTENIDO de Entry.
Fijate este ejemplo muy simple:

Código
  1. import tkinter
  2.  
  3. def evento_enviar(entradaNombre):
  4.    print(f'Usuario ingresó: {entradaNombre.get()}')
  5.  
  6. def main():
  7.    ventana = tkinter.Tk()
  8.    ventana.geometry('600x400')
  9.  
  10.    tkinter.Label(ventana, text='Ingrese su nombre --> ').grid(row=0, column=0)
  11.  
  12.    entradaNombre = tkinter.StringVar()
  13.  
  14.    tkinter.Entry(ventana, width=30, textvariable=entradaNombre).grid(row=0, column=1)
  15.  
  16.    tkinter.Button(ventana, text='Enviar',
  17.        command=lambda: evento_enviar(entradaNombre)).grid(row=0, column=2)
  18.  
  19.    ventana.mainloop()
  20.  
  21. if __name__ == '__main__':
  22.    main()
  23.  

Por ultimo nota que esto tambien se podria solucionar si utilizas POO, donde podrias hacer que los datos sean atributos de la clase y por lo tanto compartidos a lo largo del codigo de la clase.

Gracias por responder a lo que veo solo es una manera diferente de hacerlo, ya hice las modificaciones que me diste pero el problema es el mismo en la linea 42 dice variable no definida, te pego el código completo:

Código
  1. import tkinter
  2. from tkinter import *
  3. import sqlite3
  4.  
  5. # Crear una ventana principal
  6. ventana = tkinter.Tk()
  7. ventana.title("Entorno Gráfico")
  8. ventana.geometry("500x250")
  9.  
  10. # Crear la función para el boton Cliente
  11. def clientes():
  12.    ventana2 = tkinter.Toplevel(ventana)
  13.    ventana2.title("Alta de Clientes")
  14.    ventana2.geometry("500x250")
  15.  
  16.    # Crear etiquetas
  17.    tkinter.Label(ventana2, text='ID:').grid(row=0, column=0)
  18.    tkinter.Label(ventana2, text='Nombre:').grid(row=1, column=0)
  19.    tkinter.Label(ventana2, text='Direccion:').grid(row=2, column=0)
  20.    tkinter.Label(ventana2, text='Telefono').grid(row=3, column=0)
  21.  
  22.    # Crear cuadros de texto
  23.    cuadroID = tkinter.StringVar()
  24.    tkinter.Entry(ventana2, width=30, textvariable=cuadroID).grid(row=0, column=1)
  25.  
  26.    cuadroNombre = tkinter.StringVar()
  27.    tkinter.Entry(ventana2, width=30, textvariable=cuadroNombre).grid(row=1, column=1)
  28.  
  29.    cuadroDireccion = tkinter.StringVar()
  30.    tkinter.Entry(ventana2, width=30, textvariable=cuadroDireccion).grid(row=2, column=1)
  31.  
  32.    cuadroTelefono = tkinter.StringVar()
  33.    tkinter.Entry(ventana2, width=30, textvariable=cuadroTelefono).grid(row=3, column=1)
  34.  
  35.    # Crear botones
  36.    tkinter.Button(ventana2, text='Dar de Alta',command=alta).grid(row=4, column=2)
  37.    tkinter.Button(ventana2, text='Dar de Baja',command=baja).grid(row=4, column=1)
  38.  
  39.  
  40. # Crear la función para el boton Alta
  41. def alta():
  42.    id_cliente = cuadroID.get()
  43.    nombre_cliente = cuadroNombre.get()
  44.    direccion_cliente = cuadroDireccion.get()
  45.    telefono_cliente = cuadroTelefono.get()
  46.  
  47.    # Agregar los datos a la tabla de la base de datos
  48.    datos = [id_cliente, nombre_cliente, direccion_cliente, telefono_cliente]
  49.    cursor.execute("INSERT INTO tabla_clientes VALUES (?, ?, ?, ?)", datos)
  50.    conexion.commit()
  51.  
  52. # Crear la función para el boton Baja
  53. def baja():
  54.    id_cliente = cuadroID.get()
  55.    cursor.execute("DELETE FROM tabla_clientes WHERE id = ?", [id_cliente])
  56.    conexion.commit()
  57.  
  58. # Crear el boton Clientes
  59. botonClientes = Button(ventana, text="Clientes", command=clientes)
  60. botonClientes.grid(row=0, column=0)
  61.  
  62. # Crear la conexión con la base de datos
  63. conexion = sqlite3.connect("base_datos.db")
  64. cursor = conexion.cursor()
  65.  
  66. # Iniciar el programa
  67. ventana.mainloop()
  68.  

6  Programación / Scripting / Función en Python en: 23 Marzo 2023, 18:50 pm
Buenos días como están? espero me puedan ayudar con una duda que tengo.
Estoy haciendo un sistema de recepción de equipos en python, lo voy a crear por partes, soy principiante apenas estoy aprendiendo el lenguaje. Tengo una función donde creo cuadros de texto para meter datos(de clientes), y otra función donde debo tomar el dato que metí en el cuadro de texto para poder guardar esa información en una tabla(clientes) de una base de datos pero me da error en la función del botón de alta ya que dice que no esta definida una variable en este caso son las variables de ID, Nombre, etc.... les pego el código a ver si me pueden ayudar...



Código
  1. # Crear la función para el boton Cliente
  2. def clientes():
  3.    ventana2 = tkinter.Toplevel(ventana)
  4.    ventana2.title("Alta de Clientes")
  5.    ventana2.geometry("500x250")
  6.  
  7.    # Crear etiquetas
  8.    etiquetaID = Label(ventana2, text="ID:")
  9.    etiquetaID.grid(row=0, column=0)
  10.  
  11.    etiquetaNombre = Label(ventana2, text="Nombre:")
  12.    etiquetaNombre.grid(row=1, column=0)
  13.  
  14.    etiquetaDireccion = Label(ventana2, text="Dirección:")
  15.    etiquetaDireccion.grid(row=2, column=0)
  16.  
  17.    etiquetaTelefono = Label(ventana2, text="Teléfono:")
  18.    etiquetaTelefono.grid(row=3, column=0)
  19.  
  20.    # Crear cuadros de texto
  21.    cuadroID = Entry(ventana2)
  22.    cuadroID.grid(row=0, column=1)
  23.  
  24.    cuadroNombre = Entry(ventana2)
  25.    cuadroNombre.grid(row=1, column=1)
  26.  
  27.    cuadroDireccion = Entry(ventana2)
  28.    cuadroDireccion.grid(row=2, column=1)
  29.  
  30.    cuadroTelefono = Entry(ventana2)
  31.    cuadroTelefono.grid(row=3, column=1)
  32.  
  33.    # Crear botones
  34.    botonAlta = Button(ventana2, text="Dar de Alta", command=alta)
  35.    botonAlta.grid(row=4, column=0)
  36.  
  37.    botonBorrar = Button(ventana2, text="Dar de Baja", command=baja)
  38.    botonBorrar.grid(row=4, column=1)
  39.  

aca   debo tomar esos datos:

Código
  1. # Crear la función para el boton Alta
  2. def alta():
  3.    id_cliente = cuadroID.get() #-------------------aqui me da el error, en obtener esa informacion
  4.    nombre_cliente = cuadroNombre.get()
  5.    direccion_cliente = cuadroDireccion.get()
  6.    telefono_cliente = cuadroTelefono.get()
  7.  
  8.    # Agregar los datos a la tabla de la base de datos
  9.    datos = [id_cliente, nombre_cliente, direccion_cliente, telefono_cliente]
  10.    cursor.execute("INSERT INTO tabla_clientes VALUES (?, ?, ?, ?)", datos)
  11.    conexion.commit()
  12.  
  13.  
7  Sistemas Operativos / Windows / Re: Reparar arranque de Windows NT en: 19 Noviembre 2021, 21:49 pm
Hola, Sk9ITk5Z.

Dada la antigüedad del equipo,, quizas no te quede mas remedio que adquirir un disquete de 3 1/2 y intentar usarlo un disco de inicio y probar los comandos que te ha comentado Machacador.

Dicho sea de paso, y, sobre lo que dije en mi anterior comentario de que podría ser un problema adquirirlos; he hecho una búsqueda en Amazon y debo rectificar en parte en lo que ya he dicho, ya que, aunque se pueden encontrar en Amazon, el precio sigue siendo un "Problema" al estar casi a 30 euros (ya sea por el precio y/o por la "baja tolerancia a fallos" de los disquetes, por citar dos ejemplos)....

Por ultimo, y, si  no es molestia, claro esta, quisiera añadir a modo de ejemplo información sobre el siguiente enlace/producto de Amazon::

FUENTE:: https://www.amazon.es/Verbatim-MF2-HD-DataLife-disquetes-formato/dp/B0000511BI


Gracias, voy a probar eso...



Verbatim MF2-HD DataLife - Pack de 10 disquetes 3.5", Formato Pc

recio:   29,99€ y Devoluciones GRATIS
Precio final del producto
Nuevos (4) desde 29,99 € Envío GRATIS.



Muchas gracias por vuestra atencion, y, bueno, saludos.
8  Sistemas Operativos / Windows / Re: Reparar arranque de Windows NT en: 18 Noviembre 2021, 15:58 pm
pensaba que ya lo había visto todo, gente usando Windows XP, Windows 7, pero ¿Windows NT? Finalizó el soporte en 2004¿?

Vaya con el servidor HP, todavía funciona jeje

Es un ¿Xeon 2.4 GHz  con  RAM 512 MB - HD 1 x 120 GB?

Enhorabuena con funcionar con 512MB de ram a las puertas del 2022.

yo pense lo mismo hasta que lo vi, lo que pasa que lo usan para procesar imagenes de aparato para tomografías(que es muy antiguo) es de un dr..

Tal vez funcionen los comandos comunes...

bootrec / fixmbr

bootrec / fixboot

bootrec / RebuildBcd


Suerte.

 :rolleyes: :o :rolleyes:

justo son los que quiero probar pero como ya comente a la hora de hacer el booteo por el CD deja de dar imagen...
9  Sistemas Operativos / Windows / Re: Reparar arranque de Windows NT en: 17 Noviembre 2021, 00:01 am
el cliente no tiene nada de discos, ya estoy bajando versiones de windows NT, pero mi duda es con los comandos que conocemos para reparar el W XP se podra reparar el NT? jamas he trabajado con el W NT...

EDITO:   Tengo un porblema no puedo bootear en la computadora, si me aparace el post del bios y al darle f8 para seleccionar el CD-ROM deja de dar imagen, no hace nada el equipo queda encendido pero sin dar imagen , por lo tanto no puedo bootear desde el CD...
10  Sistemas Operativos / Windows / Reparar arranque de Windows NT en: 16 Noviembre 2021, 17:47 pm
Buenos dias a todos, tengo un problema con una computadora tipo servidor, es una XELERIS  modelo: 2372897, no arranca el sistema y da el error que adjunto abajo en la imagen, alguna idea para repararlo sin tener que formatear? se necesitan los programas que tiene instalado, solo se requiere reparar el arranque...


Páginas: [1] 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 ... 159
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines