Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 20-06-2014
carlosprotos carlosprotos is offline
Miembro
 
Registrado: abr 2014
Posts: 28
Poder: 0
carlosprotos Va por buen camino
Talking Ayuda con mi base de modulo.

Tengo un problema el cual no puedo resolver aun , necesito que me ayuden a crear una base para obtener un modulo.
Me gustaría crear una base de modulo para mi entrenador de juego.

Código:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls,;

type
  TForm1 = class(TForm)
    edit1: TEdit;
    label1: TLabel;
    chekbox1: TCheckBox;
    procedure checkbox1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}


procedure TForm1.checkbox1Click(Sender: TObject);
var
module:pchar;
begin
module:=pchar(edit1.text);
if checkbox1.Checked=True then
pdword(GetModuleHandle(edit1.text)+$25D10):=999;
end;

end.
mi direccion en C.E es csh5F4.tmp+$25D10.
donde edit1 tengo que colocar mi modulo que es el csh5F4.tmp... pero mi problema es que ese modulo cambia de nombre cada vez que entro al juego.el unico cambio que hay son las ultimas 3 palabras , a veces esta como csh5F4.tmp , cuando entro
de nuevo se cambia a csh6D1.tmp , luego csh2FC.tmp,etc , y asi sucesivamente. Y debo de crear una base
para que me genere el modulo automaticamente en edit1 , y no estar buscando el modulo
en la carpeta :C:\Users\Rodrix\AppData\Local\Temp (en esa carpeta aparece el modulo ,nuevo y cambiado de nombre, y con la hora y fecha con la que ingrese al juego) y copiar el nombre y pegarla en edit1 para que me trabaje.
Alguna solución o fuente..?
Responder Con Cita
  #2  
Antiguo 20-06-2014
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.275
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Personalmente no he entendido casi nada.
Te vas mucho por las ramas y no concretas en lo que necesitas...
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #3  
Antiguo 20-06-2014
carlosprotos carlosprotos is offline
Miembro
 
Registrado: abr 2014
Posts: 28
Poder: 0
carlosprotos Va por buen camino
Talking

Cita:
Empezado por Neftali Ver Mensaje
Personalmente no he entendido casi nada.
Te vas mucho por las ramas y no concretas en lo que necesitas...
Lo que necesito es una base de address.en mi caso la direccion tiene 8 digitos ejemplo :346FD2D1
pero necesito que trabaje en todos los sistemas , entonces 346FD2D1 = Csh4F5.tmp+6FD2D1.
mi problema seria en que el csh4F4.tmp cambia las ultimas 3 palabras y puede estar como cshADF.tmp,etc cada vez que ingreso al juego. Entonces necesito alguna función para que me genere el cshxxx.tmp actualizado de forma automaticamente sin estar buscandolo y pegando para que me de la base.

Ejemplo:
Modulo = csh5D70.tmp -> base = 655B0000 entonces la direccion seria : 655BD2D1 (csh4F5.tmp+6FD2D1). eso es lo que necesito.
Responder Con Cita
  #4  
Antiguo 20-06-2014
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.040
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Tampoco lo entiendo.
Responder Con Cita
  #5  
Antiguo 21-06-2014
orodriguezca orodriguezca is offline
Miembro
 
Registrado: ene 2009
Posts: 221
Poder: 16
orodriguezca Va por buen camino
A ver si entendí...

Después de leer varias veces entiendo que lo que necesitas es el nombre del archivo mas reciente existente en la carpeta "C:\Users\Rodrix\AppData\Local\Temp" con nombre csh???.tmp (??? son los comodines para el nombre del archivo) para colocarlo en la caja de texto Edit1?. Por favor confirma si esto es lo que necesitas.
Responder Con Cita
  #6  
Antiguo 21-06-2014
carlosprotos carlosprotos is offline
Miembro
 
Registrado: abr 2014
Posts: 28
Poder: 0
carlosprotos Va por buen camino
Talking

