• Martes 3 de Junio de 2025, 10:33

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - JuanK

Páginas: 1 ... 132 133 [134] 135 136 ... 231
3326
C/C++ / Re: Un Verdadero Reto
« en: Jueves 16 de Junio de 2005, 21:17 »
ummm
pero el modulo 4 dice que es en java.... o me equivoco?

3327
C/C++ / Re: Un Verdadero Reto
« en: Jueves 16 de Junio de 2005, 21:15 »
umm ya veo
le hechare un vistazo a ver que decido  :)

3328
C# / Re: Discusion:
« en: Jueves 16 de Junio de 2005, 20:54 »
Citar
Reitero sin intencion de molestar, la finalidad de este programa no es generar animaciones, y el ke se vea que se pintan linea por linea en pantalla es mas culpa del GDI+ pues está usando FillRectangle para pintar los puntos.

Nuevamente en desacuerdo, como cres que funciona el panit? adivina...con el gdi+ de hecho todo cuanto vez del sistema de ventanas de windows usa el GDI+ y nunca veraz que suceda eso, realmente es problema es la programacion.

Citar
Aqui si no entendi muy bien, pero lo que se me fiura que pensaste es que puedes sin ningun problema pasar del backbuffer al frontbuffer sin calculo alguno, simplemente indicando las coordenadas left/top origen-destino, utilizando un BitBlt, DrawImage o un memcpy, pero eso no es razon de procesamiento extra. El problema es cuando hay que calcular las coordenadas de la entrada del mouse del usario, en el area de dibujo y convertirlos al origen, para luego pasarlo al backbuffer; lo cual es precisamente lo que digo que se está ahorrando.

bueno es cierto que ahorra un tiempo pero es despreciable a cmabio del costo que implica pasar repetidamente por el DMA para enviar los datos a la memoria de video, ya que es mucho mas rapido hacer un solo viaje con un bloque de datos por DMA que hacer muchos viajes con pequeños segmentos.

Citar
Por otro lado, si no vas a mostrar animaciones (ni un solo cambio de texto, redibujado, etc.) no tiene caso utilizar el backbuffer. Pues no se necesita borrar la pantalla para redibujar en ella, a final de cuentas nada ha cambiado, por lo tanto si no hay animacion no hay redibujado(o no tiene porque haber) programado (solo el de hardware), y como no hay movimiento tampoco puede notarse el barrido generado por el refresco vertical.

Al usar backbuffer no se nceesita borarr la pantalla, solo se remplazan los datos que estan en ella y por otro lado el dibujar un circulo en un buffer y luego pasarlo a la pantalla no implica que se redibuje toda la pantalla sino solo el area donde esta el circulo.
Código: Text
  1.  pues la unica forma de acceder al buffer blockeado es a travéz de punteros y funciones de memoria (memcpy,zeromemory, etc),
  2.  

lo que pasa es que funciones como las que has mencionado, y de ehco cualquier operacion tenga o no tenga punteros... es hecha a travez de la api, el compilador convierte el codigo en llamados a la API que le autorizan o no una transaccion en memoria por ello cuando con un puntero vas por una locacion de memoira no asiganda te sale el mensaje de error del sistema (sea linux o windows) diciendo que hay una infraccion de acceso ya que es el propio sistema quien determina si se puede o no hacer algo en una locacion de memoria.

3329
C/C++ / Re: Archivo Binario Como Secuencial? :s
« en: Jueves 16 de Junio de 2005, 18:04 »
BINARIO NO IMPLICA ILEGIBLE!  :ph34r:

binario , aleatorio o secuencial solo es la manera en que se leen o escriben los datos en el archivo, pero por ejemplo un archivo de texto no importa como lo escribas si secuencial, binario o aleatorio siempre sera legible pues es la misma informacion ...!!!

Si lo que quieres es hacer ilegible o parcialmente eilegible la informacion de un archivo tienes muchas opciones...

1- si los datos son numericos guardalos y leelos del archivo como datos int no como cadenas
2- si son datos mixtos es dectir hay texto y hay numeros, dberas aplicar un algritmo que guarde los datos en un fromato ilegible para el usuario y otro que lea los datos y los haga legibles para la aplicacion.

es decir si la info es:

ABC

