Re: [delphi-br] Re: Executar aplicativos a partir da memória

2010-06-20 Por tôpico Adriano Santos
Galera,

Isso é muito loko, abre um leque enorme de possibilidades. Nem sabia que
dava pra fazer isso. Muito legal.
Vou dar uma olhada no que o Fabricio mencionou e estudar o código do artigo
passado, gostei do tema.


-- 
Adriano Santos
http://twitter.com/asrsantos
www.delphitodelphi.blogspot.com


2010/6/20 eric_developer 

>
>
> Fabricio,
> de qualquer forma é muito interessante e oportuno.
> Quando postei este tópico, também considerei situações de pessoas que
> conheçam C ou Assembly e convertam para o Pascal/Delphi, ou seja, ampliando
> as possibilidades (quando não existir nativamente), como é o caso da função
> deste site.
>
> Pascal Script, também gostaria de utilizar (se possível sem esse
> RemObjects), mas acredito que seja exclusivamente para "executar instruções
> Pascal dinamicamente", enquanto que o propósito é diferente, executar EXE
> (qualquer), também é possível ?
>
> Grato,
>
> Eric Developer Systems
> www.magaldi.eti.br
>
> --- Em delphi-br@yahoogrupos.com.br ,
> Fabricio Colombo  escreveu
>
> >
> > Li esse artigo sobre carregar e executar Dlls diretamente da memória,
> Load a
> > DLL From a Resource Directly From Memory in Delphi
> > Applications<
> http://delphi.about.com/od/windowsshellapi/a/delphi-load-resource-dll-into-memory.htm
> >,
> > não é o que vc precisa mais talvez te "dê uma luz". Seguindo a linha de
> > raciocínio do Dirlei Dionísio, tem tbm o Pascal Script.
> >
>
> --- Em delphi-br@yahoogrupos.com.br ,
> "eric_developer"  escreveu
> >
> > Bom dia,
> >
> > alguem sabe informar se é possível (e como) executar aplicativos windows
> (EXE qualquer) a partir da memória ? ou seja, supondo que armazenei o mesmo
> em banco de dados e efetuei um load para variavel de memória, a partir daí
> executá-lo, sem precisar descarregar em disco.
> >
> > Eric Developer Systems
> > www.magaldi.eti.br
> >
>
>  
>



-- 
Adriano Santos
http://twitter.com/asrsantos
www.delphitodelphi.blogspot.com


[As partes desta mensagem que não continham texto foram removidas]





-- 
< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >

<*> Para ver as mensagens antigas, acesse:
http://br.groups.yahoo.com/group/delphi-br/messages

<*> Para falar com o moderador, envie um e-mail para:
delphi-br-ow...@yahoogrupos.com.br
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

<*> Para sair deste grupo, envie um e-mail para:
delphi-br-unsubscr...@yahoogrupos.com.br

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html




Re: [delphi-br] Re: Alterar posição das tabs (iwta bcontrol)

2010-06-20 Por tôpico Adriano Santos
Eric,

Acho que ele quer fazer isso via projeto. Não entendi direito o que ele
quer. Tô sem Delphi nessa máquina, se for o mesmo problema do TreeView
imagino que só indo no DFM. Clica com o direito no Form e use View as Text.
Localiza o código da aba e muda o trecho de código para onde deseja. Depois
clica com o direito e View as Form. No IwTreeView só funciona dessa forma
para mudar os itens em projeto.

Amanhã no escritório dou uma olhada nisso direito. Se não for isso a dica do
Eric funciona.
-- 
Adriano Santos
http://twitter.com/asrsantos
www.delphitodelphi.blogspot.com


2010/6/20 eric_developer 

>
>
> Olá,
>
> IWTabControl1.ActivePage:=0; // primeira guia
> IWTabControl1.ActivePage:=1; // segunda guia
> ...
>
>
> Eric Developer Systems
> www.magaldi.eti.br
>
> --- Em delphi-br@yahoogrupos.com.br ,
> Marcelo Moacir Florindo  escreveu
>
> >
> > Colegas,
> >
> > Tenho 2 tabs quero alterar a posição delas,
> >
> > Qual seria o procedimento?
> >
> > Grato,
> >
> > --
> > Marcelo Moacir Florindo
> > Analista/Desenvolvedor
> > http://www.gestaotec.com.br
> >
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
>
>  
>


[As partes desta mensagem que não continham texto foram removidas]





-- 
< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >

<*> Para ver as mensagens antigas, acesse:
http://br.groups.yahoo.com/group/delphi-br/messages

<*> Para falar com o moderador, envie um e-mail para:
delphi-br-ow...@yahoogrupos.com.br
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

<*> Para sair deste grupo, envie um e-mail para:
delphi-br-unsubscr...@yahoogrupos.com.br

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html




[delphi-br] Não estou conseguindo comparar a digital salva no banco

2010-06-20 Por tôpico Adenilson
Caro amigos, Gostarias da ajudar de vcs.
A questão é a seguinte tenho dois forms, um é pra cadastrar a digital e o outro 
é pra verificar a digital cadastrada.
A tela que cadastra a dital e tal está funcionando normal, mas a tela que faz a 
verificação da digital salva no banco de dados não está funcionando, tipo, ela 
não chama a a função de verifição.
Estou enviando o código para ver onde eu estou errando:

==
unit verificadigital;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Grids, DBGrids, StdCtrls, DBCtrls, DB, DBTables;
Const
// Constant for Basic
 SecuBSP_FALSE = 0;
 SecuBSP_TRUE = 1;

//Constant for Error
 SecuBSPERROR_BASE_GENERAL = 0;
 SecuBSPERROR_BASE_DEVICE = 4096;
 SecuBSPERROR_BASE_UI = 8192;

 SecuBSPERROR_NONE = 0;
 SecuBSPERROR_INVALID_HANDLE = SecuBSPERROR_BASE_GENERAL + 16;
 SecuBSPERROR_INVALID_POINTER = SecuBSPERROR_BASE_GENERAL + 32;
 SecuBSPERROR_INVALID_TYPE = SecuBSPERROR_BASE_GENERAL + 48;
 SecuBSPERROR_FUNCTION_FAIL = SecuBSPERROR_BASE_GENERAL + 64;
 SecuBSPERROR_STRUCTTYPE_NOT_MATCHED = SecuBSPERROR_BASE_GENERAL + 80;
 SecuBSPERROR_ALREADY_PROCESSED = SecuBSPERROR_BASE_GENERAL + 96;
 SecuBSPERROR_EXTRACTION_OPEN_FAIL = SecuBSPERROR_BASE_GENERAL + 112;
 SecuBSPERROR_VERIFICATION_OPEN_FAIL = SecuBSPERROR_BASE_GENERAL + 128;
 SecuBSPERROR_DATA_PROCESS_FAIL = SecuBSPERROR_BASE_GENERAL + 144;
 SecuBSPERROR_MUST_BE_PROCESSED_DATA = SecuBSPERROR_BASE_GENERAL + 160;
 SecuBSPERROR_INTERNAL_CHECKSUM_FAIL = SecuBSPERROR_BASE_GENERAL + 176;
 SecuBSPERROR_ENCRYPTED_DATA_ERROR = SecuBSPERROR_BASE_GENERAL + 192;

 SecuBSPERROR_INIT_MAXFINGER = SecuBSPERROR_BASE_GENERAL + 256;
 SecuBSPERROR_INIT_SAMPLESPERFINGER = SecuBSPERROR_BASE_GENERAL + 272;
 SecuBSPERROR_INIT_ENROLLQUALITY = SecuBSPERROR_BASE_GENERAL + 288;
 SecuBSPERROR_INIT_VERIFYQUALITY = SecuBSPERROR_BASE_GENERAL + 304;
 SecuBSPERROR_INIT_IDENTIFYQUALITY = SecuBSPERROR_BASE_GENERAL + 320;
 SecuBSPERROR_INIT_SECURITYLEVEL = SecuBSPERROR_BASE_GENERAL + 336;

 SecuBSPERROR_DEVICE_OPEN_FAIL = SecuBSPERROR_BASE_DEVICE;
 SecuBSPERROR_INVALID_DEVICE_ID = SecuBSPERROR_BASE_DEVICE + 16;
 SecuBSPERROR_WRONG_DEVICE_ID = SecuBSPERROR_BASE_DEVICE + 32;
 SecuBSPERROR_DEVICE_ALREADY_OPENED = SecuBSPERROR_BASE_DEVICE + 48;
 SecuBSPERROR_DEVICE_NOT_OPENED = SecuBSPERROR_BASE_DEVICE + 64;
 SecuBSPERROR_DEVICE_BRIGHTNESS = SecuBSPERROR_BASE_DEVICE + 80;
 SecuBSPERROR_DEVICE_CONTRAST = SecuBSPERROR_BASE_DEVICE + 96;
 SecuBSPERROR_DEVICE_GAIN = SecuBSPERROR_BASE_DEVICE + 112;

 SecuBSPERROR_USER_CANCEL = SecuBSPERROR_BASE_UI + 16;


//Constant for Security Level
 SecuBSP_FIR_SECURITY_LEVEL_LOWEST = 1;
 SecuBSP_FIR_SECURITY_LEVEL_LOWER = 2;
 SecuBSP_FIR_SECURITY_LEVEL_LOW = 3;
 SecuBSP_FIR_SECURITY_LEVEL_BELOW_NORMAL = 4;
 SecuBSP_FIR_SECURITY_LEVEL_NORMAL = 5;
 SecuBSP_FIR_SECURITY_LEVEL_ABOVE_NORMAL = 6;
 SecuBSP_FIR_SECURITY_LEVEL_HIGH = 7;
 SecuBSP_FIR_SECURITY_LEVEL_HIGHER = 8;
 SecuBSP_FIR_SECURITY_LEVEL_HIGHEST = 9;

//Constant for Device Name
 SecuBSP_DEVICE_NAME_FDP02 = 1;
 SecuBSP_DEVICE_NAME_FDU01 = 2;

//Constant for DeviceID
 SecuBSP_DEVICE_ID_NONE = 0;
 SecuBSP_DEVICE_ID_FDP02_0 = 1;
 SecuBSP_DEVICE_ID_FDU01_0 = 2;
 SecuBSP_DEVICE_ID_AUTO_DETECT = 255;
type
  Tdigital = class(TForm)
Label1: TLabel;
matricula: TEdit;
DBGrid1: TDBGrid;
Label2: TLabel;
DBText1: TDBText;
Table1: TTable;
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure matriculaKeyPress(Sender: TObject; var Key: Char);
procedure FormKeyPress(Sender: TObject; var Key: Char);
  private
{ Private declarations }
  public
{ Public declarations }
  end;

var
  digital: Tdigital;

implementation
uses Utabelas, Comobj;
var
  nDeviceID : longint;
  objSecuBsp : variant;
  //szFIRTextData : wideString;

{$R *.dfm}

procedure Tdigital.FormCreate(Sender: TObject);
begin
   objSecuBsp := CreateOleObject('SecuBSPCOM.APIInterface');
objSecuBSP.EnumerateDevice;
end;

procedure Tdigital.FormClose(Sender: TObject; var Action: TCloseAction);
var iDeviceID:integer;
begin
   iDeviceID := SecuBSP_DEVICE_ID_AUTO_DETECT;
objSecuBSP.CloseDevice(iDeviceID);
objSecuBSP :=null;
end;

procedure Tdigital.matriculaKeyPress(Sender: TObject; var Key: Char);
var
 ret : Integer;
 szFIRTextData: String;
begin
   if(key=#13) then
   begin
  if( matricula.Text='') then
  begin
 showmessage('Por favor entre com com uma Matrícula Válida');
 matricula.SetFocus;
 exit;
  end;
  if 
(tabelas.acesso.Locate('MATRICULA',matricula.Text,[locaseinsensitive])=true) 
then
  begin
 if(tabelas.acesso.FieldByName('DIGITAL').AsString='') then
 begin
showmessage('NÃO HÁ DIGITA CADASTRADA!!!');
exit;
 end;
 end;
 szFIRTextData:=tabelas.acesso.fieldbyname('DIGITAL').AsString;
 re

[delphi-br] Re: Executar aplicativos a partir da memória

2010-06-20 Por tôpico eric_developer
Fabricio,
de qualquer forma é muito interessante e oportuno.
Quando postei este tópico, também considerei situações de pessoas que conheçam 
C ou Assembly e convertam para o Pascal/Delphi, ou seja, ampliando as 
possibilidades (quando não existir nativamente), como é o caso da função deste 
site.

Pascal Script, também gostaria de utilizar (se possível sem esse RemObjects), 
mas acredito que seja exclusivamente para "executar instruções Pascal 
dinamicamente", enquanto que o propósito é diferente, executar EXE (qualquer), 
também é possível ?

Grato,
Eric Developer Systems
www.magaldi.eti.br

--- Em delphi-br@yahoogrupos.com.br, Fabricio Colombo 
 escreveu
>
> Li esse artigo sobre carregar e executar Dlls diretamente da memória, Load a
> DLL From a Resource Directly From Memory in Delphi
> Applications,
> não é o que vc precisa mais talvez te "dê uma luz". Seguindo a linha de
> raciocínio do Dirlei Dionísio, tem tbm o Pascal Script.
> 


--- Em delphi-br@yahoogrupos.com.br, "eric_developer"  
escreveu
>
> Bom dia,
> 
> alguem sabe informar se é possível (e como) executar aplicativos windows (EXE 
> qualquer) a partir da memória ? ou seja, supondo que armazenei o mesmo em 
> banco de dados e efetuei um load para variavel de memória, a partir daí 
> executá-lo, sem precisar descarregar em disco.
> 
> Eric Developer Systems
>  www.magaldi.eti.br
>




[delphi-br] Re: Alterar posição das tabs (iwtabcontrol)

2010-06-20 Por tôpico eric_developer
Olá,

IWTabControl1.ActivePage:=0;  // primeira guia
IWTabControl1.ActivePage:=1;  // segunda guia
...

Eric Developer Systems
www.magaldi.eti.br

--- Em delphi-br@yahoogrupos.com.br, Marcelo Moacir Florindo 
 escreveu
>
> Colegas,
> 
> Tenho 2 tabs quero alterar a posição delas,
> 
> Qual seria o procedimento?
> 
> Grato,
> 
> -- 
> Marcelo Moacir Florindo
> Analista/Desenvolvedor
> http://www.gestaotec.com.br
> 
> 
> [As partes desta mensagem que não continham texto foram removidas]
>