PREGUNTAS CONTESTADAS - C/Visual C

 Hay un total de 745 Preguntas.<<  >> 

    Pregunta:  11690 - COMO ESTABLECER LA IMPRESORA POR DEFECTO EN VISUAL C++ 6
Autor:  Jose Manuel Rueda Fragoso
Estoy intentando hacer un programa que saque las impresoras conectadas a una maquina. Esto está solucionado. El problema es a la hora de establecer o buscar la impresora por defecto. Existe la función GetDefaultPrinter, pero para sorpresa mia al utilizarla devuelve un error de función no declarada. Y es así porque en los ficheros .h de Visual C++ no existe la declaración de esa función.
  Respuesta:  Juan Pablo Crossley
CPrintDialog pd(TRUE);
pd.GetDefaults();
DEVMODE *d;
d = (DEVMODE *)::GlobalLock(pd.m_pd.hDevMode);
MessageBox(CString(d->dmDeviceName));
::GlobalUnlock(pd.m_pd.hDevMode);

y listo!

    Pregunta:  11772 - LLAMAR A UNA DLL DESDE OTRA DLL
Autor:  Elva Rego García
Esoy programando dll's en Borland C++ y necesito ejecutar una función que está dentro de una dll desde otra dll. ¿Cómo tengo que definir la función en la dll?¿Cómo la ejecuto desde la otra dll?
  Respuesta:  Ramon Sala
Hola amigo,

Para llamar a una función de una dll, ya sea desde un programa u otra dll, debes conocer, lógicamente el nombre de la función y de la dll. Abrela primero con la función LoadLibrary (consulta la ayuda de Visual C++ o Win32). Acto seguido, si conoces la dirección de la función, llámala directamente. Si no, averigua la dirección mediante la funcion GetProcAddress. Finalmente, cierra la dll con FreeLibrary. Si no tienes manera de conocer a fondo el funcionamiento de estas funciones, dímelo y te mandaré la información. Espero haberte ayudado.

Ramon

    Pregunta:  11795 - INSERCION DE UN CONTROL ACTIVEX EN VISUAL C++
Autor:  Ruben Artime Torres
He implementado un control Activex en Visual Basic que basicamente es un grid (MSHFlexGrid) con ciertas propiedades de formateado de las celdas. La cuestion es que la tecla ENTER debería servir para navegar por el grid y de hecho asi lo hace si inserto el control en un formulario de VB pero si lo hago en una ventana de Visual C++ la tecla ENTER pierde por completo su funcionalidad. ¿Alguien sabe a qué es debido y cual es la solución?
Muchas gracias
  Respuesta:  Lucas Martin
La propiedad de controlcontainer debe estar a true

    Pregunta:  11853 - BUCLES Y BOTONES EN DIALOGBOX
Autor:  andres dominguez
Trabajando en Borland C++ para Windows.

Tengo un Dialog Box, al pulsar un boton comienza un bucle. Quiero en cada pasada del bucle poder comprobar si se ha pulsado otro botón del Dialog Box y si no es así que el bucle siga su curso.

He probado con GetMessage y el programa se para hasta que se produce un evento, yo necesito que el programa siga ejecutandose si no se producen eventos y si se produce un evento simplemente comprobar cual fue.

Gracias
  Respuesta:  Oscar Vazquez
Remplazá la función GetMessage por PeekMessage. Esto te permite saber si hay un mensaje pendiente, sin tener que esperar que se produzca alguno.

BOOL PeekMessage(
LPMSG lpMsg, // message information
HWND hWnd, // handle to window
UINT wMsgFilterMin, // first message
UINT wMsgFilterMax, // last message
UINT wRemoveMsg // removal options
);

    Pregunta:  11871 - CUALES TIPOS DE EXTENSIONES EXISTEN EN VISUALC Y SIGNIFICADO
Autor:  luis andres rodriguez
cuales son las extensiones que crea el visual c++ 6.0 y para que sirve cada una de las extenciones.
  Respuesta:  Xabi Rodriguez Pardo
Aupa, la extensión más importante al crear un proyecto con Visual C++ es: *.dsw (éste es el archivo principal). Aunque también se podrá abrir tu proyecto con el *.dsp; luego también existen más ficheros: de recursos, etc.
Espero que t haya servido de algo. AGUR.

    Pregunta:  11876 - COMPILAR CON OPCION /STACK
