RE: [delphi-br] Conectar Firebird pela Internet
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
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
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
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
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
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
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
*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
*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
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
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
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
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
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
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
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
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
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
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
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
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
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
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)
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
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
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
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
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
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
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
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
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
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
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