podrias hacer un algoritmo para que en el archivo se guarde algo diferente, podrias por ejemplo hacer un algoritmo que te convierta eso en cualquier cosa:
152

y tener en el programa un algoritmo que interprete ese 152 como ABC

3330
C/C++ / Re: Archivo Binario Como Secuencial? :s
« en: Jueves 16 de Junio de 2005, 17:31 »
*  El acceso binario, que permite almacenar y tener acceso a los datos de un archivo de cualquier tipo, resulta especialmente útil para los campos de longitud variable.
    * El acceso aleatorio, que permite almacenar y tener acceso a la información, por ejemplo de los registros, que se suponen idénticos en longitud.
    * El acceso secuencial, por último, que permite leer y escribir cadenas en archivos de texto.


como vez un archivo de texto escrito en binario o de manera secuancial... sigue siendo el mismo archivo de texto, no sera asi si un archivo binario (ejemplo: un exe) es copiado como secuencial porque seguramente se dañara.

3331
C/C++ / Re: Saber Que Tiene La Variable
« en: Jueves 16 de Junio de 2005, 16:06 »
umm no veo muy bien...

debes primero que todo hacer un replace del valor, es decir en la cadena que tiene la ecuacion hay que remplazar la variable por el numeor ingresado, luego debes tu mismo hacer el analizador de la sintaxis determinando que cosas son operadores y que cosas son identificadores, luego de acuerdo a esto realizas las conversiones de cadena a numero y finalmente de acuerdo a los operadores que tengas entre si vas haciendo las operaciones entre un numero y otro.

3332
C# / Re: Discusion:
« en: Jueves 16 de Junio de 2005, 14:47 »
Citar
Aqui estas totalmente en lo cierto... si se tratase de un programa que presentara animaciones, pero este no es el punto

si es una animacion.. es el mismo principio pues al estar escribiendo pixeles directamente en pantalla se ve como se van pintando linea a linea.

Citar
y al estar esperando la entrada del usuario, se presenta mayor carga al procesador pues es necesario calcular las transiciones al punto origen y de vuelta a la pantalla; no es que sea algo complicado, de hecho es trivial, sin embargo se lo está ahorrando sin ningun problema. Pero obviamente el cuello de botella no es el uso directo de la pantalla, esta en otro lugar.
 

Estas seguro?, yo te puedo asegurar que no es asi, y menos en una aplicacion que corre en modo ventana.

Citar
Aquí creo que no fui lo suficientemente claro, con flickering me referia al parpadeo que se ve cuando se hace el movimiento de la imagen con los botones designados, para lo cual si funcionaria el double buffer. Sin embargo para poder utilizar el retrazo vertical (VZYNC) necesitas utilizar el double buffering, y como dije antes, no seria de mucha ayuda, pues no es un programa que presente animaciones, a demás el flickering(ahora si) es mas visible en pantalla completa.

Si lo fuiste y te reitero, la tecnica de double buffer ayuda a disminuir el efecto de flicker pero no lo elimina y en graficos grandes se sigue haciendo notorio.
Parece que estas muy confundido, el efecto de flicker no se genera por solo tener una animacion y no tiene nada que ver con los botones ni del teclado ni del mouse ni del joystick, dehecho puedes tarr dibujando siempre el mismo cuadro en pantalla y tendras el efecto de flicker sin necesidad de animarlo ni d relacionarlo con ningún botón ni cosa parecida.

Citar
En esto estas equivocado, pues con directx y su interfaz de directdraw(que ya no se llama asi), puede hacerse un lock del buffer de la pantalla y accesarlo directamente como si se tratase de una matriz de bytes y escribir o leer de ella como con cualquier otro arreglo.

Bueno yo se que DirectDraw fue Deprecado y hasta la version de enero aun existia, lo remplazaron? que se usa ahora? respecto a lo de interfaz DirectDraw no es una interfaz. Tienes razon en lo del lock del buffer de pantalla pero realmente cuando haces esto es directX quien se encarga de enmascarar todo y realmente no estas accediendo directamente a la memoria de video sino que DX enmascara su uso de esta manera pero por debajo debe de igual manera pasar por la capa de abstraccion de hardware usando llamadas de bajo nivel en la API.