Autor:  Rosalia Rojas
Hola a tod@s,
Necesito usar un programa de simulacion en C escrito por otra persona (!!). Para ello compilo ese programa usando MicroSoft Visual C++ sin obtener ningun mensaje de error. Lo malo es que a la hora de correr el programa obtengo el siguiente mensaje de error:
"The exception unknown software exception (0xc00000fd) occurred in the application at location 0x00401147"
El problema parece ser que es de memoria pues obtengo el mismo mensaje simplemente cuando corro un programita en el que solo incluyo la declaracion de las variables del programa y una sentencia 'printf'. Las variables consisten (entre otras muchas) en 16 matrices bi-dimensionales y 5 tri-dimensionales de 200x300. Alguien me dijo que fue capaz de correr el programa "usando la opcion /stack al compilar". ¿ Como usas esas opcion con el compilador de MicroSoft Visual C++ ? ¿Donde la defines ? ¿Hay alguna otra solucion en la que no suponga tener que efetuar allocacion dinamica de memoria ?
Yo he estudiado programacion en C por mi cuenta pero hay cosas a las que definitivamente no llego.
Muchas gracias de antemano por vuestra colaboracion.
  Respuesta:  Oscar Medina
Seguramente es problema de memoria, para contestarte por ahi habria que ver el codigo.
Te contesto lo mas facil que es poner /stack en la compilacion:
Tenes que ir a la opcion del menu "Project" ahi seleccionas la opcion "Setting", se te va a abrir una ventana que a la izquierda tiene muchos tabs, selecciona el que dice "C/C++", abajo de todo te va a aparecer una seccion que dice "Project Option", ahi abajo tenes todas las opciones que por defecto usa para compilar y es editable, entonces lo unico que tenes que hacer es agregar tu opcion detras de la ultima por las dudas. Espero que te haya servido mi ayuda...

    Pregunta:  11986 - COMO PUEDO ACTIVAR EL TASM EN TC++
Autor:  Juan Sebastian Cabrera Hidalgo
Para el uso de código en ensamblador debo tener en el path el TASM y en la opción Transfer del compilador, sin embargo no logro que los programas me corran
Nota: mi compilador es Turbo C++ 3.0
¿como lo puedo hacer?
Mil gracias por su atencion
  Respuesta:  kikonmx
En caso de utilizar el código de ensamblador incrustado ( es decir, sentencias de ensamblador dentro de un programa de C ) no es necesario disponer del compilador de TASM, ya que el C se encarga de compilarlo.

    Pregunta:  12075 - LARGO DEL TEXTO
Autor:  M C
Nesecito, mostrar un texto en pantalla de una fuente TT, pero, dicho texto, no puede solaparse con otro cercano y también de tamaño variable, para eso, en tiempo de EJECUCIÓN, debo conocer el 'ancho' del rectángulo donde la función dibujará mi texto, ¿cómo lo puedo hacer con la API?
  Respuesta:  Googol Plex
Mira la función GetTextExtentPoint32

Espero que te sirva... y que la respuesta no llegue demasiado tarde...

    Pregunta:  12116 - CONTROLES SOBRE UN ACTIVEX
Autor:  Carlos César Benavides Vallejo
Estoy desarrollando un ActiveX cuya interfaz es un dialogo compuesto por un boton y un cuadro de texto...

Para hacer esto creo una clase dialogo que hereda de Dialog.. , en el método:

int CMiActiveX::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (COleControl::OnCreate(lpCreateStruct) == -1)
return -1;

m_MiDialogo.Create(IDD_MIDIALOGO, this);

return 0;
}
creo el dialogo y en el método draw lo fijo como interfaz del ActiveX....
Segun lo anterior el dialogo se crea en tiempo de ejecución, por lo tanto en tiempo de edición debo tener otra interfaz... en este caso tengo la creada por defecto para un ActiveX...
Este modelo funciona pero tengo problemas al utilizarlo en mi aplicación.. si alguien sabe como hacer lo mismo de otra forma me gustaria que me contacte y compartir información...
  Respuesta:  Mario Zúñiga Trejo
Existe una forma usando la biblioteca ATL, con el wizzard de ATL hay una opción para crear controles compuestos, este tipo de control es precisamente una caja de dialogo que te permite agragar botones, etiquetas, etc.

Si tienes dudas escribe.

    Pregunta:  12144 - VER CODIGO DE UNA LIBRELIA DE C++(ARCHIVO *.LIB)
Autor:  Alejandro Rodriguez Hidalgo
Tengo programas que se compilan utilizando un archivo de libreria *.lib y quisiera ver el codigo que contiene; que esta hecho en C++
  Respuesta:  Melchor Viso
El codigo que se encuentra dentro de la librería es codigo compilado (una librería es basicamente un paquete de obj's). No puede verse. No tiene codigo fuente.

(...extracto de "mis primeros pasos en informática"...)

|<  <<  26 27 28 29 30 31 32 33 34 35 36  >>  >|