Cita:
Empezado por orodriguezca Ver Mensaje
Después de leer varias veces entiendo que lo que necesitas es el nombre del archivo mas reciente existente en la carpeta "C:\Users\Rodrix\AppData\Local\Temp" con nombre csh???.tmp (??? son los comodines para el nombre del archivo) para colocarlo en la caja de texto Edit1?. Por favor confirma si esto es lo que necesitas.
Exacto! , necesito eso , el cshxxx.tmp actualizado (aunque hay 5 cshxxx.tmp, solo el de fecha y hora en que entre al juego es la que funciona) , quiero que automaticamente me aparesca el actualizado en el edit1 para que me funcione. cshxxx.tmp+$2D4F50 = 9999;
Responder Con Cita
  #7  
Antiguo 21-06-2014
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola carlosprotos.

Tomando en cuenta que el último archivo generado será el que tenga la fecha mas reciente de modificación, creo que podrías adaptar la función mencionada en este enlace: Saber el ultimo archivo de una carpeta :

Código Delphi [-]
function LastModifiedFile(DirName: string): string;
var
  SR: TSearchRec;
  MaxF, aux: TDateTime;
  MaxN: string;
begin
  DirName:= IncludeTrailingPathDelimiter(DirName);
  MaxF:= 1.00002;
  MaxN:= '';
  if FindFirst(DirName + 'csh*.tmp', faArchive, SR) = 0 then
  begin
    repeat
      aux := FileDateToDatetime(SR.Time);
      if aux > MaxF then
      begin
        MaxF := aux;
        MaxN := DirName + SR.Name;
      end;
    until FindNext(SR) <> 0;
    FindClose(SR);
  end;
  Result := MaxN;
end;

Ejemplo de uso:
Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
var
  LastFile: PChar;
begin
  LastFile:= PChar(LastModifiedFile('C:\Users\Rodrix\AppData\Local\Tmp'));
  ShowMessage(LastFile);
end;

( No deja de asombrarme la capacidad interpretativa de orodriguezca )

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #8  
Antiguo 21-06-2014
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.040
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por ecfisa Ver Mensaje
( No deja de asombrarme la capacidad interpretativa de orodriguezca )
Sin embargo, otros necesitan capacidad expresiva escrita para darse a entender
Responder Con Cita
  #9  
Antiguo 21-06-2014
orodriguezca orodriguezca is offline
Miembro
 
Registrado: ene 2009
Posts: 221
Poder: 16
orodriguezca Va por buen camino
Cita:
Empezado por ecfisa Ver Mensaje

( No deja de asombrarme la capacidad interpretativa de orodriguezca )

Saludos
Hola ecfisa, yo también estoy asombrado ; solo fue un fugaz momento de inspiración.


Saludos,
Responder Con Cita
  #10  
Antiguo 21-06-2014
carlosprotos carlosprotos is offline
Miembro
 
Registrado: abr 2014
Posts: 28
Poder: 0
carlosprotos Va por buen camino
Talking U.u

Gracias ecfisa , esta excelente ,mas bien dime como seria para que me aparezca en el ShowMessage solo el nombre del "cshxxx.tmp" sin la direccion (C:\Users\Rodrix\AppData\Local\Tmp\cshxxx.tmp')
Responder Con Cita
  #11  
Antiguo 21-06-2014
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola carlosprotos.

Usando la función anterior, un ejemplo para obtener: ruta + nombre + extensión, nombre + extensión y el nombre solo:
Código Delphi [-]
var
  FullName, NameAndExt, OnlyName: string;
begin
  FullName:= LastModifiedFile('C:\Users\Rodrix\AppData\Local\Tmp');
  NameAndExt:= ExtractFileName(FullName);
  OnlyName:= ChangeFileExt(NameAndExt, '');
  ShowMessage(FullName + #10 + NameAndExt + #10 + OnlyName);
  ...

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
ayuda con base de datos jose.ignacio.ve Varios 2 29-11-2013 16:21:35
Ayuda Base De Dato danger04 MySQL 1 04-12-2008 10:44:04
Ayuda con Modulo o componente para joomla dark_monk9 HTML, Javascript y otros 2 04-04-2008 22:45:01
Ayuda para diseñar modulo de factura emidav104 Conexión con bases de datos 3 07-08-2005 13:11:08
Ayuda con un modulo de facturacion thrys Varios 1 02-06-2005 16:24:13


La franja horaria es GMT +2. Ahora son las 01:02:04.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi