• Jueves 28 de Marzo de 2024, 10:36

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 - Escalona

Páginas: [1] 2 3
1
Visual C++ / Informes En Visual C++ 2005
« en: Martes 29 de Abril de 2008, 12:25 »
Buenas estoy desarrollando una aplicacion en Visual C++ 2005 y me gustaria conocer algo sobre la impresion de Informes. Me gustaria usar algo asi como el método Printer de Visual Basic, pero con Visual C++.
Bueno si me pueden aconsejar, les estare muy agradecido.
Un saludo a todos.

2
Visual C++ / Manejar Eventos Vc++ 2005
« en: Jueves 17 de Enero de 2008, 19:26 »
Buenas, a lo mejor la pregunta os parece un poquito tonta, per estoy empezando a programar con Visual C++ y me gustaria saber de que forma puedo manejar los eventos de los controles,por ejemplo estoy interesado en manejar el evento LostFocus, que se usa en VB para las casillas de texto.

Se crear un manejador de eventos para un cuadro de dialogo, y manejar por ejemplo cuando se pulsan botones distintos,  lo unico que quiero saber es si es posible acceder a este tipo de eventos en este lenguaje.
Gracias por vuestra ayuda de antemano.

3
C/C++ / Re: Problemas Funcion Copyfile Del Winapi
« en: Jueves 15 de Noviembre de 2007, 16:56 »
Jajajaja, bueno no me grites muy fuerte, ahora lo entiendo (o eso creo).

La funcion para abrir en OpenDialog Box es "GetOpenFileName()"; ¿no?,
ahora he quitado el CreateFile, y me sirve perfectamente.

Gracias por tu paciencia!

4
C/C++ / Re: Problemas Funcion Copyfile Del Winapi
« en: Jueves 15 de Noviembre de 2007, 16:51 »
Bueno "creo" que no lo habre, ya que me deja manipularlo despues, la cosa es que si elimino la funcion CreateFile , programa deja de  mostrarme el OpenDialog Box y no me serviria.

O sea que segun me dices es mejor dejar el GENERIC_READ, pero cerrarlo cuando termine de cojer el path del fichero, ¿no?.

5
C/C++ / Re: Problemas Funcion Copyfile Del Winapi
« en: Jueves 15 de Noviembre de 2007, 16:33 »
Listo, muchisimas gracias:

Aqui mostraba en Cuadro de Diagolo para seleccionar el archivo del HD, y GENERIC_READ, me habria el archivo.

Código: Text
  1. hf = CreateFile(ofn.lpstrFile, GENERIC_READ,
  2. 0, (LPSECURITY_ATTRIBUTES) NULL,
  3. OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL,
  4. (HANDLE) NULL);
  5.  

Ahora he sustituido el GENERIC_READ por un 0, y no lo habre ahora.
Eso no lo entendia, estoy empezando con la API en C++.

Saludos, y hasta la próxima.

6
C/C++ / Re: Problemas Funcion Copyfile Del Winapi
« en: Jueves 15 de Noviembre de 2007, 16:06 »
Y yo que pensaba que con esa funcion solo obtenia la ruta del fichero, que no lo habría realmente, uso esta funcion para abrir el cuadro de dialogo y seleccionar el fichero:

Código: Text
  1. int openFile(HWND hwnd)
  2. {
  3. //Declaraciones
  4. OPENFILENAME ofn;       // common dialog box structure
  5. //HWND hwnd;              // owner window
  6. HANDLE hf;              // file handle
  7. int i;
  8.  
  9. //Limpia la var.
  10. for (i=0;i<260;i++){
  11.     szFile[i]='\0';
  12. }
  13. // Inicializa OPENFILENAME
  14. ZeroMemory(&ofn, sizeof(ofn));
  15. ofn.lStructSize = sizeof(ofn);
  16. ofn.hwndOwner = hwnd;
  17. ofn.lpstrFile = szFile;
  18. //
  19. // Set lpstrFile[0] to '\0' so that GetOpenFileName does not
  20. // use the contents of szFile to initialize itself.
  21. //
  22. ofn.lpstrFile[0] = '\0';
  23. ofn.nMaxFile = sizeof(szFile);
  24. ofn.lpstrFilter = "Imágenes\0*.JPG;*.BMP\0Videos\0*.AVI\0";
  25. ofn.nFilterIndex = 1;
  26. ofn.lpstrFileTitle = NULL;
  27. ofn.nMaxFileTitle = 0;
  28. ofn.lpstrInitialDir = NULL;
  29. ofn.Flags = OFN_PATHMUSTEXIST | OFN_FILEMUSTEXIST;
  30.  
  31. // Display the Open dialog box.
  32. if (GetOpenFileName(&ofn)==TRUE)
  33.     hf = CreateFile(ofn.lpstrFile, GENERIC_READ,
  34.         0, (LPSECURITY_ATTRIBUTES) NULL,
  35.         OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL,
  36.         (HANDLE) NULL);
  37. return 0;
  38. }
  39.  

¿Como podría cerrarlo despues de tener la ruta?

Mil gracias por tu ayuda.

7
C/C++ / Re: Problemas Funcion Copyfile Del Winapi
« en: Jueves 15 de Noviembre de 2007, 14:30 »
¿Como se usa la funcion GetLastError? Estoy buscando por la red y no veo nada claro.
Código: Text
  1. DWORD err=GetLastError();
  2.  
¿Asi valdría?

Usandolo así el valor que me devuelve es 32  :blink: .

¿Es correcto? Me parece un numero de codigo de error bastante bajito...

8
C/C++ / Problemas Funcion Copyfile Del Winapi
« en: Jueves 15 de Noviembre de 2007, 13:57 »
Buenas, mi cuestion es muy sencilla, de hecho no tarde en encontrar la solucion, pero me esta dando mas problemas de la cuenta el tema.
Bueno, el tema es que necesiaba copiar un archivo de un directorio a otro diferente, entonces encontre la funcion "Copyfile" del Winapi de Windows, perfecto, porque ya usaba el Winapi en otros aspectos de mi aplicacion.

Hasta aqui todo bien, probe la funcion asi
Código: Text
  1. CopyFile("c:\\a.jpg","c:\\carpeta\\bb.jpg",true);
  2.  
y funcionó perfecto.

En este punto fue cuando me decidi a implementarla en mi codigo, lo que queria hacer era sencillo, seleccionaba un archivo de mi disco duro usando el dialogo "openFile" , una vez seleccionado me devolvia la ruta del archivo en la variable "szFile", y con esa ruta ya podría copiar el archivo donde quisiera (o eso pensé yo)
Código: Text
  1.  
  2. HWND hDlg;
  3. openFile(hDlg);
  4. CopyFile(szFile,"c:\\carpeta\\bb.jpg",true);
  5.  
  6.  
Una cosa así es el código que uso, pero para sorpresa mía, no me copia el archivo donde le digo, osea que no hace nada, he comprobado el contenido de "szFile" y es correcto, por lo que nose por donde atacar ya.

Perdón por el tocho, pero prefiero hacer un post largo y explicar bien mi problema.

Gracias de antemano, y espero vuestras sugerencias!!!!

9
Hardware / Re: Parpadeo Monitor Portátil
« en: Viernes 27 de Abril de 2007, 14:42 »
Cita de: "AnioN"
cambia la frecuencia de refresco a 85Hz y fijate si te pasa lo mismo.

Sí, ya lo intenté pero lo más extraño es que me dice que el mayor modo de refresco de monitor está en 60Hz.  :blink:

10
Hardware / Parpadeo Monitor Portátil
« en: Viernes 27 de Abril de 2007, 09:44 »
Hola buenas, tengo un portátil Acer Aspire 5634 WLMi, y me aparece un problema, la maquina es nueva no tiene ni mas de un mes, el caso es que cuando estoy utilizando Freehand, Photoshop, o estoy viendo imágenes de mi disco duro, el monitor me hace un parpadeo bastante extraño, es como si se apagara y volviera a encender. El tema es que lo lleve al servicio tecnico y me dijeron que era que el monitor se refrescaba de esa manera, pero a mi no me parece que sea eso. ¿Que pensais? ¿Será de hardware o de software?¿Que me aconsejais que haga?. Muchas Gracias.

11
Visual C++ / Re: Distribuir Una Aplicacion Vc++ .net
« en: Martes 26 de Diciembre de 2006, 10:51 »
Por fin!! Ya me rula, el problema estaba en eso, que intentaba distribuir la version de debug... el vcredist lo tenia instalado, pero hasta que no le distribui la version release como tu bien me dijiste no rulaba, ahora ya toca testear la app.

Muchas gracias por la ayuda. Y si alguien se encuentra con este error ya sabe...
   a ) Instalar el vcredist_x86.exe.
   b ) Compilar la aplicacion en modo release.

Y listo.

12
Visual C++ / Re: Distribuir Una Aplicacion Vc++ .net
« en: Martes 26 de Diciembre de 2006, 10:17 »
Nada sigo sin encontrar solucion, he seguido todos los pasos que me indican en el foro y nada, de ninguna de las maneras, seguire probando por otros links que he encontrado, pero parece bastante jodido...
Cada vez me convencen menos las herramientas de desarrollo de Microsoft...

13
Visual C++ / Re: Distribuir Una Aplicacion Vc++ .net
« en: Viernes 22 de Diciembre de 2006, 13:53 »
Gracias por tu rápida respuesta, el equipo donde quiero ejecutarlo tiene el XP SP2, osea que no creo ke sea ese el problema, probablemente a ti te rula porque tendras instalado el Visual Studio y las mismas herramientas con las que esta desarrollada la aplicacion y no haya problemas de dependencias.

Bien siguiendo los links que me has dado, me he dado cuenta que estaba cometiendo un error grave, jejeje al no haber usado nunca el depends.exe, no sabia como usarlo y lo  estaba corriendo en el pc con el que desarrolle la aplicacion y no en el que quiero instalarla.
Al correr el depends.exe en el equipo que quiero usar la app, me ha devuelto un par de errores, faltaban 3 dlls, ingenuo de mi que pensé que ya habia dado con el error.Incluí esas dlls que faltaban y volvi a ejecutar el programa... no rulaba.
Lo volví a abrir con el depends.exe, y me devuelve un nuevo error, parece que referente a la libreria MPR.DLL. Te pongo un pantallazo con lo que me dice el depends.exe:


14
Visual C++ / Re: Distribuir Una Aplicacion Vc++ .net
« en: Viernes 22 de Diciembre de 2006, 12:29 »
Nada, he vuelto a comprobar todas las DLLs y parece que están todas, he abierto el programa con el WinDBG y me da el mismo mensaje:

"Could not create proccess  *rutadelfichero* ,Win32 error 14001"...

Adjunto el ejecutable por si os es de alguna utilidad, lo he subido a RapidShare porque ocupa 140k.

pruebas.exe

15
Visual C++ / Re: Distribuir Una Aplicacion Vc++ .net
« en: Viernes 22 de Diciembre de 2006, 10:56 »
Na, probé primero lo de las DLLs y todas estaban instaladas en el sistema, despues para asegurarme instale el .NET Framework, y el Microsoft Platform SDK que use en el desarrollo de la aplicacion en el equipo que quiero instalarla, y segui sin resultados.
Y ahora mismo acabo de comprobar el tema de los paths, y uso paths relativos (en las opciones tengo desactivado el "Use FULL Paths").

Así que no sé, tambien probé haciendome el instalador con la aplicacion que trae el Visual Studio 2005 pero ni por esas, el mensaje de error es siempre el mismo, ejecuto la aplicacion y me aparece en pantalla :


"No se pudo iniciar la aplicacion porque su configuracion es incorrecta. Reinstalar la aplicacion puede solucionar el problema"


Esto me esta empezando a mosquear...  <_<

16
Visual C++ / Re: Distribuir Una Aplicacion Vc++ .net
« en: Jueves 21 de Diciembre de 2006, 15:38 »
Es un proyecto lo que yo he desarrollado en C++, y me gustaria instalarlo en otro PC para poder usarlo. Osea que si, es el proyecto lo que quiero distribuir, ¿que son eso de path's relativos?

17
Visual C++ / Distribuir Una Aplicacion Vc++ .net
« en: Jueves 21 de Diciembre de 2006, 13:49 »
Buenas el caso es que he terminado de programar una aplicacion con Visual C++ .NET, y ahora quiero ejecutarla en otra maquina, he probado llevandome solo el ejecutable, pero no me funciona, supongo que tendre que crear una distribucion de la aplicacion de alguna forma para empaquetar todas las dependencias que usa.

Bueno espero vuestra respuesta, Gracias.

18
C/C++ / Re: Cast De Byte A Char
« en: Miércoles 20 de Diciembre de 2006, 10:37 »

Solucionado


Gracias por las respuestas, ya consegui hacer lo que queria de la siguiente forma:

Código: Text
  1.  
  2.   for (x=0;x<=5;x++){
  3.     num=(int)variableBytes[x];
  4.     n1=(num/100);
  5.     c[0]=n1+48;
  6.     num=num-(n1*100);
  7.          
  8.     n2=(num/10);
  9.     c[1]=n2+48;
  10.     num=num-(n2*10);
  11.  
  12.     c[2]=num+48;
  13.     c[3]='\0';
  14.  
  15.     if (x==0){
  16.      strcpy(variableCHAR,c);
  17.     }else{
  18.      strcat(variableCHAR,c);
  19.     }
  20.   }
  21.  
  22.  

19
C/C++ / Cast De Byte A Char
« en: Martes 19 de Diciembre de 2006, 14:23 »
Buenas me gustaría pasar el contenido de una variable BYTE a un char, mi programa me devuelve una direccion MAC que almacena en una variable BYTE[6], y yo lo que quiero es interpretar la MAC, pasando la variable a char, ¿se os ocurre alguna manera de hacer cast entre estos dos tipos de variables?

He hecho pruebas:

Código: Text
  1.  
  2.     for(i=0;i<=5;i++){
  3.        texto[i]=(char)bytes[i];
  4.     }
  5.  
  6.  

Asi me mete en la variable texto el contenido de bytes, pero cuando lo pinto en pantalla, me pinta el equivalente de los valores de bytes en ascii, de manera que si en bytes tenia 26.55.23.65.13.0 , me pinta algo totalmente diferente a eso, algo como []7[]A (los corchetes no).

A mi me interesaria directamente imprimir los valores 26.55.23.65.13, que no los interprete.
No se si me explico bien , bueno espero alguna respuesta de vuestra parte. Saludos

20
C/C++ / Re: Obtener El Chunk De Datos De Una Imagen.
« en: Viernes 15 de Diciembre de 2006, 21:32 »
ejeje Sí, lo pensé, el programa slo va a trabajar con archivos de imagenes pequeñas, por lo que no debería tener ningún problema.

21
C/C++ / Re: Obtener El Chunk De Datos De Una Imagen.
« en: Viernes 15 de Diciembre de 2006, 14:17 »
Solucionado

Gracias por todas vuestras respuestas pongo el codigo para que veais como al final lo he conseguido, primero el metodo getline no me servia (devuelve una cadena hasta que ve un retorno de linea de manera que no me daba el binario completo) he usado fread, y segundo no hacia bien el malloc, no alocaba la memoria total que necesitaba, bueno asi lo he hecho y me ha funcionado correctamente:

Código: Text
  1. char * m=(char*)malloc(size*sizeof(char));  
  2. if (m==NULL) return 3;  //error
  3.  
  4. fread(m,sizeof(char),size,f); //vuelca el fich a memoria.
  5.  

Al final mucho más sencillo que todo lo que estaba haciendo como me temia.
Gracias a todos.

22
C/C++ / Re: Obtener El Chunk De Datos De Una Imagen.
« en: Viernes 15 de Diciembre de 2006, 11:44 »
Ajá gracias, ya estoy copiando con memcpy, pero para concatenar valores binarios como puedo hacerlo?
Tal vez me estoy yendo por las ramas pero esque no he encontrado la forma de cargar el contenido completo del fichero en binario dentro de una variable, de ahí que esté intentandolo poco a poco en bloques de 2048 bytes.

23
C/C++ / Re: Obtener El Chunk De Datos De Una Imagen.
« en: Viernes 15 de Diciembre de 2006, 11:06 »
Bien, muchas gracias por las aclaraciones, ahora ya se que necesito usar malloc para poder usar la variable img, bien hasta ahi me funciona todo, ahora estoy recorriendo el fichero *.jpg abierto en modo binario para guardar su contenido en una variable  de la siguiente forma:

Código: Text
  1.  
  2.  ifs.open("c:\\bt.jpg",ios::out | ios::binary);
  3.  
  4.  ifs.seekg(0, ios::end);
  5.  size = ifs.tellg();
  6.  ifs.seekg(0, ios::beg);
  7.  
  8. char* img = (char*)malloc(size);
  9.  com=0;
  10.    do {
  11.     ifs.read(buffer, 2048);
  12.     bytesLeidos = ifs.gcount();
  13.     if (com==0){
  14.       strcpy(img,buffer);
  15.     }else{
  16.       strcat(img,buffer);
  17.     }
  18.     com++;
  19.     } while(bytesLeidos > 0);
  20.  
  21.  
  22.  

Parecía que funcionaba bien, el problema es que llegados a un punto ( cuando el bucle da 3 o 4 vueltas, la variable img inexplicablemente se me vacía, y ya no sigue concatenando al estar vacía. ¿Alguien sabe a que puede deberse???

24
C/C++ / Re: Obtener El Chunk De Datos De Una Imagen.
« en: Jueves 14 de Diciembre de 2006, 14:02 »
He editado el primer post, a ver que encuentro voy a buscar.

25
C/C++ / Obtener El Chunk De Datos De Una Imagen.
« en: Jueves 14 de Diciembre de 2006, 11:24 »
Hola me gustaria obtener el chunk de datos de una imagen, que supongo que sera lo mismo que para cualquier tipo de archivo.
Por lo que he visto por ahi tengo ke abrir el archivo en modo binario e ir guardandolo en alguna variable. A ver si podeis guiarme , gracias.


Edito:


Estoy intentandolo de la siguiente manera pero no me deja me lanza error.

Código: Text
  1.  
  2. ifstream ifs;
  3. ifs.open("c:\\bt.gif",ios::binary);
  4. char* buffer;
  5. int size;
  6.  
  7. //obtengo el tamaño del fichero
  8. ifs.seekg(0, ios::end);
  9. size = ifs.tellg();
  10. ifs.seekg(0, ios::beg);
  11.  
  12.  
  13. //lo asigno a una variable para guardar el chunk
  14. char* img;  
  15. ifs.getline(img, size);
  16.  
  17.  

así me dice "Run-Time Check Failure #3 - The variable 'img' is being used without being defined."

si le pongo un tamaño fijo a img por ejemplo asi:


Código: Text
  1.  
  2. ifstream ifs;
  3. ifs.open("c:\\bt.gif",ios::binary);
  4. char* buffer;
  5. int size;
  6.  
  7. //obtengo el tamaño del fichero
  8. ifs.seekg(0, ios::end);
  9. size = ifs.tellg();
  10. ifs.seekg(0, ios::beg);
  11.  
  12.  
  13. //lo asigno a una variable para guardar el chunk
  14. char img[1105];  
  15. ifs.getline(img, size); //donde size vale 1105
  16.  
  17.  

no me lanza el error, pero no me guarda bien el chunk de datos de la imagen, lo ke me guarda en la variable no corresponde a la imagen.

Páginas: [1] 2 3