PREGUNTAS CONTESTADAS - Delphi≤nguaje=

 Hay un total de 680 Preguntas.<<  >> 

    Pregunta:  22820 - COMO AGREGAR,LEER,BORRAR O MODIFICAR DATOS DEL REGISTRO
Autor:  Hector Garza Coronado
Necesito alguna ayuda con los API sobre el registro de windows. Como agragar, leer, borrar, o modificar datos del registro. Gracias
  Respuesta:  xavier bravo
te envío un código que enviaron al clubdelphi.com, con el que se puede consulta, o añadir si no existen, unas claves en el registro de Windows. (viene de clubdelphi)

En el Uses tienes que añadir Registry, Windows

procedure leerRegistro();
var Registre: TRegistry;
begin
Registre := TRegistry.Create;
Registre.RootKey := HKEY_LOCAL_MACHINE;
Registre.OpenKey('\Software\iData\GestOptic', True);
if ((not Registre.ValueExists('Servidor')) or (not Registre.ValueExists('BaseDeDades')) or (not Registre.ValueExists('Usuari'))) then begin
try
Registre.WriteString('Servidor', 'SERVIDOR');
Registre.WriteString('BaseDeDades', 'GestOptic');
Registre.WriteString('Usuari', 'SA');
except
Application.MessageBox('Por favor, la primera ejecución' + chr(13) + chr(10) + 'la debe realizar un Usuario con derechos de Administración', 'Atención', IdOk);
end;
end;
Connexio_Servidor := Registre.ReadString('Servidor');
Connexio_BaseDeDades := Registre.ReadString('BaseDeDades');
Connexio_Usuari := Registre.ReadString('Usuari');
Registre.CloseKey;
Registre.Free;
end;

    Pregunta:  22906 - ENVIO DE CARACTERES DE CONTROL A IMPRESORA
Autor:  xavier bravo
Como envio caracteres de control a la impresora de matriz, tengo los códigos para configurar la impresion a 1/8 (pulgadas), tengo el código : write(recibo,chr(27),chr(48) pero lo que hace es imprimir un caracter raro para el 27 y el cero que es su código ascii, de qué manera le envio esos caracteres de control?.. gracias.
  Respuesta:  Miguel Lucero
Si sabes la dirección del puerto paralelo de la impresora estas funcion puede servirte.

procedure EscribePuerto(Direccion:word;valor:byte);
begin
asm
mov dx,Direccion
mov AL,valor
out DX,AL
end;
end;

Esta función solo sirve para windows 95/98.

    Pregunta:  22931 - F1 CON SQL EN DELPHI 4
Autor:  blady cardenas
Hola amigos de lawebdelprogramador:
Necesito saber como se puedo extraer de una base de datos una tabla como resultado de una consulta; con campos parcialmente llenado, es decir que se tiene que actualizar esa tabla en otro ordenador;osea se vaciara en un floppy; esto como archivo de texto.
Para luego cuando sea actualizado la tabla se pueda actualiazr en la base de datos. Utilizo delphi 4 Cliente/Servidor.
Si alguien sabe como realizar me gustaria que me dieran alguna manera de poder solucionarlo.
MMUHCAS GRACIAS
  Respuesta:  Efrain Cruz
haber si te puedo ayudar... .explicame un poco mas tu problema..

lo que entiendo es que tienes una tabla como producto de una consulta..
no se que si estas usando Cliente-Servidor..

por que de ser asi.. puedes concetar el Query a un Data Set Provider Y apartir del data Set Provider puedes mandar esos datos a un Client Data Set... y de alli puedes sacarlo del data... o mandarlo a excell...

Etc...

no se si eso resuelva en algo tu problema... pero si no, me gustaria que lo detallaras mas...

    Pregunta:  22970 - PAGINACION TOTAL DE REPORTES
Autor:  Jorge Cortes
Quiero poner el total de paginas en el PageFooter, esto es, no solo el pagenumber si no tambien el pagecount, pero este al parecer no me responde como deberia, que recomiendan?
Gracias
  Respuesta:  JUAN JESUS SAMANO
MIra yo estoy enumerando mis paginas, y fa forma como lo hago es:
a) en la banda de rbpagefooder
b) poner una expresión QREXPR
c) en sus propiedades en expression asignarle la variable PAGENUMBER

esta variable te enumera automaticamente para cada pagina.

espero te sirva.
  Respuesta:  Alberto Gomez
Con la version demo de QuickReport incorporada en las versiones de delphi no se puede realizar asi como asi.

Deberias visualizar el report desdes qrpreview (busca informacion sobre ello) y entonces en el pagefooter pones una label en blanco .

si realizas el preview con este componente no te saldra pero a la hora de imprimir en el evento before print le asignas el valor a la variable del pageCount.

asi se saldra en la impresion pero no en el preview. Es lo unico que yo he conseguido despues de varias horas de pruebas. O eso o te compras la version original de quick report..

Existe una alternativa que seria utilizar el fast report yo no lo he utilzado pero pareceser que hablan bien de el.

    Pregunta:  22975 - LOOP PRINCIPAL PROGRAMA WINDOWS CON DIRECT X
Autor:  Arturo
Alguien me podria dar una idea de como el loop principal en una aplicación Delphi usando Direct X, con animación de Sprites, etc...

Me refiero en que momento se refresca la pantalla, como se controla la velocidad a la que esto se hace, y la velocidad a la que se cambia el Sprite para la animación.

Gracias por anticipado.
  Respuesta:  Jonatan Moleiro
Te conviene apoyarte en componentes que te faciliten el trabajo. Fijate en Turbo ( http://turbo.gamedev.net/ ) los ejemplos de los componentes DelphiX que facilitan el trabajo y creacion de juegos en Delphi con DirectX.

Otros componentes en los cuales los ejemplos te pueden ayudar son los componentes Omega ( http://www.delphisanctuary.com/ )

Saludos

    Pregunta:  23081 - PALETAS DE COMPONENTES
Autor:  EDGAR MOLINA
Por que cuando instalo un componente en alguna otra paleta que ya tengo creada y con un un componente el componente que instalo me remplaza al que tenia anteriormente. Que debo hacer (Para evitar problemas hago mis propios Packages=
  Respuesta:  Eber Irigoyen
tienes que ponerle un nombre de un componente que no tengas en ninguna paleta

    Pregunta:  23203 - PUERTO SERIE EN DELPHI
Autor:  Mariano Mendez
Hola, Como hago para manejar el puerto serie con delphi. ¿que componentes uso? ¿como se usan?

Gracias.
  Respuesta:  Sebastian Silva
De la forma complicada:

usá el driver del puerto directamente, lo tenés que abrir con la API CreateFile('\\.\COM1',xxxxx montones de parametros

y después lo usas con WriteFile(handle) y ReadFile(Handle)

de la forma fácil:

conseguite los componentes AsyncProfessional de TurboPower y usá el componente ApdComPort

    Pregunta:  23923 - COMPACTAR TABLAS PARADOX
Autor:  Armando Montoya
Hola a todos, tengo una duda, como puedo hacer para eliminar completamente los registros eliminados en Paradox, ya que en mi aplicacion hago uso del EmptyTable y despues requiero eliminar esos registros hago un llamado de DbiDoRestructure pero no me elimina nada. si alguien me pudiera indicar el codigo necesario estaria muy agradecido. Gracias y saludos
  Respuesta:  jorge luis guzman abreu
Aqui tienes un ejemplo de como se hace:

-Incluye 'bde' en el uses de tu form
-y utiliza esta funcion para compactarla:

procedure PackDBF(Tabla: TTable);
begin
Check(DbiPackTable(Tabla.DBHandle, Tabla.Handle, nil, szDBASE, True))
end;

Pero cuidado, para poder compactar la tabla, ésta debera estar abierta en modo exclusivo

Ejemplo:

{Cerramos la tabla/Close table}
Table1.Close;
{En Modo exclusivo/Exclusive mode}
Table1.Exclusive:=True;
{Abrimos tabla/Open table}
Table1.Open;
{Compactar/pack}
PackDBF(Table1);

{Reabrir tabla/reopen table}
Table1.Close;
Table1.Exclusive:=False;
Table1.Open;

Compactar tablas DBF con una función:

procedure PackDBF(Const ADatabase, ATable : String);
begin
with TTable.Create(nil) do
try
DatabaseName := ADataBase;
TableName := ATable;
Exclusive := True;
Open;
Check(DbiPackTable(Database.Handle,Handle,'','',True));
finally
Free;
end;
end;

Ejemplo de llamada:

PackDBF('Alias','Table1');

Para tablas Paradox:

procedure PackParadox(Const ADatabase, ATable : String);
var
ADB :TDataBase;
SaveKC : Boolean;
PdxStruct : CRTblDesc;
begin
with TTable.Create(nil) do
try
DatabaseName := ADatabase;
TableName := ATable;
Exclusive := True;
Open;
ADB := DAtabase;
SaveKC := ADB.KeepConnection;
ADB.KeepConnection := True;
try
Close;
FillChar(PdxStruct,SizeOF(PdxStruct),0);
StrPCopy(PdxStruct.szTblName,ATable);
PdxStruct.bPack := True;
Check(DbiDoRestructure(ADB.Handle,1,
@PdxStruct,nil,nil,nil,False));
finally
ADB.KeepConnection := SaveKC;
end;
finally
Free;
end;
end;

Ejemplo de llamada:

PackParadox('Alias','Table1');

    Pregunta:  23927 - PROBLEMA AL CORRER UNA CONSULTA CON FECHAS EN LA CLAUSULA WH
Autor:  Alejandro Damiani
Hola: Es la primera vez que accedo a la página y estoy muy impresionado.
He realizado exitosamente una consulta en una tabla paradox. Pero cuando en la consulta intervienen fechas, me larga el siguiente error: "Tipe mistmatch in expresion" Que puede ser?
El SQL es el que se detalla abajo:

WHERE ((kilometros.fecha >= :Fe) and (kilometros.fecha <= :Fe1));

procedure TFormSQLPrueba.Button1Click(Sender: TObject);
begin
Query1.close;
Query1.Params[0].AsDate:=strtodate(edit1.text);
Query1.Params[1].AsDate:=strtodate(edit2.text);
Query1.open;
end;

Desde ya muchisimas gracias.
  Respuesta:  Arnaldo Gabriel Ayala Meyer
Parece extraño que aparezca ese error, se me ocurren dos cosas:

1) Realmente en la tabla, el tipo de dato no es date.

2) El valor de ShortDateFormat puede que no coincida con el de la tabla, es decir, el formato de fecha que se envía no es el correcto.

    Pregunta:  24008 - ESTILOS DE CODIFICACION
Autor:  augusto diaz
Donde puedo encontrar algun estandar para realizar programas con un estilo de codificacion estandar? Bajo delphi. Gracias.
  Respuesta:  xavier bravo
En la Guia de Desarrollo Delphi de Steve Teixeira y Xavier Pacheco, Edit. Prentice Hall, ahi viene en el cpitulo 6 los standares de codificación

|<  <<  36 37 38 39 40 41 42 43 44 45 46  >>  >|