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

 

 


Tema destacado: Introducción a Git (Primera Parte)


  Mostrar Mensajes
Páginas: 1 2 [3] 4 5 6 7 8 9 10 11 12
21  Programación / .NET (C#, VB.NET, ASP) / Re: Keylogger en mi equipo local en: 17 Abril 2023, 10:26 am
Respecto a tu pregunta, la conversión de un programa de C# a C++ puede ser costosa, ya que son lenguajes con diferencias significativas en su sintaxis y estructura. Si quieres evitar tener que reescribir todo el código, podrías considerar usar una plataforma multiplataforma como .NET Core, que permite escribir aplicaciones en C# que se pueden ejecutar en diferentes sistemas operativos, incluyendo Windows, Linux y macOS.

En cuanto a la contextualización del texto, podrías utilizar técnicas de procesamiento de lenguaje natural para identificar el idioma en el que se está escribiendo, así como la presencia de palabras clave que indiquen el uso de ciertas aplicaciones o la navegación por ciertos sitios web. También podrías registrar la actividad del portapapeles para identificar si el usuario está copiando y pegando texto desde una aplicación específica.
22  Programación / Java / Re: Código de clases UML en: 17 Abril 2023, 10:22 am
En cuanto a los métodos de la clase CursoPropio, deberías pensar en qué acciones se podrían realizar con un objeto de esa clase. Algunos métodos que podrías implementar podrían ser:

getters y setters para todos los atributos de la clase (por ejemplo, getId(), setId(String id), getNombre(), setNombre(String nombre), etc.).

addMatricula(Matricula matricula) y removeMatricula(Matricula matricula), para añadir y eliminar matrículas de la lista _matriculas.

addMateria(Materia materia) y removeMateria(Materia materia), para añadir y eliminar materias de la lista _materias.

matricularAlumno(Alumno alumno, Date fecha) y desmatricularAlumno(Alumno alumno, Date fecha), para matricular y desmatricular alumnos en el curso.

setEstado(EstadoCurso estado) y setTipo(TipoCurso tipo), para establecer el estado y el tipo del curso.

calcularCosteMatricula(), para calcular el coste total de las matrículas en el curso.

En cuanto a las relaciones entre clases, deberías añadir atributos en cada clase para representar las relaciones definidas en el diagrama UML. Por ejemplo, en la clase Profesor, podrías añadir un atributo _cursosImpartidos de tipo List<CursoPropio> para representar la relación "imparte" con la clase CursoPropio. En la clase CursoPropio, ya tienes algunos atributos que representan relaciones, como _director y _secretario, que son objetos de la clase ProfesorUCLM.
23  Programación / Java / Re: Como reproducir MP4 desde un archivo de expansión OBB en Android en: 17 Abril 2023, 10:20 am
Para reproducir un archivo de vídeo MP4 desde un archivo de expansión OBB en Android, puedes utilizar la clase ZipResourceFile de la biblioteca APK Expansion de Google para acceder al archivo de vídeo y luego reproducirlo utilizando la clase MediaPlayer.

Aquí tienes un ejemplo de cómo podrías hacerlo:

Importa las siguientes clases:

Código:
import com.google.android.vending.expansion.zipfile.APKExpansionSupport;
import com.google.android.vending.expansion.zipfile.ZipResourceFile;
import java.io.IOException;

En tu método onCreate(), añade el siguiente código para acceder al archivo de expansión y abrir el archivo de vídeo:

Código
  1. try {
  2. ZipResourceFile expansionFile = APKExpansionSupport.getAPKExpansionZipFile(this, 2, 0);
  3. AssetFileDescriptor afd = expansionFile.getAssetFileDescriptor("Test.mp4");
  4. MediaPlayer mp = new MediaPlayer();
  5. mp.setDataSource(afd.getFileDescriptor(), afd.getStartOffset(), afd.getLength());
  6. mp.prepare();
  7. mp.start();
  8. } catch (IOException e) {
  9. e.printStackTrace();
  10. }

En este ejemplo, "Test.mp4" es el nombre del archivo de vídeo que se encuentra en el archivo de expansión OBB.
24  Programación / Java / Re: Conexión A SQL Server: Drivers Óptimos en: 17 Abril 2023, 10:18 am
Para conectarse a SQL Server 15.0.2095 desde Java, se recomienda utilizar el driver JDBC "Microsoft JDBC Driver for SQL Server", que es el driver oficial de Microsoft para SQL Server.

Puedes descargar el driver desde la página de descargas de Microsoft JDBC Driver for SQL Server:
https://www.microsoft.com/en-us/sql-server/sql-server-downloads

Asegúrate de seleccionar la versión correspondiente de acuerdo a tu sistema operativo y la versión de Java que estás utilizando.

En cuanto a la cadena de conexión, la sintaxis es la siguiente:

Código:
jdbc:sqlserver://<server>:<port>;databaseName=<databaseName>;user=<username>;password=<password>

Donde:

<server>: es el nombre del servidor o la dirección IP.
<port>: es el número de puerto (por defecto es 1433).
<databaseName>: es el nombre de la base de datos a la que deseas conectarte.
<username>: es el nombre de usuario de la cuenta que se utilizará para la conexión.
<password>: es la contraseña de la cuenta que se utilizará para la conexión.

Por ejemplo:

Código:
String connectionUrl = "jdbc:sqlserver://localhost:1433;databaseName=MiBaseDeDatos;user=sa;password=MiPassword";
25  Programación / Java / Re: Como Importar modulo/librería zip_file en Android Studio en: 17 Abril 2023, 10:17 am
Para importar las librerías zip_file y downloader_library en Android Studio, sigue los siguientes pasos:

1. Haz clic en "File" (Archivo) en la barra de menú superior de Android Studio.

2. Selecciona "New" (Nuevo) y luego "New Module" (Nuevo Módulo).

3. Se abrirá una ventana emergente, selecciona "Import .JAR/.AAR Package" y haz clic en "Next" (Siguiente).

4. En la siguiente pantalla, haz clic en "Browse" (Buscar) y busca el archivo .aar que deseas importar (en este caso, el archivo a buscar será "play_licensing.aar" o "play_apk_expansion.aar" dependiendo de lo que necesites).

5. Haz clic en "Finish" (Finalizar) y la librería será importada a tu proyecto.

Si por alguna razón aún no puedes ver las carpetas después de la importación, asegúrate de que el proyecto no está en modo "Android" en la vista de proyecto. Si lo está, cambia a "Project" (Proyecto) en la barra de navegación de la vista de proyecto para ver todas las carpetas y archivos de tu proyecto.
26  Programación / Java / Re: Java mvc cargar tabla en: 17 Abril 2023, 10:15 am
Para separar totalmente la vista del modelo en un programa en modo MVC en Java, te sugiero que hagas lo siguiente:

1. Crea una clase que se encargue de manejar la lógica de negocio o modelo, por ejemplo, llamada ComunidadModel.

2. En ComunidadModel, crea un método que devuelva los datos que quieres mostrar en la tabla, por ejemplo, llamado getDatosTabla() que devuelve una lista de objetos.

3. Crea una clase que se encargue de la vista, por ejemplo, llamada ComunidadView.

4. En ComunidadView, crea una instancia de JTable y asigna un objeto DefaultTableModel creado a partir de los datos que se obtienen del modelo a través del método getDatosTabla().

5. En la clase Controlador, crea una instancia de ComunidadModel y otra de ComunidadView, y llama al método getDatosTabla() del modelo para obtener los datos, y luego asigna estos datos al objeto DefaultTableModel de la vista.

6. Usa el método setModel() de JTable para asignar el objeto DefaultTableModel creado en la vista a la tabla creada en la vista.

7. Llama al método show() de ComunidadView para mostrar la vista en la pantalla.

De esta manera, la vista no tiene conocimiento directo del modelo, y la lógica de negocio está completamente separada de la vista.
27  Programación / Java / Re: Duda sobre COLORES en JLIST en: 17 Abril 2023, 10:14 am
Para poner un color permanente a una celda específica en una JList, puedes crear un modelo de lista personalizado que extienda DefaultListModel y anular el método getListCellRendererComponent para devolver un componente de celda personalizado que tenga un color de fondo diferente para la celda deseada. Aquí hay un ejemplo de cómo hacerlo:

Código
  1. import java.awt.Color;
  2. import java.awt.Component;
  3.  
  4. import javax.swing.DefaultListModel;
  5. import javax.swing.JFrame;
  6. import javax.swing.JList;
  7. import javax.swing.JScrollPane;
  8. import javax.swing.ListCellRenderer;
  9.  
  10. public class ColoredJListDemo extends JFrame {
  11.  
  12.    private static final long serialVersionUID = 1L;
  13.  
  14.    public ColoredJListDemo() {
  15.        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  16.        setTitle("Colored JList Demo");
  17.  
  18.        // Crea un modelo de lista personalizado con algunos datos de ejemplo
  19.        DefaultListModel<String> model = new DefaultListModel<String>();
  20.        model.addElement("Item 1");
  21.        model.addElement("Item 2");
  22.        model.addElement("Item 3");
  23.  
  24.        // Crea una lista personalizada que use el modelo personalizado y el renderizador personalizado
  25.        JList<String> list = new JList<String>(model);
  26.        list.setCellRenderer(new ColoredListCellRenderer(1, Color.YELLOW)); // La celda 1 se muestra con un color de fondo amarillo
  27.  
  28.        // Agrega la lista a un panel de desplazamiento y lo agrega al marco
  29.        JScrollPane scrollPane = new JScrollPane(list);
  30.        getContentPane().add(scrollPane);
  31.  
  32.        // Establece el tamaño y la posición del marco y lo muestra
  33.        setSize(200, 200);
  34.        setLocationRelativeTo(null);
  35.        setVisible(true);
  36.    }
  37.  
  38.    // Renderizador personalizado que establece el color de fondo de una celda específica
  39.    private static class ColoredListCellRenderer implements ListCellRenderer<String> {
  40.  
  41.        private int targetIndex;
  42.        private Color backgroundColor;
  43.  
  44.        public ColoredListCellRenderer(int targetIndex, Color backgroundColor) {
  45.            this.targetIndex = targetIndex;
  46.            this.backgroundColor = backgroundColor;
  47.        }
  48.  
  49.        @Override
  50.        public Component getListCellRendererComponent(JList<? extends String> list, String value, int index,
  51.                boolean isSelected, boolean cellHasFocus) {
  52.  
  53.            Component component = list.getCellRenderer().getListCellRendererComponent(list, value, index, isSelected,
  54.                    cellHasFocus);
  55.  
  56.            if (index == targetIndex) {
  57.                component.setBackground(backgroundColor);
  58.            }
  59.  
  60.            return component;
  61.        }
  62.  
  63.    }
  64.  
  65.    public static void main(String[] args) {
  66.        new ColoredJListDemo();
  67.    }
  68.  
  69. }

En este ejemplo, el método getListCellRendererComponent devuelve el componente de celda predeterminado obtenido a través de list.getCellRenderer().getListCellRendererComponent y establece el color de fondo en backgroundColor si la celda actual es la celda objetivo (índice 1 en este caso). Luego, agrega el componente de celda modificado al modelo de lista personalizado para su uso en la lista.
28  Programación / Java / Re: Sigo un curso que usa NB antiguio y me da problemas. en: 17 Abril 2023, 10:11 am
Es posible que la versión más reciente de NetBeans tenga algunas diferencias en la forma en que se manejan ciertas características, lo que podría causar que las instrucciones del curso no funcionen correctamente.

Sin más información: usando la misma versión que el curso.
29  Seguridad Informática / Hacking / Re: Hacking RFID con proxmark3 Easy en: 17 Abril 2023, 10:09 am
En teoría, debería ser posible reprogramar automáticamente un rango seleccionado de bloques utilizando el comando "hf mf wrbl" del Proxmark3 Easy. Este comando permite escribir en un bloque específico de una tarjeta RFID Mifare Classic. Para escribir en varios bloques a la vez, se puede utilizar un script en el lenguaje de programación Lua.
30  Foros Generales / Sugerencias y dudas sobre el Foro / Re: me han hackeado la pc con un formateando los archivos en qqlc en: 17 Abril 2023, 10:06 am
En general, los archivos con la extensión .qqlc son un tipo de ransomware conocido como Qlkm, que cifra los archivos del sistema y luego exige un pago para su recuperación.

En cuanto a la recuperación de los archivos, si no tienes una copia de seguridad previa de los mismos, las opciones para recuperarlos son limitadas. Algunas herramientas de recuperación de datos pueden funcionar en algunos casos, pero no hay garantías de que puedan recuperar todos los archivos.
Páginas: 1 2 [3] 4 5 6 7 8 9 10 11 12
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines