PREGUNTAS CONTESTADAS - Delphi

 Hay un total de 680 Preguntas.<<  >> 

    Pregunta:  567 - COMPONENTES DELPHI
Autor:  Javier Sanjuan
Tengo unos componentes para instalar, los dispongo en ficheros *.PAS y *.DCU, pero no consigo su instalación en la paleta de componentes, ni com Install New Componente, ni con New Package, por favor, necesito ayuda
Un saludo
  Respuesta:  Juan
Hola!, principalmente ya se a que se debe el problema, si tienes ambos ficheros (.pas y .dcu) el fichero dcu es una compilacion del pas pero seguramente fue creado por la persona que creó el componente, esto trae problemas ya que al querer instalarlo en tu maquina puede generar errores de direccionamiento (o de ubicacion) ya que delphi verifica los datos del dcu (y como no es la misma maquina ni los archivos se encuentran en la misma ubicacion) se producen errores. Para solucionarlo lo único que debes hacer es borrar el fichero DCU, luego podrás instalar el componente sin problemas.
  Respuesta:  Julián J. Vásquez R.
A mi también me ha pasado con ciertos componentes que me dan ese problema. Qué es lo que hago?. Pues, con un Package ya existente le asigno un .pas que previamente haya instalado (por ejm, si instalaste un label3d.pas en un xx.dpk, vuelvelo a hacer). Entonces, te saldrá la ventanita que compila el package, haz click
en add y selecciona el .pas o .dcu que estás tratando de instalar. Y ya. Esto me ha funcionado sobre todo con componentes que traen el .dcu pero no traen el .pas. Espero te sirva de ayuda.
  Respuesta:  Alfonso Chavez
Por lo que cuentas, deberías de insertar el control VCL sin problemas. Creo que de hecho ya está insertado, lo único es que no esta asociado a ninguna paleta de componentes. Te recomiendo que le eches un vistazo a la configuración de la paleta de controles y asignes el control a una después de incluirlo de una de las formas que describes. Espero que sea eso lo que falla y te sirva de ayuda.
  Respuesta:  Germán Navarro
Lo primero es saber en que versión de delphi estas trabajando, ya que si es la versión 3 existe un pequeño inconveniente ya que necesitas tener un "paquete de instalación (PKG)" para poder instalar cualquier componente nuevo. Si no es así (versiones 1 y 2) entonces no deberías tener ningún problema al instalar el nuevo componente. Según tu pregunta creo que trabajas en la version 3 (o superior). Trataré de buscar información de como "crear" un PKG para que puedas instalar tu componente.

Atte.

    Pregunta:  568 - PARADOX EN RED CON DELPHI
Autor:  GCC
¿Cual es la forma correcta de tratar ficheros PARADOX en red con Delphi?. Es decir, ¿que componentes son necesarios aparte del TDataBase y el TTable para poder compartir archivos PARADOX en una red mediante Delphi, y cual seria la forma correcta de iniciarlos y usarlos? Por lo que he podido experimentar, tengo bastantes problemas al intentar compartir un mismo fichero PARADOX desde distintos terminales, ya que los indices se vuelven locos al hacerlo.Gracias.
  Respuesta:  ing. Ruben Carballo Macklis
*primero si es una red Peer-to-Peer:

No necesitas el TDatabase y Tsession
solo configura en BDE en Drivers-PARADOX-NetDir a el directorio que elijas

esto para todas las maquinas, esto evitara que se vuelvan locos los indices y actualice la informacion
ademas te sujiero que utilices el TTable.FlushBuffers despues de un post

*si es C/S te sujiero que utilices el Interbase porque PARADOX falla mucho y las Tablas fisicas en disco e indices se dañan mucho

y si utilizas Delphi 4 actualiza a Delphi 5
  Respuesta:  Israelsen Ferreras
Una formula, que a nosotros nos ha resultado es la siguiente:
1.- ir al BDE Administrator
2.-Opcion de configuración
3.- Ir a Drivers
4.- ir a Native
5.- ir a PARADOX
6.-en la configuración de PARADOX en Net Dir poner el driver de RED.

Espero que te funcione,

hasta luego

  Respuesta:  José Oronas
Otra manera, además de la citada en la respuesta anterior, es realizarlo desde dentro de la aplicación.
Usando el componente tSession, del cual puedes crear una variable o usar la que Delphi crea automáticamente y llama "Session".
De esta debes valuar las propiedades :
NetFileDir y PrivateDir.
La primera es el directorio donde paradox creará el Archivos PdoxUsrs.Net y debe apuntar a un lugar "visible" del Servidor (y todos los clientes al mismo sitio) en formato \\Servidor\RecursoCompartido\..... no en formato C:\xx\..... de esta última manera no se realizarán los bloqueos de registros y la actualización de tus archivos será impredecible.
PrivateDir es en cambio el directorio donde el BDE escribirá sus archivos temporales y es conveniente que se encuentre en una unidad local Ej.
C:\Windows\Temp.
Además El BDE creará en cada directorio donde se encuentren tablas a las que se accede desde la sesión los archivos Paradox.lck y PdoxUsrs.lck.
Para finalizar, desde el Inspector debes asignar a la propiedad SessionName de los Componentes tipo TTable, TQuery o similares, la variable de tipo TSession que uses (la que Delphi crea automáticamente se listará como Default).

Por ejemplo :

procedure TDlgMain.FormCreate(Sender: TObject);
Var
Bufer : pChar ;
begin
GetMem(Bufer,255)
Try
Session.NetFileDir := ´\\MiServer\C\MiPrg\MisDatos\Net´;
GetTempPath(255,Bufer);
Session.PrivateDir := StrPas(Bufer);
Finally
FreeMem(Bufer,255);
.
.
End ;
Mis saludos, espero que sea útil y mis disculpas por si se me desliza algún error ya que estoy redactando este email sin Delphi a mano....
  Respuesta:  Remberto Gonzales C.
Por la largada de la respuesta, esta en el archivo resp568.txt

    Pregunta:  632 - INDICES DBASE EN DELPHI
Autor:  Javier
Quisiera que alguien me ayudara con los índices.
Tengo unas bases de datos tipo Dbase, con ficheros indexados con extensión NDX, quisiera crear en tiempo de ejecución unos índices nuevos para estas tablas, pero con IndexDefs.Add, no me los crea, ya que creo que ésto lo crea para bases Paradox.
Utilizo Delphi 3
Gracias por vuestra ayuda
  Respuesta:  francisco reina martinez
Yo he de trabajar a menudo con estas tablas. La mejor solucion que he encontrado son un grupo de VCLs de Apollo(V5.0). Estos componentes son de pago, pero ya sabes, siempre hay sitios donde encontrarlos.
  Respuesta:  José Oronas
Estas en un error, IndexDefs.Add no realiza la operacion que nececitas tampoco en paradox, prueba con tTable.addIndex, en el help está bien explicado el tema, si necesitas mas presiciones hazmelo saber a mi direccion

Espero que te sea de utilidad.

    Pregunta:  639 - CAMBIAR DATABASE MIENTRAS CORRE EL PROGRAMA
Autor:  Alejandro
Trabajo en Delphi 3 y en mi programa tengo varias empresas con las que trabajo, cada una de ellas tienen los mismos archivos de datos(nombres) pero en distintos subdirectorios
Mi pregunta es: ¿como creo bases de datos y tablas particulares para cada Empresa mientras se corre el programa y despues como activo una base de datos para que las tablas que use el programa sean las de determinada Empresa(DataBase)
Muchas Gracias.
  Respuesta:  Remberto Gonzales C.
Por la largada de la respuesta, se encuentra en Resp639.txt

    Pregunta:  680 - DELPHI + SQL
Autor:  Claudio M
Estimados colegas, esperando me disculpen las molestias me gustaria que me pudieran ayudar con la ejecucion de un comando de SQL en Delphi 3
Al momento de ejecutar el comando ´DELETE FROM PRUEBAS´ me aparece el siguiente mensaje de error ´ERROR CREATING CURSOR HANDLE´.
A pesar del error el comando cumple con la mision de borrar la tabla indicada, pero el error no adornatia mucho el programa.
Si alguien de ustedes pudiere ayudarme a solucionar el problema estare muy agradecido
  Respuesta:  Hector Rojas
Cuando hagas una consulta debes usar query.open, cuando hagas un delete, insert, update debes usar query.Execute.

Suerte
  Respuesta:  bibian Caballero Valdez
Lo que sucede es que estas actualizando a la tabla dos veces
usando

Query1.ExecSQL;
Query1.Open;

solo debes de dejar la primera linea cuando haces una actualizacion.
  Respuesta:  Jack K.
Yo tenia un error similar al hacer un 'UPDATE FROM ...' el error se generaba porque en el codigo ponia

Query1.ExecSQL;
Query1.Open;

Pero al quitarle Query1.Open ya no hubo ningun problema y el query se ejecuto perfectamente. No se porque pero los 'INSERT', 'UPDATE' y 'DELETE' no necesitas que pongas el Query.Open.
  Respuesta:  Riki Rocha
Hola una forma facil de arreglar tu problema es en Tools del Menu hay una opcion que es Dento de Debugger options, entre las pestanas hay una opcion que te dice que si deseas que el Delphi pare por algun error.
s}descativala y compila tu programa y listo.

Suerte
  Respuesta:  Luis Mendez
Te aclaro que no uso DELPHI sino C++BUILDER, pero los entornos son identicos y comparten los componentes ... lo que se me ocurre que puedes hacer es un manejador para el error, en C++Builder es un try {tus instrucciones} catch {que hacer si da error}, y dentro de esto ultimo, coloca ... nada ... pues si el programa hace el trabajo y lo que quieres evitar es el mensaje de error, eso es todo.
Espero que te funcione.
  Respuesta:  Dairo Osorio G.
Bueno yo trabajo con delphi y la forma de hacer esto elegante es con un bloque Try... Finally
ejemplo:
try
(instruccion o instrucciones que quieres proteger)
finally
(instruccion que se ejecutarà si sucede un error)
end;
  Respuesta:  ALEX LOPEZ
SUPONGO QUE ESTAS USANDO EL COMANDO QUERY1.ACTIVE := TRUE ó QUERY1.OPEN.
TE RECOMIENTO QUERY1.EXECSQL.

    Pregunta:  715 - LA FECHA EN DELPHI
Autor:  Manuel Estrada
Declaro como tipo D,un campo en una base de datos en Delphi, en el Data Base Desktop, ahí mismo le añado datos, y los de 1900, se ponen a 2 dígitos:
Ej.
1/2/1996 -->se vuelve -->1/02/96
Y los del año 2000 pongo
1/2/2000 --> y se vuelve --> 1/02/2000

Pero cuando utilizo la tabla en una aplicación Delphi, al utilizar un DBgrid, solo aparece el año con 2 dígitos sea de 1900 o del 2000, ¿Cómo le hago para que aparezca completo?

GRACIAS.

  Respuesta:  Oscar González
En Delphi 4, si es esté el que utilizas, hay una propiedad para los campos llamada "DisplayFormat",
en ella introduce d/m/yyyy ó dd/mm/yyyy según prefieras un cero a la derecha para el día y el mes.

Un Saludo.
  Respuesta:  Marco R.
Cuando Delphi muestra datos tipo fecha, mientras tú no especifiques otra cosa, te los mostrará con el formato definido en la Configuración Regional de Windows.

Para solucionar tu problema simplemente entra en el "Panel de Control" de Windows, "Configuración Regional", y en la pestaña "Fecha"cambia el campo "Formato de Fecha Corta" para que aparezca el año con 4 dígitos.

Hasta Pronto.

  Respuesta:  Luis Mendez
Lo que quizas te sucede es que el BDE está configurado para manejar 4 digitos y el Win-95 para usarlo en 2.
Desde el BDEADMIN, dentro de Configuration, System, Formats, Date, puedes cambiar esto.
Y desde el Panel de Control, Configuracion Regional, puedes cambiar el formato de fecha que utiliza Win-95.
  Respuesta:  Rodrigo Soto Villanueva
Tienes que optar por lo mas sano ... No modifiques tu configuración regional ya que puedes afectar a otra aplicación. Lo que tienes que hacer es cuando se este creando tu forma escribir la siguiente línea de comando ShortDateFormat := ´dd/mm/yyyy´. Facil no..

    Pregunta:  767 - CONECTARSE A UNIX CON INFORMIX DESDE DELPHI
Autor:  Rafael Sanchez
Mi inquietud es poder conectarme a un servidor Unix SCO Open server que contiene una Base de Datos Informix 4 usando Delphi bajo Windows95 o bien puede ser NT Workstation 4.0. Tengo algunas ideas pero tengo que concretizarlas (su ayuda es vital).
Puede ser mediante ODBC, y estoy consiente de que Delphi me ofrece muchas ventajas al respecto; si alguno de ustedes ha tenido experiencia favor contestenme.
Gracias por su tiempo y tambien por su ayuda.
  Respuesta:  J. Fernando Villarroel
He trabajado con Delphi 3.0 (en W95 y WNT Workstation) e Informix 4.1 sobre UNIX SVR4.
No he podido conectarme directamente desde el BDE pues aparentemente me falta una DLL pero lo logré a través de un ODBC llamado INFORMIX-CLI 32. Eso si debes tener activado el startsql en UNIX y definir el servicio sqlexec en Windows.
Luego de configurar el ODBC, el BDE puede verlo por lo que puedes utilizar el Db-Explorer de Delphi y navegar a traver de tu BD y realizar SQL, etc.
  Respuesta:  Rodrigo Soto Villanueva
Puedes Crear una Conexión nativa que es mucho mas rápida que ODBC . Para esto debes definir el Service Name en windows.

    Pregunta:  788 - FAX
Autor:  Simon Toledo
Alguien sabe de alguna libreria para Delphi 4.0 (Shareware) que permita enviar un FAX desde programa, sin pasar por el procesador de FAX del Sistema?.

Poseo un paquete de rutinas llamadas Async Pro de Turbopower pero son para C++ Builder 1.0 y no puedo instalarlas en Delphi 4.0, me podría alguien decir que podría hacer, pues tengo entendido que sirven para ambos lenguajes.

Gracias de antemano

  Respuesta:  Francisco Rodríguez Cala
: Efectivamente, existen unas librerías llamadas TurboPower, que te permiten trabajar con Fax desde Delphi. Me temo que tu problema no es otro que el no poseer el paquete adecuado. Este paquete existe especialmente para Delphi, y no debes tener ningún problema en instalarlo, ya que yo mismo las he instalado en un par de ocasiones.

Si quieres más información, remíteme un E-Mail con información detallada de la versión, ficheros que contien etc, e intentaré averiguar si es esa la que necesitas. Ahora mismo tengo en mis manos el paquete original (versión 2.02): TurboPower Async Professional for Delphi (fechada el 21 de Abril del 97. De hecho, creo que hay versiones más recientes, pero esta, como te digo, es especialmente para Delphi (en Delphi 3 no he tenido problemas para instalarla...
Espero que te ayude, que esto de las librerías, a veces, es volverse loco

    Pregunta:  789 - MANEJO DE EXCEPCIONES EN DELPHI
Autor:  Juan Carlos
NECESITO SABER COMO PUEDO MANEJAR EN DELPHI EL BLOQUE DE CODIGO TRY ON EXCEPT, NO E OBTENIDO RESULTADOS CON EL.
GRACIAS A QUIEN ME PUEDA COLABORAR
  Respuesta:  Cesar Galdames
try
data.EQ_Borra_Marcas.Active := false;
data.EQ_Borra_Marcas.Params[0].Value := dbgrid3.Columns[0].Field.value;
data.EQ_Borra_Marcas.Active := true;
except
messagedlg(\'El registro no puede ser eliminado, ya se encuentra asignado.\',mtError,[mbOk],0);
end;

esto controla la eliminacion de un registro, cuando presenta relacion de claves con registros de otras tablas el bloque en el cual crees que se producira una ecepcion lo encierras en el try , luego lanzas la ecepcion en el except y cierras el ciclo funciona muy parecido al ciclo for, recuerda que esto solo funciona con el ejecutable del programa, no cuando compilas el codigo.
  Respuesta:  Roberto Morales
Por lo que entiendo en tu pregunta creo que te refieres a que delphi sigue marcando la excepción siempre, esto es asi por que en debugger options, esta activada la opción stop on Exception, desactivala o bien dejala tal cual y al momento de linkear el programa y ejecutarlo sin el rad de delphi, ya no emitira el mensaje de la exception, solo se manejara como lo hayas programado.
  Respuesta:  Juan José Aller
Esto no es demasiado complicado. Verás, una excepción es un señal provocada por un error, tal como puede ser una división por cero o el intento de acceso a los datos apuntados por un puntero nulo. Todo lo que se debe hacer es manipular el código que genera esa señal (provisto por el compilador), interceptando dicha excepción antes de que el programa se interrumpa. Para ello lo primero que debemos pensar, es en qué procesos de nuestro programa se podrían presentar inconvenientes, y por lo tanto, generarse errores. Una vez que los hallamos identificado, tendremos que "protegerlos" de una posible excepción. Esto se logra aislando el bloque a proteger entre las palabras TRY y EXCEPT, colocando detrás de esta última, las sentencias a ejecutar para solucionar el error, en caso de que se produzca una excepción. Seguido, como ya sabés, se finaliza la estructura de control con un END.
  Respuesta:  Mireya
Mira en el apartado de Biblioteca de Temas, ahi he colocado una explicación sobre el tema.

    Pregunta:  801 - IMPRESION EN DELPHI
Autor:  Jose
Cuando definimos un listado con el qreport de delphi si deseamos establecer un tamaño de papel no estandar, lo que hacemos es poner papel tipo Custom y le damos nuestras medidas, ademas la impresora del sistema le ponemos tipo de papel = Personalizado. Pero si trabajas en NT como lo haces, pues nt no tiene tipo de papel Custom por lo que te pone siempre el tamaño de papel predeterminado por el sistema. Haber si podeis ayudarme pues Microsoft y Borland no saben como.

Gracias.

  Respuesta:  Rodrigo
que tal amigo...Al parecer problemas con NT...no?, quizas la solucion sea mas complicada que la pregunta..puesto que efectivamente NT, no tiene formato de papel custom, que es lo que puedes hacer...es muy sencillo...en las mismas ayudas de NT dice...´Se recomienda tener los servicios de NT en diferentes maquinas para evitar conflictos...´ esto se aplica a todo, desde los servicios de internet information server a TCP/IP, RAS, e incluso impresion remota, es aconsejable que el servidor de impresion sea tambien fuera del server, y de preferencia que sea una estacion de Windows 95 o 98...tu diras porque esta...muy sencillo....Windows 95 fue creado como sistema operativo para usuarios particulares donde cosas de formatos casi no existen, en cambio NT, tiene ciertas reglas, el redireccionar las colas de impresion a otra maquina que presete el servicio es lo mas rapido que puedes hacer es tan solo entrar a la configuracion de la impresora local y y colocar el formato en custom, luego a las estaciones...en la configuracion de impresora...solo cambia la direccion de red, sin cambiar el driver de impresora que tengas, asi evitaras los problemas de formato de papel, ahora dentro de las redes microsoft...tanto server como estaciones pueden prestar el servicio de compartir recursos, por lo tanto en la configuracion de tu red debes solo habilitarle a la maquina que sera el servidor de impresion, el permitir ´Compartir archivos e impresora´ y solo marca la checkbox de ´permitir a otros usuarios que ocupen la impresora local´, y eso es todo...y adios problema, depues podras imprimir si quieres formularios de 10 mts...es la mejor solucion que te puedo dar, y es el esquema de flujo que existe en la red que administro, recuerda que todo esta en saber administrar los recursos de la red...y que no tan solo NT puede prestar servicios dentro de las redes microsoft o novell incluso unix...

|<  <<  1 2 3 4 5 6 7 8 9 10 11  >>  >|
Revisar política de publicidad