RE: [delphi-br] Conectar Firebird pela Internet

2010-01-26 Por tôpico Bruno Lichot
Melhor que o zebedee é utilizar o DataSnap.

 

From: delphi-br@yahoogrupos.com.br [mailto:delphi...@yahoogrupos.com.br] On 
Behalf Of stefaniak
Sent: segunda-feira, 25 de janeiro de 2010 13:29
To: delphi-br@yahoogrupos.com.br
Subject: Re: [delphi-br] Conectar Firebird pela Internet

 

  

para conectar remotamente com firebird vc precisa do ip válido do servidor, 
exemplo: 200.251.200.10:/teste/teste.fdb
se vc não tiver o ip válido, então pode usar um recurso como o no-ip:
meuservidor.no-ip.info:/teste/teste.fdb

no modem do servidor deve estar liberado as portas que serão utilizadas,
fazendo direcionamento para o micro servidor da rede interna.(com ip inválido, 
exemplo:192.168.1.220)

outra forma mais eficiente é usar o zebedee para acelerar a circulação
dos dados.
sds
marcelo luiz stefaniak

- Original Message - 
From: voodoorv 
To: delphi-br@yahoogrupos.com.br mailto:delphi-br%40yahoogrupos.com.br  
Sent: Monday, January 25, 2010 8:05 AM
Subject: [delphi-br] Conectar Firebird pela Internet

Bom dia pessoal, pode ser que já responderam esta questão aqui no forum, mas 
não achei nada, preciso conectar uma aplicação em delphi com banco de dados 
firebird 1.5, pela internet.
Por exemplo tenho um computador em um escritório com o meu banco de dados, 
preciso acessar este banco de dados de um outro local via net, como faço ?

Tentei colocar no TIBDatabase, o database name o IP da máquina servidora, 
192.1.1.1:c:\teste\teste.fdb

Mas não funcionaou, alguém pode me ajudar !

Obrigado.

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



 

Click here 
https://www.mailcontroller.altohiway.com/sr/rPhFm8GStdrTndxI!oX7UnlPSUZHzmrIysTKj2Z922Gvw1FmRXro8YkdWwkzu2XN1SwZVmyjaGt6aunJTqVygQ==
  to report this email as spam.

This message has been scanned for viruses by MailController 
http://www.MailController.altohiway.com/ .



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



[delphi-br] Re: Erro ao passar valores de um Form para outro

2010-01-26 Por tôpico simoesluciano
Estude o uso de property, esqueça esse negócio medonho de compartilhar edits 
entre forms.

Luciano C. Simões



Re: [delphi-br] Conectar Firebird pela Internet

2010-01-26 Por tôpico Fernando Bueno
Bom dia !!!

Cara eu tenho um programa que eu conectava o banco firebird através da
internet, no inicio eu fazia como o pessoal descreveu acima só como a
realidade de cada um dos meus clientes era diferente comecei a ter alguns
stresses, dai o que é que eu fiz o meu servidor de hospedagem de sites
começou a hospedar firebird tambem dai coloquei a base. FDB hospedada dai
ficou barbada usei ZEOS e já era.  Só que tem um porem fica muito lento
tanto fazendo como o pessoal indicou acima quanto em um servidor de
hospedagem, ai por isso acabei fazendo a minha aplicação misturada de tres
maneiras, hoje ela tem coisas que ficam online com  mysql, algumas fisicas
no firebird e tem algumas rotinas que so atualizam online com o firebird nao
mantem conexão.

Um abraço.

2010/1/25 voodoorv voodo...@uol.com.br



 Bom dia pessoal, pode ser que já responderam esta questão aqui no forum,
 mas não achei nada, preciso conectar uma aplicação em delphi com banco de
 dados firebird 1.5, pela internet.
 Por exemplo tenho um computador em um escritório com o meu banco de dados,
 preciso acessar este banco de dados de um outro local via net, como faço ?

 Tentei colocar no TIBDatabase, o database name o IP da máquina servidora,
 192.1.1.1:c:\teste\teste.fdb

 Mas não funcionaou, alguém pode me ajudar !

 Obrigado.

  




-- 
Fernando P. Bueno.'.
54 8145 6625
Caxias do Sul - RS - Brasil


 Oh! Quão bom e quão suave é que os irmãos vivam em união .! 

 (Salmos 133:1).


[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] Erro ao passar valores de um Form para outro

2010-01-26 Por tôpico Marcos Douglas
Para simplificar, faça consultas separadas entre os Forms. A pesquisa terá
sua query de consulta. Quando escolher o registro a ser editado, chame o
Form de edição e só passe o ID do registro (ID, CPF, ou seja lá qual for seu
identificador único) como parâmetro. No Form de edição você traz, do banco
de dados, somente este registro.


Marcos Douglas


2010/1/25 Ricardo Ravelli ricardorave...@gmail.com

 Pessoal, boa noite.



 Eu estou um sistema MDI, no qual tenho um formulário principal (Form Pai) e
 os demais estão como Forms filhos. O meu problema é o seguinte:



 Eu criei um form Filho de cadastro de produtos e dentro dele eu chamo um
 outro form filho que consulta os produtos cadastrados, porém eu também uso
 esse Form de consulta para “jogar” de volta uma linha do registro do DbGrid
 para o formulário de cadastro, assim podendo realizar a alteração desse
 registro (qdo eu dou um duplo-clique em cima do registro).



 Dentro do form de Cadastro de Produtos eu usei o seguinte código para
 chamar
 o Form de consulta:



  Application.CreateForm(TFrmConProduto, FrmConProduto);



 Dentro do DbGrid desse form de consulta eu utilizei o seguinte código para
 trazer as informações para o outro Form (Cadastro):



 procedure TFrmConProduto.DBGrid1DblClick(Sender: TObject);

 var

  Cd_Produto: string;

  Ds_Produto: string;

  Qtd_Produto: string;

  Vl_Unit_Produto: string;

  Vl_Total_Produto: string;

  X: Integer;

 begin

  with DBGrid1.DataSource.DataSet do

for X := 0 to FieldCount - 1 do

begin

  case X of

0:

  Cd_Produto := Fields[X].AsString;

1:

  Ds_Produto := Fields[X].AsString;

2:

  Qtd_Produto := Fields[X].AsString;

3:

  Vl_Unit_Produto := Fields[X].AsString;

4:

  Vl_Total_Produto := Fields[X].AsString;

  end;

  FrmCadProduto.EdtCodigo.Text := Cd_Produto;

  FrmCadProduto.EdtProduto.Text := Ds_Produto;

  FrmCadProduto.EdtQdt.Text := Qtd_Produto;

  FrmCadProduto.EdtValorUnit.Text := Vl_Unit_Produto;

  FrmCadProduto.EdtValorTotal.Text := Vl_Total_Produto;

end;

  FrmCadProduto.HabilitaDesabilita(2);

  FrmConProduto.Close;

 end;



 O erro está acontecendo quando eu tendo passar os valores das variáveis
 para
 os Edits do outro Form (que fica aberto mesmo com o Form Consulta aberto).
 Ele apresenta um erro de Access Violation e eu notei que ele não consegue
 encontrar as informações do Form Cadastro mesmo ele estando aberto e
 adicionado na Unit.



 Eu já utilizei esse código com Sistemas que não estão em MDI e funcionaram
 corretamente.



 Alguém sabe o que está acontecendo? Ou tem alguma solução diferente para
 trabalhar com forms MDI?



 Obrigado.



 Abraços.



 Att.

 Ricardo Ravelli.



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



 

 --
  FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 






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



Re: [delphi-br] Re: Perda de Herança no Form ulário

2010-01-26 Por tôpico Nivaldo Stainle
valeu
Stainle

--- Em seg, 25/1/10, Marcelo Luiz Onhate marc...@systempro.com.br escreveu:


De: Marcelo Luiz Onhate marc...@systempro.com.br
Assunto: Re: [delphi-br] Re: Perda de Herança no Formulário
Para: delphi-br@yahoogrupos.com.br
Data: Segunda-feira, 25 de Janeiro de 2010, 17:38


  



Vá até o formulário, clique com o direito e View As Text
com isso vai editar o .dfm...
remova todos os inherited que acha que estão atrapalhando. ..

Pressione Ctrl + F12 compile e responda oq aconteceu...

Vlw!








  

Veja quais são os assuntos do momento no Yahoo! +Buscados
http://br.maisbuscados.yahoo.com

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



Re: [delphi-br] Re: Perda de Herança no Form ulário

2010-01-26 Por tôpico Nivaldo Stainle
vou verificar.
grato pela ajuda
Stainle

--- Em seg, 25/1/10, simoesluciano simoesluci...@yahoo.com.br escreveu:


De: simoesluciano simoesluci...@yahoo.com.br
Assunto: [delphi-br] Re: Perda de Herança no Formulário
Para: delphi-br@yahoogrupos.com.br
Data: Segunda-feira, 25 de Janeiro de 2010, 17:16


  



- Confirmou se na declaração da classe do form descendente está a classe 
ancestral correta? 
type
TFrmCadastro = class(TFrmBasico)
- Você alterou a classe ancrestal na mão? Isso costuma dar problemas.

Luciano C. Simões

--- Em delphi...@yahoogrup os.com.br, stainle2003 stainle2003@ ... escreveu

 Boa Tarde, usando Delphi 7; tenho um formulário que não obedece mais as 
 mudanças no Form Original do qual ele foi herdado; recriei e compilei o 
 projeto e nada, alguém tem uma luz ?
 
 grato
 
 Stainle










  

Veja quais são os assuntos do momento no Yahoo! +Buscados
http://br.maisbuscados.yahoo.com

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



[delphi-br] Alterar sosmente o destino de um atalho

2010-01-26 Por tôpico snakesjb
Tenho um atalho no menu iniciar que aponta para um arquivo executavel, ja 
consegui recria-lo normalmente, mas a questão é que ele perde o ícone original 
e gostaria de mantelo...alguem sabe como alterar somente a propriedade destino 
de um icone sem apagá-lo e recria-lo novamente???, ou seja, entrar no fonte do 
icone e alterar somente o valor de destino...algume sabe???



[delphi-br] Vaga para programador Delphi em Joinville - SC

2010-01-26 Por tôpico Jhosef Marks
*VAGA PARA TRABALHAR EM JOINVILLE - SC*

Estamos contratando programadores delphi (junior ou pleno).

Candidato precisa ser esforçado, autodidata e amante do Delphi.

Interessados enviar Curriculum com pretensão salarial e disponibilidade para
início.

Nossa empresa: www.insightsystem.com.br

Att,

Jhosef Marks de Carvalho
Blog: http://www.jhosefmarks.com.br
Jesus está voltando

E se o meu povo, que se chama pelo meu nome, se humilhar, e orar, e buscar
a minha face e se converter dos seus maus caminhos, então eu ouvirei dos
céus, e perdoarei os seus pecados, e sararei a sua terra. (2 Cr 7:14)


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



Re: [delphi-br] Componente SuperBina

2010-01-26 Por tôpico Jorge Ericsson
*Eu já tentei de tudo para colocar esse componente para funcionar e desisto
dele.
Alguém teria uma solução pronta de Identificador de Chamada em qq versão do
delphi para negociar ?
Eu preciso implantar uma solução urgente no meu programa de pizzaria que só
falta o ID estpa funcionando.
Me mandem um PVT para falarmos sobre o assunto.
Obrigado.*

2010/1/25 Ricardo César Cardoso ricardo_engs...@yahoo.com.br



 Até onde eu me lembro (e isso fazem alguns ANOS) vc tinha que ter um modem
 de marca pra conseguir o SuperBina funfando legal. Indicavam até os modens
 da USRobotics como os que davam melhor resultado.

 Hj em dia nem sei mais se a informação procede.

 Atte,
 Ricardo.

 1) Evite escrever suas mensagens usando somente LETRAS MAIÚSCULAS.

 2) Revise o texto de sua mensagem. Uma mensagem bem escrita é melhor
 compreendida.

 3) Vamos ajudar o Grupo e o Yahoo! Apague o conteúdo irrelevante!

 --- Em seg, 25/1/10, Jorge Ericsson 
 jericsson...@gmail.comjericssonsup%40gmail.com
 escreveu:

 De: Jorge Ericsson jericsson...@gmail.com jericssonsup%40gmail.com
 Assunto: [delphi-br] Componente SuperBina
 Para:
 Data: Segunda-feira, 25 de Janeiro de 2010, 13:03




 Olá amigos,

 Alguém conseguiu colocar para funcionar o componente SuperBina ?

 Estou com problemas sérios e já troquei 3 placas de fax/modem para tentar

 colocar para funcionar e nada.

 Gostaria de saber se alguém usou, abandonou ou adotou algum solução para ID

 Chamadas com o componente.

 Abraços.

 *Segue abaixo a consulta do meu último modem que está funcionando super
 bem.

 *

 ATQ0V1E0 - OK

 AT+GMM - +GMM: PCI Soft Voice SoftRing Modem

 AT+FCLASS=? - 0,1,8,80

 AT#CLS=? - COMANDO SEM SUPORTE

 AT+GCI? - +GCI: 16

 AT+GCI=? - +GCI:

 (00,01,02,03, 04,05,06, 07,09,0A, 0B,0C,0D, 0E,0F,10, 11,12,13, 14,15,16,
 19,1A,1B, 1C,1D,1E, 1F,20,21, 22,23,24, 25,26,27, 28,29,2A, 2B,2C,2D,
 2E,2F,30, 31,32,33, 34,35,36, 37,38,39, 3A,3B,3C, 3D,3E,40, 41,43,44,
 45,46,47, 48,49,4B, 4C,4D,4E, 4F,50,51, 52,53,54, 55,56,57, 58,59,5A,
 5B,5C,5E, 5F,60,61, 62,63,64, 65,66,67, 68,69,6A, 6B,6C,6D, 6E,6F,70,
 71,72,73, 74,75,76, 77,78,79, 7A,7B,7C, 7D,7E,7F, 80,81,82, 83,84,85,
 86,87,88, 89,8A,8B, 8C,8D,8E, 8F,90,92, 93,94,96, 97,98,99, 9A,9B,9C,
 9D,9E,9F, A0,A1,A2, A3,A4,A5, A6,A7,A8, A9,AA,AB, AC,AD,AE, AF,B0,B1,
 B2,B3,B4, B5,B6,B7, B8,B9,BA, BB,BC,BD, BE,BF,C1, C2,C3,C4, C5,C7,C8,
 C9,CA,CB, CC,CD,CE, CF,D0,D1, D2,D3,D4, D5,D6,D7, D8,D9,DA, DB,DC,DD,
 DE,DF,E0, E1,E2,E3, E4,E5,E6, E7,E8,EB, EC,ED,EE, EF,F0,F1, F2,F3,F4,
 F5,F7,F8, F9,FA,FB, FC,FE)

 ATI1 - 255

 ATI2 - OK

 ATI3 - SoftK56V_B2. 1_V7.60.00

 ATI4 - PCI Soft Voice SoftRing Modem

 ATI5 - 022

 ATI6 - SoftK56

 CModem Version 12

 Rksample Version 342

 ATI7 - 255

 Jorge Ericsson

 Brasília - DF

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

 __

 Veja quais são os assuntos do momento no Yahoo! +Buscados
 http://br.maisbuscados.yahoo.com

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

  




-- 
Grato,

Jorge Ericsson S. Pinheiros
Ericsson Sistemas e Soluções
(61) 3244-4748 / 8592-9960 / 9227-4785
http://www.jericsson.com.br
jericsson...@gmail.com
jericsson...@jericsson.com.br
skype:jericsson
Brasília - DF


[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] Componente SuperBina

2010-01-26 Por tôpico Softbyte Sistemas
Acho q o mais viavel seria vc comprar um aparelho profissional
e conectar via porta serial ou usb 
tinha visto a tempos atraz para um sistema tb de pizzaria e na epoca custava
em torno de 250,00 p/ 1 linha, tinha um prog demo feito em delphi
e gerava relatorios e mais algumas coisitas


Soft