Bueno no te habia visto por aqui y aprovecho para decir que eres bienvenido, se ve que tienes buenos conocimientos del tema y nos pueds ser a todos de mucha ayuda.

3333
Visual C++ / Re: AtenciÓn: C++ Y Registro De Windows
« en: Jueves 16 de Junio de 2005, 14:32 »
ABRES CUALQUIER CARPETA,
seleccionas menu herramientas opciones
entras a la pestaña de

tipos de archivo, selecionas nueva... alli matriculas o creas la extencion que usas y la asocias a la accion open con el programa que necesitas, inclusi puedes hacer pruebas y luego buscar en el registro loo que colocaste para luego poder insertar la llave desde proramacion.

3334
C++ Builder / Re: Archivo Txt A Base De Datis
« en: Jueves 16 de Junio de 2005, 14:23 »
crea una conexion  ODBC con access luego usa las librerias para conexion ODBC y vas leyendo del archivo con las funciones de manejo de archivos, con lo que vas leyendo creas sentebncias insert y las direccionas al ODBC.

3335
Dudas informáticas / Re: Ayuda_pantalla Y Duda
« en: Jueves 16 de Junio de 2005, 14:22 »
bajate el antispywrea de microsoft, para spyware es el mejor.
http://www.microsoft.com/downloads/details...&displaylang=en

lo del svhost es normal pues aunque pareceria ser el mismo proceso, reslmante son procesos diferentes, es decir ese proceso tiene infinidad de variantes que hacen que haga cosas diferentes , asi que es totalmente normal.

3336
C# / Discusion:
« en: Jueves 16 de Junio de 2005, 06:30 »
Bueno lamento contradecirte..
Citar
Hola, el programa no necesita utilizar doble buffer para correr mas rapido, de hecho eso lo haria mas lento y al ser un sistema para dibujo directamente lo haría un poco mas complicado de programar y por lo tanto aumentaría la cantidad de instrucciones para realizar el mismo trabajo.

En esto estas totalmente equivocado, es mas rapido dibujar todo en memoria y luego hacer transferencia en bloque que hacer transferecia directa puto a punto (copia direta a memoria visible)
Citar
Si bien el doble buffer eliminaría el flickering, tambien se puede obtener ese efecto de otras maneras como utilizando máscaras XOR

El double buffer no ayuda mucho a lo del flickering, para esto es mejor conplementarlo con lo del retrazo vertical.
Citar
, pero como se ve en el código está utilizando las librerias GDI+ de .NET Framework por lo tanto no soporta esa función raster. Aunque bien podría utilizar SetPixel del GDI de windows, como está utilizando el GetPixel, y así aumentará el rendimiento. La mejor forma para aumentar el rendimiento del programa es utilizar la memoria directamente, pero eso es otro cuento...

En parte cierto, pero en realidad ningún sistema derivado de win32 permite usar la memoria directamente, lo más rapido seria usar la api de directX la cual evita pasar por el ciclo de mensajes de ventanas del GDI y permite usar las implementaciones de hardware a travez de las apis de bajo nivel de windows. o biien usar una version reciente de openGL

3337
Dudas informáticas / Re: Ayuda_pantalla Y Duda
« en: Miércoles 15 de Junio de 2005, 21:56 »
Citar
net1tprf.exe
No lo se , posible virus o spyware,
lo del mouse:

Inicio, panel de control, Mouse
luego pestaña rueda ( wheell) incluso revisar el software que viene con el mouse (en caso de que lo haya), alli aumentas el numero de lineas recorridas por segmento de rueda.

3338
C/C++ / Re: Un Verdadero Reto
« en: Miércoles 15 de Junio de 2005, 21:33 »
ok, para dejar este reto debes enviarme la solucion del mismo a mi mail personal:

juank.ruiz@gmail.com

Si lo tienes ya hecho enviamelo y asi podremos iniciar el reto, de esta manera evitamos que sea alguien que quiera que le hagan la tarea VERDAD?

La verdad esta demasiado sencillo como para ser un reto, si te fijas los demas retos que hay en este foro son de lejos mucho mas retos que el que has colocado.

Por otro lado debes cumplir un minimo de requisitos para colocar un reto:

