|
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 ... 209 210 [211] 212 213 ... 231
5251
« en: Martes 10 de Junio de 2003, 14:45 »
bueno, he leio el programa pero la verdad soy muy flojo en c++, de hewcho no tengo ni compilador de c++ y aunque me gustaria aprender, la verda es que ahorita me encuentro muy ocupado con c#, con java y con c..  Por lo menos para que veas que alhuien lo miro...
5252
« en: Martes 10 de Junio de 2003, 14:39 »
En la API de sockets hay una funcion que sirve para enviar archivos directamente , pero la verdad la unica vez qaue la prve no me funciono porque no supe como usarla...
Sin embargo lo otro, es decir lo de linea a linea, no es tanto de linea a linea, sino el tamaño de bufer que quieras enviar.
Si lo haces bien , no tiene porque perder calidad, he hecho varios programas de transmision de archivos, incluso de video y nunca a perdido calidad.
Lo que creo que le paso a tu amigo es que si el dice que lo envio linea a linea, esque manipulo un archivo binario, con funciones para manejar archivos de texto, por eso perdio calidad logicamente, pero en condiciones normales , si haces bien el prgrama, no tendras que perder calidad de nada, eso hay que tener en cuenta los siguientes aspectos:
1-abrir el archivo de manera correcta Si solo vas a enviar archivos de texto lo mejor es que manipules funciones para archivops de texto, sinoi, es decir si vas a utilizar tanto binarios como de texto, lo mejor es que todo lo uses en modo binario. 2-definir el tamaño del buffer Segun las caracteristicas de tu red, el tamaño del archivo, e incluso el ti`po de particion, deberas escojer un tamaño de buffer adecuado, aunque este aspecto solo afecta a nivel de rendimiento, más no de efectividad. 3-Basura en los buffrer al trabajar enviando informacion de un lado a otro, es muy importante serciorarce que el bufefr este limpio siempre, solia trabajar con la funcion memset, pero despues de algunas pruebas con algunos compialdores en linux, me di cuenta que esta funcion deja rartros de basura, asi que es más aconsejable que elabores tu mismo una funcion que llene todo el buffer con caracteres null, antes de efectuar cualquier operacion. 4-armado Este es tal vez el aspecto más critico, porque la mayoria de los errores... como el de tu amigo, que el sonido perdio calidad... se deben al mal ensamblado del archivo en la parte de recepcion... Aunque es bastante dispendioso, es necesario que hagas pruebas pàso por paso y analices el contenido del buffer que se lee del disco, y luego se envia, y en el programa que recepciona, verificar lo que se recibe y lo que se copia.. uno por uno.... Como esto es tan canson, he desarrolado mi propia estartegia y esperoq ue te sirva:
1-Crear un archivo de texto que tenga como minimo el tamaño de tres veces el buffer que se lee, esto con el fin de hacer seguimiento a la primera, ultima e intermedia lectura y correspondiente envio de buffer. 2-La idea es verificar que una vez todos los envios se hagan correctamente, el archivo resultante en el destino, tenga el mismo pero que el archivo de origen, y por supuesto el mismo contenido en informacion. 3-cuando ya hayas efectuado las pruebas satisfactoriamente con archivos de texto pequeños y luego grandes, puedes empezar a hacer sequimiento con los archivos binarios, ya que es más complejo, porque su seguimiento a travez del compilador, se haria con caracteres ilegibles. 4-Prueba interesante, enviar una imagen en formato bmp, primero la envias completa , y al llegar se debe ver OK y el tamaño debe ser identico al de la original. 5-enviar la misma imagen, pero solo la mitad, si todo estabien debe llegar una imagen de exactamente la mitad de la original, y se debe ver absolutamente legible hata la mitad y en el resto un cuadro de color gris o negro o incluso blanco.
Espero que estos consejos te hayan sido de ayuda.
Juank
5253
« en: Martes 10 de Junio de 2003, 14:14 »
no tengo claro si tu program,a es en c o en c#, porque si es en c, te equivocaste de foro.
Juank
5254
« en: Lunes 9 de Junio de 2003, 13:59 »
Si te puedieras expllicar mejor... lo que pasqa es que no se entiende que es lo que necesitas.
Juank
5255
« en: Viernes 6 de Junio de 2003, 14:49 »
si tu pregunta es de programacion en lenguaje c: utiliza:
unlink Syntax #include <unistd.h> int unlink(const char *file);
Description This function removes a le from the le system.
Return Value Zero on success, nonzero on failure.
Example unlink("data.txt");
2 Si hablas de borrar , o mejor remover un directorio en windows, utiliza el comando rd o si vas a borrar un arbol de directorios , con el comando deltree
Juank
5256
« en: Viernes 6 de Junio de 2003, 14:10 »
Hasta el momento no he trabajado esta parte con c#, solo he trabajado ejercicios por consola y con directx, sobre todo la parte conceptual...(es decir implementaciones con el animo de aprender conceptos avanzados)- No hetrabajado aun con formularios... tal vez en el futuro.
Juank
5257
« en: Viernes 6 de Junio de 2003, 14:07 »
Trata de hacerlos y te ayudo con la dudas.
Juank
5258
« en: Viernes 6 de Junio de 2003, 14:06 »
Hola, creo que ya debes haber comenzado conesto y quisiera saber si has tenido problemas con la implementacion, para poderte colaborar.
Juank
5259
« en: Viernes 6 de Junio de 2003, 14:01 »
En efecto este comando no elimina carpetas ni archivos, este comando elimina procesos.. bvoy a averiguar...
Juank
5260
« en: Viernes 6 de Junio de 2003, 03:53 »
Listo, hasta hoy que tuve algo de tiempo, porque tenia mucho trabajo, pero bueno... Te anexo lo que llevo, que es lo que te mostre la otra vez para crear las lista de archivos y lo nuevo que es que ya busca los include con " o sea los de los archivos propios y los guarda en un archivo de texto, agrupados por archivo. La funcion que te pase de la busqueda de archivos la otra vez, debes revisarla porque se totea con listas extremadamente grandes con listas normales funciona ok. No tengo mucho tiempo para documentar, asi que espero que ya hayas entendido como se hacia lo de la bhusqueda de archivos porque la funcion, o mejor las funciones de crear la lista y grabar los include no estan documentadas, hasta ahora las acabe y se que las necesitas de afan. ..Estyasmo hablando si me queda tiempo para ayudarte más , con gusto.. me debes una bien grande porque son las 9:pm aca y todavia estaba con tu programa, y eso que trabajo de 6:30 am a 4pm...creo que me convertire en angel si me sigo sacrificando tanto..  Por cierteo no estaba nada facil, más aun teniendo en cuenta que algunos includes pueden ir con espacio #include "dfe" y otros sin espacio #unclude"jnhj" es se ncilla la solcion pero para deducirla me tome casi toda la tarde. Cualquier duda me cuentas.. animo, que ya no falta nada para acabatr, porque con base en esta funcion , puedes sacar las de los defines. Juank
5261
« en: Jueves 5 de Junio de 2003, 16:39 »
No se si todavia necesites la ayuda.. me cuentas porfa...
5262
« en: Jueves 5 de Junio de 2003, 15:10 »
Debes trabajar una lista doblemente enlazada: Estructura Propuesta: struct info { char nombre[15]; int tipo; long precio; int cantidad; struct info *siguiente; struct info *anterior; };
*Los campos alfabéticos no permitirán números. *Los campos numéricos no admitirán alfabeticos Para estos dos items deberas utilizar la funcion kbhit, o tambien la bioskey, para utilizarlas deberas colocar el encabezado bios.h, dos.h Son faciles de usar porque te devuelves, seguin como las uses, el valor ascii de la tecla presionada. Lo de los menus, ...mejor hazlos a lo tradicional, es decir colocas en pantalla las opciones y sale, porque sino no vas a acabar nunca,,ver este link ( http://foros.solocodigo.com/viewthread.php?tid=3935 ) Para el mouse reviza este link: http://www.geocities.com/programacion_g ... /raton.htmno es muy dificil Bueno espero que te sea de ayuda, con esto ya puedes comenzar. Juank
5263
« en: Jueves 5 de Junio de 2003, 14:37 »
Como seguramente debes de estar utilizando turboc...
Tienes que recurrir a las interrupciones del sistema, y guardar informacion en diferentes lugares de la memoria de video.
1-Lo primero es acftivar la interrupcion que te permite manejar el raton en modo texto. 2-Despues diseñar una funcion que ye capture una parte de la pantalla y la guarde en algun lugar de la memoria de video 3-otra funcion para restablecer esta parte de la pantalla en su lugar.
Para que???
Porque para el menu necesitas primero determinar en que poscion de la pantalla se efectuo el click del mouse, una vez hecho esto necesitas dibujer el menu..esto lo haces simplemente con las funciones de textbackground y printf, lo mas recomendable es que diseñes una funcion que te dibuje un cuadro de menu con sus correspondientes elementos.
pues bien resulta que el menu se dibuja en pantalla y borra lo que estaba antes, para recuperarlo debes antes de dibujar el menu, guardar lo que se ve en esa posicion y despùes de dibujar el menu y utilizarlo, deberas volver a colocar lo que guardaste , en pantalla y en la pocicion correcta... Es un verdaero trabajo de hacer...
Para mayor y detallada referencia puede dirigirte al libro "lenguaje c para expertos" que sino estoy mal es de helbert schild.
Por obvias razones no anexo nada de codigo, porque para la muestra , en el libro gastan aproximadamente el 25 % en enseñar y diseñar estas funcines...no es que sean dificiles, pero si estas aprendiendo, te pareceran abismalmente complejas.
Suerte y que te rinda.
Juank
5264
« en: Jueves 5 de Junio de 2003, 14:21 »
debes tener una libreria de explrer dañada, debes actualizar la version de internet explorer para que la librereia sea renovada, outlook express viene incluido en el paquete de instalacion de expolorer, y deberas actuvar la casilla de verificacion de su instalacion, durate la ejecucion del programa de setup.
La razon por la que otros usuarios de tu red puedenm usarlo, es que aunque ejecuten un archivo que se encuientr en otro equipo, lo cierto es que el ejecutable no se ejecuta en el otro equipo, sino que corre a njivel local, es decir donde se es invocado, asi que el ejecutable del outlook llama las librerias del equipo donde es ejecutado, sin importar su ubicacion fisica, la uinica manera de ejecutar via red un programa en otro equipo es a travez de los servicios de consola remota o mejor de treminal remota, como lo son el terminal server de win2000, o el traidiocnal telnet o el ssh de linux.
1-debes verificar que tu memoria virtual sea como minimo equivalente a 1.75 veces tu cantidad de memoria fisica. 2-verificar que el espacio libre en disco sea como minimo 100 mb en windows 98, me o nt , y en versiones superiores mejor que el espacio libre supere los 200 mb 3-verifica que no esten corriendo tareas desconocidas, estolo puedes verificar desde el administrador de tareas en la ficha de procesos, si hay algo que no deberia estar terminalo entyaes de realizar la instalacion 4-consigue alguna herramienta para limpiar el registro y en especial la lista de tareas al cargar el inicio, una muy buena es el regcleaner. 5-instalalo y seguramente problema solucionado
Cabe advertir que si tu sistema es win 98 o 95.. mejor formatea la maquina e istalale algo como 2000 o XP o si es muy vieja la pc entonces NT, porque son muchisimo mas estables.
Juank
5265
« en: Jueves 5 de Junio de 2003, 02:40 »
ya solucione el problema, y ya estan actualizados tanto el ejecutable como el codigo fuente.
Juank
5266
« en: Jueves 5 de Junio de 2003, 02:37 »
esta muy bien , pero no es mi estilo aprender con gamemakers, de todos modos en un futuro le hechare una ojeada, has recopilado muy buena informacion.
Gracias
Juank
5267
« en: Jueves 5 de Junio de 2003, 02:31 »
debes escoger segun:
1-lo que quieras hacer 2-lo que seas capaz de hacer 3-lo que sepas hacer 4-lo que quieras aprender
Deberias probar los dos a ver cual te gusta más , eso si , si vas a hacer algo serio ninguno de los dos es tan sencillo como parece.. tienes que esforzarte por aprender, y tener el criterio y la valentia suficiente para aprender a manejar los 2 y tu mismo tomar tu propia desicion.
Juank
5268
« en: Miércoles 4 de Junio de 2003, 16:04 »
random funciona sin randomize. lo que pasa es que si no usas randomize, siempre se generaran los mismo numeros aleatrorios(que ironico), si utilizas randomize generas una nueva semilla aleatoria para que se generen los numeros, y si lo haces de esta forma:
randomize(time());
se generaran siempre numeros aleatorios diferentes dependiendo de la hora...
Juank
5269
« en: Miércoles 4 de Junio de 2003, 15:43 »
bueno.. encontre este fallo en la aplicacion: El archivo de configuracion es guardado en la carpeta Bitmops, pero si no existe lo guarda en el directorio local.. hasta ahi todo va bien... el problema es que cuando lo carga, solo lo carga de la carpta bitmaps, y sino existe no lo carga, entinces si alguardar los cambios esto se hizo en el directorio local, luego no podran ser recuperados....porque la funcion de carga solo carga desde la carpeta bitmaps. El error es este: Archivo GameWork.c Funcion load_config_jk linea 275 detalle... if((fp = fopen("Bitmapsconfig.jk","r+"))!=NULL) {
Tratare de corregirlo esta noche. Nota: aprovecho para pedir disculpas porque el codigo fue identado en el VC+.NET, y al pasarlo a un archivo de texto, algunas identaciones quedan corridas, la unica manera de que se vean 100% bien es abriendo en el VC++.NET, aunque buscare una manera de corregir esto. Juank
5270
« en: Miércoles 4 de Junio de 2003, 13:55 »
Estas trabajando c# en turbo c???? creoq ue hiciste la pregunta en el foro equivocado.. s no ser que si se pueda en turboc y yo hasta ahora me entere.
Juank
5271
« en: Miércoles 4 de Junio de 2003, 00:29 »
He actualizado el link de 007 que estaba fallando.
JuanK
5272
« en: Miércoles 4 de Junio de 2003, 00:26 »
en el text box donde escribes, justo antes de iniciar el sleep, cambiale la propiedad . no me acuerdo si es
disable(); , o si es setEnable(false);
y despues de terminar el sleep la restableces:
setEnable(true); o sino enable();
Esta propiedad la tienen casi todos los controles , y restringe o habilita la interaccion del usuario.
Juank
5273
« en: Miércoles 4 de Junio de 2003, 00:18 »
Esa no me la sabia, la voy a intentar gracias...
Juank
5274
« en: Martes 3 de Junio de 2003, 23:31 »
el ejemplo de windows no es el mismo.. lo que pasa es que los lenguajess de tan alto nivel, limitan al programador para trabajar, y cosas muy sencillas consumen mucho mas recursos de los que se requieren...
Porque crees que los sistemas operativos llevan tantos años heciendolos en c y c++.. creo que nunca se va a saber que hagan alguno en vb o en c#.. nisiquiera en java porque sencillamente necesitan siempre de que ya este montado por debajo el OS, linux esta hecho en c 100%..obviamente con algo de assembler..y todas als aplicaiones linux son asi por el estilo, windows esta diseñado actualmente en su mayoria en c++ pero aun tiene cosas hechas en c.
Las aplicaiones a nivel macro, como las que utilizan los mainframes de los bancos estan hechas en c... realmente no he esuchado de la primera de esas hechas en elgo diferente a c, o a cobol...
Los lenguajes de alto nivel son muy buenos y estan muy bien para desarrollar , porque ahorran muchismimo tiempo y las cosas se vuelven muy faciles.. pero a mi modo de verlo, como ingeniero siempre se debe conocer el porque de las cosas, saber como frunciona todo en realidad...cosas tansencillas como la funcion strcpy que se usa en c, resulñtan ser super complejas al mirarlas en assembler y para la mayoria de los usuarios resultan incomprensibles, creo que siempre es necesario que hayamos quienes nos preocupemos por aprender las cosas de fondo y no superficialmente...
La verdad si somos muy escasos... pero muy necesarios... el visual studio.net esta hecho en c, y la mayoria de los compiladores y aplicaciones grandes...
bueno en fin...
hasta luego
Juank
5275
« en: Martes 3 de Junio de 2003, 21:37 »
umm veo que eres bastante principiante.. no deberias estar haciendo estas cosas , sino otra clases de ejercicios màs adecuados para tu nivel de aprendizaje... Lo que hay que hacer es una modificacion sencilla al codigo que pegaste, no te lo doy porque quiero que lo deduscas tu mismo , esa es la unica manera de aprender.
Intenta sacarlo y cualquier cosa me cuentas.
Juank
Páginas: 1 ... 209 210 [211] 212 213 ... 231
|
|
|