--
From: Jorge Ericsson jericsson...@gmail.com
Sent: Tuesday, January 26, 2010 10:14 AM
To: delphi-br@yahoogrupos.com.br
Subject: Re: [delphi-br] Componente SuperBina

 *Eu já tentei de tudo para colocar esse componente para funcionar e 
 desisto
 dele.
 Alguém teria uma solução pronta de Identificador de Chamada em qq versão 
 do
 delphi para negociar ?
 Eu preciso implantar uma solução urgente no meu programa de pizzaria que 
 só
 falta o ID estpa funcionando.
 Me mandem um PVT para falarmos sobre o assunto.
 Obrigado.*

 2010/1/25 Ricardo César Cardoso ricardo_engs...@yahoo.com.br



 Até onde eu me lembro (e isso fazem alguns ANOS) vc tinha que ter um 
 modem
 de marca pra conseguir o SuperBina funfando legal. Indicavam até os 
 modens
 da USRobotics como os que davam melhor resultado.

 Hj em dia nem sei mais se a informação procede.

 Atte,
 Ricardo.

 1) Evite escrever suas mensagens usando somente LETRAS MAIÚSCULAS.

 2) Revise o texto de sua mensagem. Uma mensagem bem escrita é melhor
 compreendida.

 3) Vamos ajudar o Grupo e o Yahoo! Apague o conteúdo irrelevante!

 --- Em seg, 25/1/10, Jorge Ericsson 
 jericsson...@gmail.comjericssonsup%40gmail.com
 escreveu:

 De: Jorge Ericsson jericsson...@gmail.com jericssonsup%40gmail.com
 Assunto: [delphi-br] Componente SuperBina
 Para:
 Data: Segunda-feira, 25 de Janeiro de 2010, 13:03




 Olá amigos,

 Alguém conseguiu colocar para funcionar o componente SuperBina ?

 Estou com problemas sérios e já troquei 3 placas de fax/modem para tentar

 colocar para funcionar e nada.

 Gostaria de saber se alguém usou, abandonou ou adotou algum solução para 
 ID

 Chamadas com o componente.

 Abraços.

 *Segue abaixo a consulta do meu último modem que está funcionando super
 bem.

 *

 ATQ0V1E0 - OK

 AT+GMM - +GMM: PCI Soft Voice SoftRing Modem

 AT+FCLASS=? - 0,1,8,80

 AT#CLS=? - COMANDO SEM SUPORTE

 AT+GCI? - +GCI: 16

 AT+GCI=? - +GCI:

 (00,01,02,03, 04,05,06, 07,09,0A, 0B,0C,0D, 0E,0F,10, 11,12,13, 14,15,16,
 19,1A,1B, 1C,1D,1E, 1F,20,21, 22,23,24, 25,26,27, 28,29,2A, 2B,2C,2D,
 2E,2F,30, 31,32,33, 34,35,36, 37,38,39, 3A,3B,3C, 3D,3E,40, 41,43,44,
 45,46,47, 48,49,4B, 4C,4D,4E, 4F,50,51, 52,53,54, 55,56,57, 58,59,5A,
 5B,5C,5E, 5F,60,61, 62,63,64, 65,66,67, 68,69,6A, 6B,6C,6D, 6E,6F,70,
 71,72,73, 74,75,76, 77,78,79, 7A,7B,7C, 7D,7E,7F, 80,81,82, 83,84,85,
 86,87,88, 89,8A,8B, 8C,8D,8E, 8F,90,92, 93,94,96, 97,98,99, 9A,9B,9C,
 9D,9E,9F, A0,A1,A2, A3,A4,A5, A6,A7,A8, A9,AA,AB, AC,AD,AE, AF,B0,B1,
 B2,B3,B4, B5,B6,B7, B8,B9,BA, BB,BC,BD, BE,BF,C1, C2,C3,C4, C5,C7,C8,
 C9,CA,CB, CC,CD,CE, CF,D0,D1, D2,D3,D4, D5,D6,D7, D8,D9,DA, DB,DC,DD,
 DE,DF,E0, E1,E2,E3, E4,E5,E6, E7,E8,EB, EC,ED,EE, EF,F0,F1, F2,F3,F4,
 F5,F7,F8, F9,FA,FB, FC,FE)

 ATI1 - 255

 ATI2 - OK

 ATI3 - SoftK56V_B2. 1_V7.60.00

 ATI4 - PCI Soft Voice SoftRing Modem

 ATI5 - 022

 ATI6 - SoftK56

 CModem Version 12

 Rksample Version 342

 ATI7 - 255

 Jorge Ericsson

 Brasília - DF

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

 __

 Veja quais são os assuntos do momento no Yahoo! +Buscados
 http://br.maisbuscados.yahoo.com

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






 -- 
 Grato,

 Jorge Ericsson S. Pinheiros
 Ericsson Sistemas e Soluções
 (61) 3244-4748 / 8592-9960 / 9227-4785
 http://www.jericsson.com.br
 jericsson...@gmail.com
 jericsson...@jericsson.com.br
 skype:jericsson
 Brasília - DF


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



 

 -- 
  FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 



 


Re: [delphi-br] Perda de Herança no Formulá rio

2010-01-26 Por tôpico Nivaldo Stainle
valeu pela dicar, vou tentar.
grato 
Stainle

--- Em seg, 25/1/10, Marcos Douglas m...@delfire.net escreveu:


De: Marcos Douglas m...@delfire.net
Assunto: Re: [delphi-br] Perda de Herança no Formulário
Para: delphi-br@yahoogrupos.com.br
Data: Segunda-feira, 25 de Janeiro de 2010, 15:26


  



De quais mudanças no Form original vc está falando?
Se for, por exemplo, a posição (Left, Top) de um botão: Se vc alterar a
posição do botão no Form original, o filho irá receber a alteração SOMENTE
se o filho ainda não tiver alterado o seu próprio botão (Left, Top).
Se quiser que as alterações do pai ou original, como vc chamou-o, então vc
deve apagar as configurações do botão que fica no arquivo .DFM do filho.

Marcos Douglas

2010/1/25 stainle2003 stainle2003@ yahoo.com. br

 Boa Tarde, usando Delphi 7; tenho um formulário que não obedece mais as
 mudanças no Form Original do qual ele foi herdado; recriei e compilei o
 projeto e nada, alguém tem uma luz ?

 grato

 Stainle



  - - --

 --
  FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 





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









  

Veja quais são os assuntos do momento no Yahoo! +Buscados
http://br.maisbuscados.yahoo.com

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



[delphi-br] Re: PDF

2010-01-26 Por tôpico ajama_1
Também queria saber como comprimir um PDF, estou tentando dessa forma logo 
abaixo, mas o arquivo fica corrompido após a compresão.

var oCompress: TCompressionStream; inpStream, outStream: TMemoryStream;
begin
  inpStream := TMemoryStream.Create;
  outStream := TMemoryStream.Create;
  inpStream.LoadFromFile('C:\temp\teste.pdf');
  oCompress := TCompressionStream.Create(clMax, outStream);
  oCompress.CopyFrom(inpStream, inpStream.Size);
  oCompress.Free;
  outStream.SaveToFile('C:\temp\teste2.pdf');
  inpStream.Free;
  outStream.Free;
end;

--- Em delphi-br@yahoogrupos.com.br, wagps2000 wa...@... escreveu

 Olá Colegas da lista.
 
 ALguem sabe se tem como abrir arquivos.pdf através do Delphi
 
 Como ???
 
 value.
 
 Wagner





[delphi-br] Componente no JEDI compatível com CurrencyEdit

2010-01-26 Por tôpico Tico
Pessoal, tenho um sistema em Delphi7 e estou migrando para o 2010. Existe
algum componente no Jedi compatível com o CurrencyEdit?

Abraços.

João Carlos


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



Re: [delphi-br] Conectar Firebird pela Internet

2010-01-26 Por tôpico stefaniak
bruno, desculpe a observação, mas datasnap é pra quem pode.

se a sua aplicação já estiver pronta e for client-server, então o jeito 
é explorar um recurso que possa conectar sem precisar reescrever tudo 
novamente.
agora, se o seu projeto é em datasnap, daí sim a coisa muda, tudo fica 
melhor e funciona muito bem.

sds
marcelo luiz stefaniak


Em 25/01/2010 17:51, Bruno Lichot escreveu:

 Melhor que o zebedee é utilizar o DataSnap.

 From: delphi-br@yahoogrupos.com.br 
 mailto:delphi-br%40yahoogrupos.com.br 
 [mailto:delphi-br@yahoogrupos.com.br 
 mailto:delphi-br%40yahoogrupos.com.br] On Behalf Of stefaniak
 Sent: segunda-feira, 25 de janeiro de 2010 13:29
 To: delphi-br@yahoogrupos.com.br mailto:delphi-br%40yahoogrupos.com.br
 Subject: Re: [delphi-br] Conectar Firebird pela Internet

 para conectar remotamente com firebird vc precisa do ip válido do 
 servidor,
 exemplo: 200.251.200.10:/teste/teste.fdb
 se vc não tiver o ip válido, então pode usar um recurso como o no-ip:
 meuservidor.no-ip.info:/teste/teste.fdb

 no modem do servidor deve estar liberado as portas que serão utilizadas,
 fazendo direcionamento para o micro servidor da rede interna.(com ip 
 inválido, exemplo:192.168.1.220)

 outra forma mais eficiente é usar o zebedee para acelerar a circulação
 dos dados.
 sds
 marcelo luiz stefaniak

 - Original Message -
 From: voodoorv
 To: delphi-br@yahoogrupos.com.br 
 mailto:delphi-br%40yahoogrupos.com.br 
 mailto:delphi-br%40yahoogrupos.com.br
 Sent: Monday, January 25, 2010 8:05 AM
 Subject: [delphi-br] Conectar Firebird pela Internet

 Bom dia pessoal, pode ser que já responderam esta questão aqui no 
 forum, mas não achei nada, preciso conectar uma aplicação em delphi 
 com banco de dados firebird 1.5, pela internet.
 Por exemplo tenho um computador em um escritório com o meu banco de 
 dados, preciso acessar este banco de dados de um outro local via net, 
 como faço ?

 Tentei colocar no TIBDatabase, o database name o IP da máquina 
 servidora, 192.1.1.1:c:\teste\teste.fdb

 Mas não funcionaou, alguém pode me ajudar !

 Obrigado.

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

 Click here 
 https://www.mailcontroller.altohiway.com/sr/rPhFm8GStdrTndxI 
 https://www.mailcontroller.altohiway.com/sr/rPhFm8GStdrTndxI!oX7UnlPSUZHzmrIysTKj2Z922Gvw1FmRXro8YkdWwkzu2XN1SwZVmyjaGt6aunJTqVygQ==
  
 to report this email as spam.

 This message has been scanned for viruses by MailController 
 http://www.MailController.altohiway.com/ 
 http://www.MailController.altohiway.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




[delphi-br] Componente para Agenda

2010-01-26 Por tôpico Andre Luis Silveria
Bom dia a todos, preciso desenvolver um software de agenda e gostaria de 
sugestões quanto a componentes para exibir os compromissos.
Já olhei os componentes ExpressScheduller, mas prefiria que fossem componentes 
open sources ou free.
Se tiverem alguma indicação agradeço desde já.

Atenciosamente,

André Luis da Silveira



  

Veja quais são os assuntos do momento no Yahoo! +Buscados
http://br.maisbuscados.yahoo.com

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



RE: [delphi-br] Componente para Agenda

2010-01-26 Por tôpico Rubem Nascimento da Rocha

Já olhou os componentes que tem na JVCL (JEDI Visual Component Library)?

Sds.
 


To: delphi-br@yahoogrupos.com.br
From: gyncow...@yahoo.com.br
Date: Tue, 26 Jan 2010 05:57:18 -0800
Subject: [delphi-br] Componente para Agenda

  



Bom dia a todos, preciso desenvolver um software de agenda e gostaria de 
sugestões quanto a componentes para exibir os compromissos.
Já olhei os componentes ExpressScheduller, mas prefiria que fossem componentes 
open sources ou free.
Se tiverem alguma indicação agradeço desde já.

Atenciosamente,

André Luis da Silveira

  
_
Com o Windows 7 nenhum arquivo vai se esconder de você. Clique para conhecer !
http://www.microsoft.com/brasil/windows7/default.html?WT.mc_id=1539

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



Re: [delphi-br] Componente no JEDI compatível com C urrencyEdit

2010-01-26 Por tôpico Nazareno Neto
amigo, se nao me angano no site da jedi tem um utilitario q convert do rx
para jcl/jvcl, pois o rx foi incorporado ao jedi

2010/1/26 Tico doutort...@gmail.com



 Pessoal, tenho um sistema em Delphi7 e estou migrando para o 2010. Existe
 algum componente no Jedi compatível com o CurrencyEdit?

 Abraços.

 João Carlos

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

  




-- 
Nazareno Neto
Programador Delphi e Firebird

http://www.delphisistemas.com.br
nazarenon...@hotmail.com
nazareno.nobr...@gmail.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] Conectar Firebird pela Internet

2010-01-26 Por tôpico Desenvolvimento
Caso vc tenha como migrar para o Datasnap vc terá um ganho absurdo de 
velocidade, caso contrário vc pode instalar o Zebedee que vc terá
um ganho razoável de velocidade (lembrando q vc terá q instalar o Zebedee no 
servidor e nas maquinas clientes) 



RE: [delphi-br] Comp onente no JEDI compa tível com CurrencyEdit

2010-01-26 Por tôpico Rubem Nascimento da Rocha

Corretíssimo, Nazareno! É isso mesmo!

Sds.

 
 To: delphi-br@yahoogrupos.com.br
 From: nazareno.nobr...@gmail.com
 Date: Tue, 26 Jan 2010 11:00:35 -0300
 Subject: Re: [delphi-br] Componente no JEDI compatível com CurrencyEdit
 
 amigo, se nao me angano no site da jedi tem um utilitario q convert do rx
 para jcl/jvcl, pois o rx foi incorporado ao jedi
 
 2010/1/26 Tico doutort...@gmail.com
 
 
 
  Pessoal, tenho um sistema em Delphi7 e estou migrando para o 2010. Existe
  algum componente no Jedi compatível com o CurrencyEdit?
 
  Abraços.
 
  João Carlos
 
  
_
Sabia que você tem 25Gb de armazenamento grátis na web? Conheça o Skydrive 
agora.
http://www.windowslive.com.br/public/product.aspx/view/5?ocid=CRM-WindowsLive:produtoSkyDrive:Tagline:WLCRM:On:WL:pt-BR:SkyDrive

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



[delphi-br] ref. gravar imagem bmp/jpg

2010-01-26 Por tôpico Omar Marques
Boa tarde, amigos(as),

Estou com uma questão sobre como salvar uma imagem JPG ou BMP num campo BLOB do 
Firebird.
Eu uso Delphi 5 Enterprise / Zeos Lib.

Tenho códigos prontos para jogar um BMP ou JPG para paradox, mas para jogar 
para BLOB não sei como.

Abraço e obrigado a todos.

 
 
 
Omar M. Haddad
Analista de Sistemas


  

Veja quais são os assuntos do momento no Yahoo! +Buscados
http://br.maisbuscados.yahoo.com

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



RE: [delphi-br] Componente para Agenda

2010-01-26 Por tôpico Ricardo César Cardoso
Mais especificamente a paleta JvTimeFramework.

Atte,
Ricardo.

1) Evite escrever suas mensagens usando somente LETRAS MAIÚSCULAS.

2) Revise o texto de sua mensagem. Uma mensagem bem escrita é melhor 
compreendida.

3) Vamos ajudar o Grupo e o Yahoo! Apague o conteúdo irrelevante!

--- Em ter, 26/1/10, Rubem Nascimento da Rocha djpardalro...@hotmail.com 
escreveu:

De: Rubem Nascimento da Rocha djpardalro...@hotmail.com
Assunto: RE: [delphi-br] Componente para Agenda
Para: delphi-br delphi-br@yahoogrupos.com.br
Data: Terça-feira, 26 de Janeiro de 2010, 12:14







 



  



  
  
  

Já olhou os componentes que tem na JVCL (JEDI Visual Component Library)?



Sds.

 



To: delphi...@yahoogrup os.com.br

From: gyncow...@yahoo. com.br

Date: Tue, 26 Jan 2010 05:57:18 -0800

Subject: [delphi-br] Componente para Agenda



Bom dia a todos, preciso desenvolver um software de agenda e gostaria de 
sugestões quanto a componentes para exibir os compromissos.

Já olhei os componentes ExpressScheduller, mas prefiria que fossem componentes 
open sources ou free.

Se tiverem alguma indicação agradeço desde já.



Atenciosamente,



André Luis da Silveira



  

 _ _ _ _ _ _

Com o Windows 7 nenhum arquivo vai se esconder de você. Clique para conhecer !

http://www.microsof t.com/brasil/ windows7/ default.html? WT.mc_id= 1539



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






 





 



  






  

Veja quais são os assuntos do momento no Yahoo! +Buscados
http://br.maisbuscados.yahoo.com

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



Re: [delphi-br] ref. gravar imagem bmp/jpg

2010-01-26 Por tôpico Jackson Gomes - ToolsComps

 Tenho códigos prontos para jogar um BMP ou JPG para paradox, mas para jogar 
 para BLOB não sei como.

http://jacklovesdelphi.blogspot.com/2010/01/carregando-uma-imagem-no-banco-de-dados.html

Jackson Gomes
ToolsComps - Controle de Usuários para Desenvolvedores CodeGear
Web Site: http://www.toolsandcomps.com
Nosso Fórum: http://groups.yahoo.com/group/toolsandcomps
e-mail: jack...@toolsandcomps.com
Fone: 27 3389 1138 - 8811 0324

http://jacklovesdelphi.blogspot.com - Delphi, Intraweb, etc

Devhost - Webhost para desenvolvedores Delphi
http://www.devhost.com.br
devh...@devhost.com.br 




[delphi-br] Re: PDF

2010-01-26 Por tôpico Jonata
Wagner, certamente há componentes que permitam trabalhar com pdf, mas devem ser 
pagos. Nada que uma googleada não resolva.

Mas conheço o bulzip (não é um componente, mas uma impressora) que imprime 
textos para pdf. Basta instalar no computador.

Atenciosamente, Jonatã.

--- Em delphi-br@yahoogrupos.com.br, ajama_1 ajam...@... escreveu

 Também queria saber como comprimir um PDF, estou tentando dessa forma logo 
 abaixo, mas o arquivo fica corrompido após a compresão.
 
 var oCompress: TCompressionStream; inpStream, outStream: TMemoryStream;
 begin
   inpStream := TMemoryStream.Create;
   outStream := TMemoryStream.Create;
   inpStream.LoadFromFile('C:\temp\teste.pdf');
   oCompress := TCompressionStream.Create(clMax, outStream);
   oCompress.CopyFrom(inpStream, inpStream.Size);
   oCompress.Free;
   outStream.SaveToFile('C:\temp\teste2.pdf');
   inpStream.Free;
   outStream.Free;
 end;
 
 --- Em delphi-br@yahoogrupos.com.br, wagps2000 wagps@ escreveu
 
  Olá Colegas da lista.
  
  ALguem sabe se tem como abrir arquivos.pdf através do Delphi
  
  Como ???
  
  value.
  
  Wagner
 





[delphi-br] Re: Evento OnPrint não executa (QuickReport)

2010-01-26 Por tôpico Jonata
Luciano, obrigado pela resposta, mas o evento estava funcionando. Depois de 
alguma coisa não funciona mais... Não sei o que aconteceu. Como disse, nos 
outros campos o evento funciona tranquilamente.

Grato,
Jonatã.

--- Em delphi-br@yahoogrupos.com.br, simoesluciano simoesluci...@... 
escreveu

 Você usou CTRL+C CTRL+V? Tenta apagar todo o código do evento, salvar, 
 acessar novamente o evento e fazer a programação.
 
 Luciano C. Simões
 
 --- Em delphi-br@yahoogrupos.com.br, Jonata jonata@ escreveu
 
  Olá!
  
  Intrigante o problema que estou passando. Tenho campos QRDBText dentro de 
  um QRSubDetail. Todos os campos disparam o seu respectivo evento OnPrint, 
  mas o último não dispara. Alguém sabe por que e como posso resolver?
  
  Grato, Jonatã.
 





Re: [delphi-br] Componente no JEDI compatível com Cu rrencyEdit

2010-01-26 Por tôpico josynho
pessoal pegando o gancho nesse topico 
gostaria de saber de vcs se tem algum segredo para  se Instalar o JEDI no 
delphi  7 e 2010
pois instalo a ultima versao que baixei no source forge mais nao aparece a 
barra de componente no delphi
?
precisa fazer alguma coisa pra ela aparecer?

  - Original Message - 
  From: Rubem Nascimento da Rocha 
  To: delphi-br 
  Sent: Tuesday, January 26, 2010 1:27 PM
  Subject: RE: [delphi-br] Componente no JEDI compatível com CurrencyEdit




  Corretíssimo, Nazareno! É isso mesmo!

  Sds.

   To: delphi-br@yahoogrupos.com.br
   From: nazareno.nobr...@gmail.com
   Date: Tue, 26 Jan 2010 11:00:35 -0300
   Subject: Re: [delphi-br] Componente no JEDI compatível com CurrencyEdit
   
   amigo, se nao me angano no site da jedi tem um utilitario q convert do rx
   para jcl/jvcl, pois o rx foi incorporado ao jedi
   
   2010/1/26 Tico doutort...@gmail.com
   
   
   
Pessoal, tenho um sistema em Delphi7 e estou migrando para o 2010. Existe
algum componente no Jedi compatível com o CurrencyEdit?
   
Abraços.
   
João Carlos
   

  __
  Sabia que você tem 25Gb de armazenamento grátis na web? Conheça o Skydrive 
agora.
  
http://www.windowslive.com.br/public/product.aspx/view/5?ocid=CRM-WindowsLive:produtoSkyDrive:Tagline:WLCRM:On:WL:pt-BR:SkyDrive

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



  

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



[delphi-br] Problemas com execução de sequencias de Query - Pa radox

2010-01-26 Por tôpico Diego Garcia
Olá amigos, como vão...
estou enfrentando um problema a algum tempo com um sistema de upgrade aqui
da empresa...
para resumir a questão.. esse sistema roda um série de Querys em um base
paradox, porem, para testar uma nova funcionalidade
peguei uma base de um cliente. Antes de começar os testes do sistema, testei
a base do cliente para me certificar que não estava
corrompida ou algo do tipo. Tudo ok. Então parti para o teste do sistema. Ao
final do processo, o sistema me retornou a msg de falha:

*Access violation at address 4CDF3573 in module 'IDPDX32.DLL'. Write of
address *
*
*
essa mensagem retornou do *Try* da função de executar query.
ele sempre volta essa msg relacionada a 3 querys diferentes. que rodadas
individualmente não causam problemas.
pesquisando esse erro, cai na seguinte pagina -
http://info.borland.com/devsupport/bde/fixes/50/paradox.html
onde encontrei esse texto:

*When running an application that appends records *

*in 2 or more threads, on table close,  occasionally
an errror 'Access Violation at 4ce12662 in  *

*idpdx32.dll*

baseado nisso, deixei uma das tabelas que recebe comando antes dessas
vazias. Para minha surpresa, um dos erros não aconteceu.
gostaria de saber se existe alguma forma de saber se a bde ainda está com um
query em execução, ou algo em que eu possa evitar esse erro.

desde já muito obrigado.

*Diego Garcia*


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



RES: [delphi-br] Re: PDF

2010-01-26 Por tôpico Felipe Lopes
Galera, to precisando é copiar o conteúdo de um arquivo pdf para uma
variável.

 

So que ao copiar, precisa identificar a pagina que estou copiando

 

Alguém sabe como me ajudar

 

De: delphi-br@yahoogrupos.com.br [mailto:delphi...@yahoogrupos.com.br] Em
nome de Jonata
Enviada em: terça-feira, 26 de janeiro de 2010 13:55
Para: delphi-br@yahoogrupos.com.br
Assunto: [delphi-br] Re: PDF

 

  

Wagner, certamente há componentes que permitam trabalhar com pdf, mas devem
ser pagos. Nada que uma googleada não resolva.

Mas conheço o bulzip (não é um componente, mas uma impressora) que imprime
textos para pdf. Basta instalar no computador.

Atenciosamente, Jonatã.

--- Em delphi-br@yahoogrupos.com.br mailto:delphi-br%40yahoogrupos.com.br
, ajama_1 ajam...@... escreveu

 Também queria saber como comprimir um PDF, estou tentando dessa forma logo
abaixo, mas o arquivo fica corrompido após a compresão.
 
 var oCompress: TCompressionStream; inpStream, outStream: TMemoryStream;
 begin
 inpStream := TMemoryStream.Create;
 outStream := TMemoryStream.Create;
 inpStream.LoadFromFile('C:\temp\teste.pdf');
 oCompress := TCompressionStream.Create(clMax, outStream);
 oCompress.CopyFrom(inpStream, inpStream.Size);
 oCompress.Free;
 outStream.SaveToFile('C:\temp\teste2.pdf');
 inpStream.Free;
 outStream.Free;
 end;
 
 --- Em delphi-br@yahoogrupos.com.br
mailto:delphi-br%40yahoogrupos.com.br , wagps2000 wagps@ escreveu
 
  Olá Colegas da lista.
  
  ALguem sabe se tem como abrir arquivos.pdf através do Delphi
  
  Como ???
  
  value.
  
  Wagner
 






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



[delphi-br] delphi com sqlserver

2010-01-26 Por tôpico Francisco
como conectar delphi ao sql server  alguém poderia dar essa ajudazinha ou 
compartilhar de um componente que faça a conexão uso delphi 7 e sqlserver 2000

 
-- 
 
 

   ,a_a
 {/ `   ´ \_ 
{\,_oo) Francisco sena do O' Filho
   sen...@gmail.com
   sen...@hotmail.com
  .
 {/   _^_,___;___;
.=. { /  \___ )  ) )* )| | | | | | | |
(.=.`\   {// =;  ~~ | | | /\ | | |
   \ `\  { /  (   \  / \   | | /   \ | |
\  `. `\)   )  | |  ( )  | |
   \\\\| | \   / | |
   \   //  /  /_ _   | | | \/ | | |
   '=   =''---   ) ) ) )  | | | | | | | |


 


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



[delphi-br] Importar dados do arquivo .dat para sql

2010-01-26 Por tôpico Heraldo Andrade
Caros colegas, nao sei se estou fazendo a pergunta no lugar certo, mas gostaria 
de saber se alguem sabe como eu transfiro arquivos .dat feito em cobol, para 
sql, descupem caso perguntei no lugar errado.


  

Veja quais são os assuntos do momento no Yahoo! +Buscados
http://br..maisbuscados.yahoo.com

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



[delphi-br] Pegar Serial Fisico de HD no Delphi 2010

2010-01-26 Por tôpico Iran Lima
Gente o que muda na função migrando para o Delphi 2010 ??? Existe AnsiWord e
AnsiByte ?? hehe, to botando tudo “ANSI”

 

function GetIdeDiskSerialNumber : String;

   type

TSrbIoControl = packed record

  HeaderLength: ULONG;

  Signature: Array[0..7] of Char;

  Timeout: ULONG;

  ControlCode: ULONG;

  ReturnCode: ULONG;

  Length: ULONG;

   end;

   SRB_IO_CONTROL = TSrbIoControl;

   PSrbIoControl = ^TSrbIoControl;

 

TIDERegs = packed record

  bFeaturesReg : Byte; // especificar comandos SMART

  bSectorCountReg : Byte; // registro de contador de setor

  bSectorNumberReg : Byte; // registro de número de setores

  bCylLowReg : Byte; // valor de cilindro (byte mais baixo)

  bCylHighReg : Byte; // valor de cilindro (byte mais alto)

  bDriveHeadReg : Byte; // registro de drive/cabeça

  bCommandReg : Byte; // comando IDE

  bReserved : Byte; // reservado- tem que ser zero

   end;

IDEREGS = TIDERegs;

PIDERegs = ^TIDERegs;

 

   TSendCmdInParams = packed record

  cBufferSize : DWORD;

  irDriveRegs : TIDERegs;

  bDriveNumber : Byte;

  bReserved : Array[0..2] of Byte;

  dwReserved : Array[0..3] of DWORD;

  bBuffer : Array[0..0] of Byte;

end;

SENDCMDINPARAMS = TSendCmdInParams;

PSendCmdInParams = ^TSendCmdInParams;

 

TIdSector = packed record

  wGenConfig : Word;

  wNumCyls : Word;

  wReserved : Word;

  wNumHeads : Word;

  wBytesPerTrack : Word;

  wBytesPerSector : Word;

  wSectorsPerTrack : Word;

  wVendorUnique : Array[0..2] of Word;

  sSerialNumber : Array[0..19] of Char;

  wBufferType : Word;

  wBufferSize : Word;

  wECCSize : Word;

  sFirmwareRev : Array[0..7] of Char;

  sModelNumber : Array[0..39] of Char;

  wMoreVendorUnique : Word;

  wDoubleWordIO : Word;

  wCapabilities : Word;

  wReserved1 : Word;

  wPIOTiming : Word;

  wDMATiming : Word;

  wBS : Word;

  wNumCurrentCyls : Word;

  wNumCurrentHeads : Word;

  wNumCurrentSectorsPerTrack : Word;

  ulCurrentSectorCapacity : ULONG;

  wMultSectorStuff : Word;

  ulTotalAddressableSectors : ULONG;

  wSingleWordDMA : Word;

  wMultiWordDMA : Word;

  bReserved : Array[0..127] of Byte;

end;

PIdSector = ^TIdSector;

 

  const

IDE_ID_FUNCTION = $EC;

IDENTIFY_BUFFER_SIZE = 512;

DFP_RECEIVE_DRIVE_DATA = $0007c088;

IOCTL_SCSI_MINIPORT = $0004d008;

IOCTL_SCSI_MINIPORT_IDENTIFY = $001b0501;

DataSize = sizeof(TSendCmdInParams)-1+IDENTIFY_BUFFER_SIZE;

BufferSize = SizeOf(SRB_IO_CONTROL)+DataSize;

W9xBufferSize = IDENTIFY_BUFFER_SIZE+16;

  var

hDevice : THandle;

cbBytesReturned : DWORD;

pInData : PSendCmdInParams;

pOutData : Pointer; // PSendCmdOutParams

Buffer : Array[0..BufferSize-1] of Byte;

srbControl : TSrbIoControl absolute Buffer;

 

  begin

Result := '';

FillChar(Buffer,BufferSize,#0);

 

if Win32Platform=VER_PLATFORM_WIN32_NT then

// Windows NT, Windows 2000, Windows XP

begin

  // recuperar handle da porta SCSI

  hDevice := CreateFile(PChar('\\.\' + GetSysDrive), 

  // Nota: '\\.\C:' precisa de privilégios administrativos

  GENERIC_READ or GENERIC_WRITE, FILE_SHARE_READ or FILE_SHARE_WRITE,
nil, OPEN_EXISTING, 0, 0);

  if hDevice=INVALID_HANDLE_VALUE then Exit;

  try

srbControl.HeaderLength := SizeOf(SRB_IO_CONTROL);

System.Move('SCSIDISK',srbControl.Signature,8);

srbControl.Timeout := 2;

srbControl.Length := DataSize;

srbControl.ControlCode := IOCTL_SCSI_MINIPORT_IDENTIFY;

pInData := PSendCmdInParams(PChar(@Buffer)

+SizeOf(SRB_IO_CONTROL));

pOutData := pInData;

   with pInData^ do

   begin

 cBufferSize := IDENTIFY_BUFFER_SIZE;

 bDriveNumber := 0;

 with irDriveRegs do

 begin

   bFeaturesReg := 0;

   bSectorCountReg := 1;

   bSectorNumberReg := 1;

   bCylLowReg := 0;

   bCylHighReg := 0;

   bDriveHeadReg := $A0;

   bCommandReg := IDE_ID_FUNCTION;

 end;

end;

if not DeviceIoControl( hDevice, IOCTL_SCSI_MINIPORT, @Buffer,
BufferSize, @Buffer, BufferSize, cbBytesReturned, nil ) then Exit;

finally

  CloseHandle(hDevice);

end;

   end

   else

   begin

  // Windows 95 OSR2, Windows 98, Windows ME

  hDevice := CreateFile( '\\.\SMARTVSD', 0, 0, nil, CREATE_NEW, 0, 0 );

  if hDevice=INVALID_HANDLE_VALUE then Exit;

  try

pInData := PSendCmdInParams(@Buffer);

pOutData := @pInData^.bBuffer;

with pInData^ do

begin

   cBufferSize := IDENTIFY_BUFFER_SIZE;

   bDriveNumber := 0;

   with irDriveRegs do

   begin

 bFeaturesReg := 0;

 

[delphi-br] Problemas com acentuação Delphi e MySQL

2010-01-26 Por tôpico Ricardo Ravelli
Boa noite, 

 

Eu criei um form de Cadastro de Vendedores, utilizando do D2010 e MySQL 5.1,
utilizo os componentes DbExpress para a comunicação no banco de dados.

 

O que acontece é o seguinte: Eu cadastro o Nome de uma pessoa, por exemplo
José, mas no banco de dados ele troca a letra com acento por caracteres
estranhos José. 

 

O problema está no Delphi ou no MySQL? O que devo fazer para corrigir esse
problema?

 

Obrigado.

 

Att.

Ricardo Ravelli.



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



RES: [delphi-br] Pegar Serial Fisico de HD no Delphi 2010

2010-01-26 Por tôpico Rubem Rocha
O mais importante você, com certeza, não falou: qual é o erro/exceção que
ocorre?

Sds.

 

 

De: delphi-br@yahoogrupos.com.br [mailto:delphi...@yahoogrupos.com.br] Em
nome de Iran Lima
Enviada em: terça-feira, 26 de janeiro de 2010 16:55
Para: delphi-br@yahoogrupos.com.br
Assunto: [delphi-br] Pegar Serial Fisico de HD no Delphi 2010

 

  

Gente o que muda na função migrando para o Delphi 2010 ??? Existe AnsiWord e
AnsiByte ?? hehe, to botando tudo “ANSI”

function GetIdeDiskSerialNumber : String;

type

TSrbIoControl = packed record

HeaderLength: ULONG;

Signature: Array[0..7] of Char;

Timeout: ULONG;

ControlCode: ULONG;

ReturnCode: ULONG;

Length: ULONG;

end;

SRB_IO_CONTROL = TSrbIoControl;

PSrbIoControl = ^TSrbIoControl;

TIDERegs = packed record

bFeaturesReg : Byte; // especificar comandos SMART

bSectorCountReg : Byte; // registro de contador de setor

bSectorNumberReg : Byte; // registro de número de setores

bCylLowReg : Byte; // valor de cilindro (byte mais baixo)

bCylHighReg : Byte; // valor de cilindro (byte mais alto)

bDriveHeadReg : Byte; // registro de drive/cabeça

bCommandReg : Byte; // comando IDE

bReserved : Byte; // reservado- tem que ser zero

end;

IDEREGS = TIDERegs;

PIDERegs = ^TIDERegs;

TSendCmdInParams = packed record

cBufferSize : DWORD;

irDriveRegs : TIDERegs;

bDriveNumber : Byte;

bReserved : Array[0..2] of Byte;

dwReserved : Array[0..3] of DWORD;

bBuffer : Array[0..0] of Byte;

end;

SENDCMDINPARAMS = TSendCmdInParams;

PSendCmdInParams = ^TSendCmdInParams;

TIdSector = packed record

wGenConfig : Word;

wNumCyls : Word;

wReserved : Word;

wNumHeads : Word;

wBytesPerTrack : Word;

wBytesPerSector : Word;

wSectorsPerTrack : Word;

wVendorUnique : Array[0..2] of Word;

sSerialNumber : Array[0..19] of Char;

wBufferType : Word;

wBufferSize : Word;

wECCSize : Word;

sFirmwareRev : Array[0..7] of Char;

sModelNumber : Array[0..39] of Char;

wMoreVendorUnique : Word;

wDoubleWordIO : Word;

wCapabilities : Word;

wReserved1 : Word;

wPIOTiming : Word;

wDMATiming : Word;

wBS : Word;

wNumCurrentCyls : Word;

wNumCurrentHeads : Word;

wNumCurrentSectorsPerTrack : Word;

ulCurrentSectorCapacity : ULONG;

wMultSectorStuff : Word;

ulTotalAddressableSectors : ULONG;

wSingleWordDMA : Word;

wMultiWordDMA : Word;

bReserved : Array[0..127] of Byte;

end;

PIdSector = ^TIdSector;

const

IDE_ID_FUNCTION = $EC;

IDENTIFY_BUFFER_SIZE = 512;

DFP_RECEIVE_DRIVE_DATA = $0007c088;

IOCTL_SCSI_MINIPORT = $0004d008;

IOCTL_SCSI_MINIPORT_IDENTIFY = $001b0501;

DataSize = sizeof(TSendCmdInParams)-1+IDENTIFY_BUFFER_SIZE;

BufferSize = SizeOf(SRB_IO_CONTROL)+DataSize;

W9xBufferSize = IDENTIFY_BUFFER_SIZE+16;

var

hDevice : THandle;

cbBytesReturned : DWORD;

pInData : PSendCmdInParams;

pOutData : Pointer; // PSendCmdOutParams

Buffer : Array[0..BufferSize-1] of Byte;

srbControl : TSrbIoControl absolute Buffer;

begin

Result := '';

FillChar(Buffer,BufferSize,#0);

if Win32Platform=VER_PLATFORM_WIN32_NT then

// Windows NT, Windows 2000, Windows XP

begin

// recuperar handle da porta SCSI

hDevice := CreateFile(PChar('\\.\' + GetSysDrive), 

// Nota: '\\.\C:' precisa de privilégios administrativos

GENERIC_READ or GENERIC_WRITE, FILE_SHARE_READ or FILE_SHARE_WRITE,
nil, OPEN_EXISTING, 0, 0);

if hDevice=INVALID_HANDLE_VALUE then Exit;

try

srbControl.HeaderLength := SizeOf(SRB_IO_CONTROL);

System.Move('SCSIDISK',srbControl.Signature,8);

srbControl.Timeout := 2;

srbControl.Length := DataSize;

srbControl.ControlCode := IOCTL_SCSI_MINIPORT_IDENTIFY;

pInData := PSendCmdInParams(PChar(@Buffer)

+SizeOf(SRB_IO_CONTROL));

pOutData := pInData;

with pInData^ do

begin

cBufferSize := IDENTIFY_BUFFER_SIZE;

bDriveNumber := 0;

with irDriveRegs do

begin

bFeaturesReg := 0;

bSectorCountReg := 1;

bSectorNumberReg := 1;

bCylLowReg := 0;

bCylHighReg := 0;

bDriveHeadReg := $A0;

bCommandReg := IDE_ID_FUNCTION;

end;

end;

if not DeviceIoControl( hDevice, IOCTL_SCSI_MINIPORT, @Buffer,
BufferSize, @Buffer, BufferSize, cbBytesReturned, nil ) then Exit;

finally

CloseHandle(hDevice);

end;

end

else

begin

// Windows 95 OSR2, Windows 98, Windows ME

hDevice := CreateFile( '\\.\SMARTVSD', 0, 0, nil, CREATE_NEW, 0, 0 );

if hDevice=INVALID_HANDLE_VALUE then Exit;

try

pInData := PSendCmdInParams(@Buffer);

pOutData := @pInData^.bBuffer;

with pInData^ do

begin

cBufferSize := IDENTIFY_BUFFER_SIZE;

bDriveNumber := 0;

with irDriveRegs do

begin

bFeaturesReg := 0;

bSectorCountReg := 1;

bSectorNumberReg := 1;

bCylLowReg := 0;

bCylHighReg := 0;

bDriveHeadReg := $A0;

bCommandReg := IDE_ID_FUNCTION;

end;

end;

if not DeviceIoControl( hDevice, DFP_RECEIVE_DRIVE_DATA, pInData,
SizeOf(TSendCmdInParams)-1, pOutData, W9xBufferSize, cbBytesReturned, nil )
then Exit;

finally

CloseHandle(hDevice);

end;

end;

with PIdSector(PChar(pOutData)+16)^ do

begin

ChangeByteOrder(sSerialNumber,SizeOf(sSerialNumber));

SetString(Result,sSerialNumber,SizeOf(sSerialNumber));

end;


RES: [delphi-br] Pegar Serial Fisico de HD no Delphi 2010

2010-01-26 Por tôpico Rubem Rocha
Outras coisas:



1)  Vc quer pegar o serial de um HD SCSI ou IDE? Essa daí só funciona
pra SCSI. Do mesmo jeito q vc conseguiu essa pra SCSI, vc tb vai conseguir a
função pra IDE.

2)  Cadê o código dessa rotina ChangeByteOrder?

 

Sds.

 

De: delphi-br@yahoogrupos.com.br [mailto:delphi...@yahoogrupos.com.br] Em
nome de Iran Lima
Enviada em: terça-feira, 26 de janeiro de 2010 16:55
Para: delphi-br@yahoogrupos.com.br
Assunto: [delphi-br] Pegar Serial Fisico de HD no Delphi 2010

 

  

Gente o que muda na função migrando para o Delphi 2010 ??? Existe AnsiWord e
AnsiByte ?? hehe, to botando tudo “ANSI”

function GetIdeDiskSerialNumber : String;

type

TSrbIoControl = packed record

HeaderLength: ULONG;

Signature: Array[0..7] of Char;

Timeout: ULONG;

ControlCode: ULONG;

ReturnCode: ULONG;

Length: ULONG;

end;

SRB_IO_CONTROL = TSrbIoControl;

PSrbIoControl = ^TSrbIoControl;

TIDERegs = packed record

bFeaturesReg : Byte; // especificar comandos SMART

bSectorCountReg : Byte; // registro de contador de setor

bSectorNumberReg : Byte; // registro de número de setores

bCylLowReg : Byte; // valor de cilindro (byte mais baixo)

bCylHighReg : Byte; // valor de cilindro (byte mais alto)

bDriveHeadReg : Byte; // registro de drive/cabeça

bCommandReg : Byte; // comando IDE

bReserved : Byte; // reservado- tem que ser zero

end;

IDEREGS = TIDERegs;

PIDERegs = ^TIDERegs;

TSendCmdInParams = packed record

cBufferSize : DWORD;

irDriveRegs : TIDERegs;

bDriveNumber : Byte;

bReserved : Array[0..2] of Byte;

dwReserved : Array[0..3] of DWORD;

bBuffer : Array[0..0] of Byte;

end;

SENDCMDINPARAMS = TSendCmdInParams;

PSendCmdInParams = ^TSendCmdInParams;

TIdSector = packed record

wGenConfig : Word;

wNumCyls : Word;

wReserved : Word;

wNumHeads : Word;

wBytesPerTrack : Word;

wBytesPerSector : Word;

wSectorsPerTrack : Word;

wVendorUnique : Array[0..2] of Word;

sSerialNumber : Array[0..19] of Char;

wBufferType : Word;

wBufferSize : Word;

wECCSize : Word;

sFirmwareRev : Array[0..7] of Char;

sModelNumber : Array[0..39] of Char;

wMoreVendorUnique : Word;

wDoubleWordIO : Word;

wCapabilities : Word;

wReserved1 : Word;

wPIOTiming : Word;

wDMATiming : Word;

wBS : Word;

wNumCurrentCyls : Word;

wNumCurrentHeads : Word;

wNumCurrentSectorsPerTrack : Word;

ulCurrentSectorCapacity : ULONG;

wMultSectorStuff : Word;

ulTotalAddressableSectors : ULONG;

wSingleWordDMA : Word;

wMultiWordDMA : Word;

bReserved : Array[0..127] of Byte;

end;

PIdSector = ^TIdSector;

const

IDE_ID_FUNCTION = $EC;

IDENTIFY_BUFFER_SIZE = 512;

DFP_RECEIVE_DRIVE_DATA = $0007c088;

IOCTL_SCSI_MINIPORT = $0004d008;

IOCTL_SCSI_MINIPORT_IDENTIFY = $001b0501;

DataSize = sizeof(TSendCmdInParams)-1+IDENTIFY_BUFFER_SIZE;

BufferSize = SizeOf(SRB_IO_CONTROL)+DataSize;

W9xBufferSize = IDENTIFY_BUFFER_SIZE+16;

var

hDevice : THandle;

cbBytesReturned : DWORD;

pInData : PSendCmdInParams;

pOutData : Pointer; // PSendCmdOutParams

Buffer : Array[0..BufferSize-1] of Byte;

srbControl : TSrbIoControl absolute Buffer;

begin

Result := '';

FillChar(Buffer,BufferSize,#0);

if Win32Platform=VER_PLATFORM_WIN32_NT then

// Windows NT, Windows 2000, Windows XP

begin

// recuperar handle da porta SCSI

hDevice := CreateFile(PChar('\\.\' + GetSysDrive), 

// Nota: '\\.\C:' precisa de privilégios administrativos

GENERIC_READ or GENERIC_WRITE, FILE_SHARE_READ or FILE_SHARE_WRITE,
nil, OPEN_EXISTING, 0, 0);

if hDevice=INVALID_HANDLE_VALUE then Exit;

try

srbControl.HeaderLength := SizeOf(SRB_IO_CONTROL);

System.Move('SCSIDISK',srbControl.Signature,8);

srbControl.Timeout := 2;

srbControl.Length := DataSize;

srbControl.ControlCode := IOCTL_SCSI_MINIPORT_IDENTIFY;

pInData := PSendCmdInParams(PChar(@Buffer)

+SizeOf(SRB_IO_CONTROL));

pOutData := pInData;

with pInData^ do

begin

cBufferSize := IDENTIFY_BUFFER_SIZE;

bDriveNumber := 0;

with irDriveRegs do

begin

bFeaturesReg := 0;

bSectorCountReg := 1;

bSectorNumberReg := 1;

bCylLowReg := 0;

bCylHighReg := 0;

bDriveHeadReg := $A0;

bCommandReg := IDE_ID_FUNCTION;

end;

end;

if not DeviceIoControl( hDevice, IOCTL_SCSI_MINIPORT, @Buffer,
BufferSize, @Buffer, BufferSize, cbBytesReturned, nil ) then Exit;

finally

CloseHandle(hDevice);

end;

end

else

begin

// Windows 95 OSR2, Windows 98, Windows ME

hDevice := CreateFile( '\\.\SMARTVSD', 0, 0, nil, CREATE_NEW, 0, 0 );

if hDevice=INVALID_HANDLE_VALUE then Exit;

try

pInData := PSendCmdInParams(@Buffer);

pOutData := @pInData^.bBuffer;

with pInData^ do

begin

cBufferSize := IDENTIFY_BUFFER_SIZE;

bDriveNumber := 0;

with irDriveRegs do

begin

bFeaturesReg := 0;

bSectorCountReg := 1;

bSectorNumberReg := 1;

bCylLowReg := 0;

bCylHighReg := 0;

bDriveHeadReg := $A0;

bCommandReg := IDE_ID_FUNCTION;

end;

end;

if not DeviceIoControl( hDevice, DFP_RECEIVE_DRIVE_DATA, pInData,
SizeOf(TSendCmdInParams)-1, pOutData, W9xBufferSize, cbBytesReturned, nil )
then Exit;

finally

CloseHandle(hDevice);

end;

end;

with 

RES: [delphi-br] Pegar Serial Fisico de HD no Delphi 2010

2010-01-26 Por tôpico Rubem Rocha
E essa função GetSysDrive()? Cadê? Tá vendo, pressa pra querer as coisa
resolvida e esquece de, além de explicar com detalhes a dúvida, pedaços de
código! L

 

Sds.

 

De: Rubem Rocha [mailto:rubem.ro...@dtmanaus.com.br] 
Enviada em: terça-feira, 26 de janeiro de 2010 17:50
Para: 'delphi-br@yahoogrupos.com.br'
Assunto: RES: [delphi-br] Pegar Serial Fisico de HD no Delphi 2010
Prioridade: Alta

 

Outras coisas:

1)  Vc quer pegar o serial de um HD SCSI ou IDE? Essa daí só funciona
pra SCSI. Do mesmo jeito q vc conseguiu essa pra SCSI, vc tb vai conseguir a
função pra IDE.

2)  Cadê o código dessa rotina ChangeByteOrder?

 

Sds.

 

De: delphi-br@yahoogrupos.com.br [mailto:delphi...@yahoogrupos.com.br] Em
nome de Iran Lima
Enviada em: terça-feira, 26 de janeiro de 2010 16:55
Para: delphi-br@yahoogrupos.com.br
Assunto: [delphi-br] Pegar Serial Fisico de HD no Delphi 2010

 

  

Gente o que muda na função migrando para o Delphi 2010 ??? Existe AnsiWord e
AnsiByte ?? hehe, to botando tudo “ANSI”

function GetIdeDiskSerialNumber : String;

type

TSrbIoControl = packed record

HeaderLength: ULONG;

Signature: Array[0..7] of Char;

Timeout: ULONG;

ControlCode: ULONG;

ReturnCode: ULONG;

Length: ULONG;

end;

SRB_IO_CONTROL = TSrbIoControl;

PSrbIoControl = ^TSrbIoControl;

TIDERegs = packed record

bFeaturesReg : Byte; // especificar comandos SMART

bSectorCountReg : Byte; // registro de contador de setor

bSectorNumberReg : Byte; // registro de número de setores

bCylLowReg : Byte; // valor de cilindro (byte mais baixo)

bCylHighReg : Byte; // valor de cilindro (byte mais alto)

bDriveHeadReg : Byte; // registro de drive/cabeça

bCommandReg : Byte; // comando IDE

bReserved : Byte; // reservado- tem que ser zero

end;

IDEREGS = TIDERegs;

PIDERegs = ^TIDERegs;

TSendCmdInParams = packed record

cBufferSize : DWORD;

irDriveRegs : TIDERegs;

bDriveNumber : Byte;

bReserved : Array[0..2] of Byte;

dwReserved : Array[0..3] of DWORD;

bBuffer : Array[0..0] of Byte;

end;

SENDCMDINPARAMS = TSendCmdInParams;

PSendCmdInParams = ^TSendCmdInParams;

TIdSector = packed record

wGenConfig : Word;

wNumCyls : Word;

wReserved : Word;

wNumHeads : Word;

wBytesPerTrack : Word;

wBytesPerSector : Word;

wSectorsPerTrack : Word;

wVendorUnique : Array[0..2] of Word;

sSerialNumber : Array[0..19] of Char;

wBufferType : Word;

wBufferSize : Word;

wECCSize : Word;

sFirmwareRev : Array[0..7] of Char;

sModelNumber : Array[0..39] of Char;

wMoreVendorUnique : Word;

wDoubleWordIO : Word;

wCapabilities : Word;

wReserved1 : Word;

wPIOTiming : Word;

wDMATiming : Word;

wBS : Word;

wNumCurrentCyls : Word;

wNumCurrentHeads : Word;

wNumCurrentSectorsPerTrack : Word;

ulCurrentSectorCapacity : ULONG;

wMultSectorStuff : Word;

ulTotalAddressableSectors : ULONG;

wSingleWordDMA : Word;

wMultiWordDMA : Word;

bReserved : Array[0..127] of Byte;

end;

PIdSector = ^TIdSector;

const

IDE_ID_FUNCTION = $EC;

IDENTIFY_BUFFER_SIZE = 512;

DFP_RECEIVE_DRIVE_DATA = $0007c088;

IOCTL_SCSI_MINIPORT = $0004d008;

IOCTL_SCSI_MINIPORT_IDENTIFY = $001b0501;

DataSize = sizeof(TSendCmdInParams)-1+IDENTIFY_BUFFER_SIZE;

BufferSize = SizeOf(SRB_IO_CONTROL)+DataSize;

W9xBufferSize = IDENTIFY_BUFFER_SIZE+16;

var

hDevice : THandle;

cbBytesReturned : DWORD;

pInData : PSendCmdInParams;

pOutData : Pointer; // PSendCmdOutParams

Buffer : Array[0..BufferSize-1] of Byte;

srbControl : TSrbIoControl absolute Buffer;

begin

Result := '';

FillChar(Buffer,BufferSize,#0);

if Win32Platform=VER_PLATFORM_WIN32_NT then

// Windows NT, Windows 2000, Windows XP

begin

// recuperar handle da porta SCSI

hDevice := CreateFile(PChar('\\.\' + GetSysDrive), 

// Nota: '\\.\C:' precisa de privilégios administrativos

GENERIC_READ or GENERIC_WRITE, FILE_SHARE_READ or FILE_SHARE_WRITE,
nil, OPEN_EXISTING, 0, 0);

if hDevice=INVALID_HANDLE_VALUE then Exit;

try

srbControl.HeaderLength := SizeOf(SRB_IO_CONTROL);

System.Move('SCSIDISK',srbControl.Signature,8);

srbControl.Timeout := 2;

srbControl.Length := DataSize;

srbControl.ControlCode := IOCTL_SCSI_MINIPORT_IDENTIFY;

pInData := PSendCmdInParams(PChar(@Buffer)

+SizeOf(SRB_IO_CONTROL));

pOutData := pInData;

with pInData^ do

begin

cBufferSize := IDENTIFY_BUFFER_SIZE;

bDriveNumber := 0;

with irDriveRegs do

begin

bFeaturesReg := 0;

bSectorCountReg := 1;

bSectorNumberReg := 1;

bCylLowReg := 0;

bCylHighReg := 0;

bDriveHeadReg := $A0;

bCommandReg := IDE_ID_FUNCTION;

end;

end;

if not DeviceIoControl( hDevice, IOCTL_SCSI_MINIPORT, @Buffer,
BufferSize, @Buffer, BufferSize, cbBytesReturned, nil ) then Exit;

finally

CloseHandle(hDevice);

end;

end

else

begin

// Windows 95 OSR2, Windows 98, Windows ME

hDevice := CreateFile( '\\.\SMARTVSD', 0, 0, nil, CREATE_NEW, 0, 0 );

if hDevice=INVALID_HANDLE_VALUE then Exit;

try

pInData := PSendCmdInParams(@Buffer);

pOutData := @pInData^.bBuffer;

with pInData^ do

begin

cBufferSize := IDENTIFY_BUFFER_SIZE;

bDriveNumber := 0;

with