1-definir el problema
2-diagrama o ejemplo que muestre la salida esperada de acuerdo a las entradas que reciba el programa.
3- fijar un plazo para el reto
4- a discrecion del moderador ( o sea yo) enviar el fuente o bien el programa compilado que haga lo que tu dices. No puedes colocar retos que tu mismo no los hayas resuelto ya, pues hay mucho vivo que quiere es que le hagan la tarea haciendo pasar ejercicios simples como si fueran retos, y por otro lado tambien debo controlar que no hayan retos sin solucion y asi evitar que los programadores pierdan su tiempo.

3339
C++ Builder / Re: Enviar Y Recibir Cualquier Archivos
« en: Miércoles 15 de Junio de 2005, 19:09 »
hola, ya te respondi más atras, todo tanto el envio del archivo como el envio del nombre del archivo y etc.. debe hacerse a traves de los sockets.

3340
C++ Builder / Re: Resolucion Pantalla
« en: Miércoles 15 de Junio de 2005, 19:08 »
para acceder a la resolucion de la pantalla debes usar la api de windows y lo de la reubicacion... ni idea no se si c++ tanga cosas como los layout de java o como los dock de c#.

3341
C++ Builder / Re: Ayuda
« en: Miércoles 15 de Junio de 2005, 19:06 »
lo debes usar a travez de la API de windows haciendo so de WIA (windows image adquisition)

3342
C++ Builder / Re: Urgente -propiedades De Un Archivo
« en: Miércoles 15 de Junio de 2005, 19:04 »
bueno a traves de socket envias datos como el nombre del archivo y el path donde deseas guardarlo , y tambien a traez de sockets vas enviando el archivo por partes y luiego lo armas en el otro lado.

3343
C++ Builder / Re: Archivo Txt A Base De Datis
« en: Miércoles 15 de Junio de 2005, 19:03 »
depende de la base de datos y de las librerias de conexioncon base de datos que usas.

3344
Visual C++ / Re: Reproducir Fichero De Audio
« en: Miércoles 15 de Junio de 2005, 17:56 »
..?

3345
C/C++ / Re: Relacionar Dos Ficheros De Texto En C
« en: Martes 14 de Junio de 2005, 17:38 »
si ya tienes la idea ;)

3346
C/C++ / Re: Relacionar Dos Ficheros De Texto En C
« en: Martes 14 de Junio de 2005, 14:36 »
debes tener abiertos los tres archivos y a medida que sacas registros de uno, saces los del otro, es decir:

1- buscas la matricula del automovil en el archivo d automoviles
2- con la matricula buscas en el archivo de autos-nif el NIF correspondiente a esa matricula
3- con el nif buscas en la tabla de nif los datos que faltan.

Por supues que hay muchas maneras de hacerlo, todo depende de comoq uieras y del tamaño los archivos, si son pequeños (menos de 2 mb por archivo) lo que puedes hacer  es cargar todos los archivos, cada uno en un array en memoria y luego hacer las busquedas sobre los arrays.

Si quieres algo mas profesional podrias hacer un ordenamiento de datos y usar algoritmos de busqueda.. pero te quitaria mas tiempo.

3347
Dudas informáticas / Re: Win 2003 Server!
« en: Martes 14 de Junio de 2005, 14:32 »
bueno no esta permitido ese tipo de cosas en el foro, sin emabargo lo unico que puedes hacer es buscarte un cark que dudo que lo haya aunque es posible.

3348
Oracle / Re: Ayuda Con El Dbms_transaction.rollback
« en: Martes 14 de Junio de 2005, 14:30 »
Tu no me crees :(


Bueno para que me creas mira el punto 4.2.4.1  del archivo anexo.

3349
C# / Re: Ahora Si Mi Proyecto
« en: Martes 14 de Junio de 2005, 14:19 »
para hacerlo más rapido usa la tecnica de doble buffer,
asi que en el buffer pintas la figura completa y una vez pintada copias el buffer completo a la pantalla, notaras asi un considerable aumento del rendimeinto, si adicionalmente controlas elk barrido de la pantalla obtendras una enorme calidad respecto a lo que tienes ahorita ;)

3350
C/C++ / Re: Relacionar Dos Ficheros De Texto En C
« en: Martes 14 de Junio de 2005, 14:10 »
si ;)

Páginas: 1 ... 132 133 [134] 135 136 ... 231