[delphi-br] Conexção remota Mssql x Interne t
É uma alternativa... Mas eu, particularmente, não acho seguro abrir a porta do MSSQL... ainda mais se for a padrão! Se for fazer dessa maneira, altere a porta... já é uma forma de se previnir de invasões... E antes que isso vire uma novela como vem acontecendo com outros assuntos, quero deixar claro que essa é uma opinião pessoal! Nada contra nada e contra ninguém! Estamos aqui para compartilhar conhecimento e experiência! -- Eny Trova Urias Somos o que repetitivamente fazemos, portanto, a excelência não é um feito, mas um hábito- Aristóteles De: Claudiney Cogo claudiney-lis...@n2solutions.com.br Para: delphi-br@yahoogrupos.com.br Enviadas: Sexta-feira, 18 de Junho de 2010 21:56:15 Assunto: RES: [delphi-br] Conexção remota Mssql x Internet Olá Denilson. Lá no local onde está o o servidor MSSQL abra a porta 1433 (se não foi alterada, esta é a porta padrão) no roteador adsl e aponte para o servidor. Caso não tenha aqui um ip fixo, utilize um serviço qualquer de dns dinâmico, tipo dyndns (www.dyndns.com) para criar um nome para onde apontar. Se o ip for fixo, aponte para o ip direto. Utilizando string de conexão isso funciona perfeitamente. Não trabalhei muito com BDE, mas acredito que o procedimento seja o mesmo. Dessa maneira você pode inclusive utilizar os utilitários do próprio MSSQL para dar manutenção no banco remoto, conectando diretamente lá. Abraço _ Claudiney Cogo N2 Sistemas e Soluções em Informática Av. São Paulo, 172 - 15º Andar - Sala 1505 Fone/Fax: (44) 3029-6053 - Maringá - Paraná http://www.n2solutions.com.br/ www.n2solutions.com.br http://www.nfe.n2solutions.com.br/ www.nfe.n2solutions.com.br http://www.studion2.com.br/ www.studion2.com.br De: delphi-br@yahoogrupos.com.br [mailto:delphi...@yahoogrupos.com.br] Em nome de denilson rezende Enviada em: sexta-feira, 18 de junho de 2010 17:21 Para: lista-del...@yahoogrupos.com.br; delphi-br@yahoogrupos.com.br; mssq...@yahoogrupos.com.br Assunto: [delphi-br] Conexção remota Mssql x Internet Tenho um sistema Delphi 5.0 com Banco de Dados SqlServer 2000 preciso fazer uma conexção remota utilizando o BDE Para uma Filial x Matrix temos a internet Velox. Obrigado [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]
[delphi-br] Re: Executar aplicativos a partir da memória
Bom dia Dirlei, acho que entendi, por isso que por regra sempre imagino que tudo é possível, mesmo que as vezes se prove o contrário rsrsrs, tem vezes que é mais uma questão de criatividade do que técnica propriamente dita, mas... será que eu poderia a partir do Delphi, chamar a VM com o parâmetro ? ou seja, o conteúdo binário que esta na variável, assim eu teria mais controle e de forma fácil... talvez ainda precisaria ter a VM personalizada... Grato Eric Developer Systems www.magaldi.eti.br --- Em delphi-br@yahoogrupos.com.br, Dirlei Dionísio dir...@... escreveu Eric, Suponho que *o que você quer fazer*, seja possível, mas não *do jeito que você quer*. Executar programas em memória, sem que eles sejam carregados do disco (como um executável) é possível através de uma Máquina Virtual. Não me refiro a programas do tipo VMWare ou VirtualBox, mas a programas como a JVM (Java Virtual Machine). Você deve saber que a JVM é um processo (.exe no Win) que lê e executa programas Java compilados, mas que não são executáveis. Pois bem, o seu programa principal - aquele EXE que lê o banco de dados - pode funcionar como uma máquina virtual, executando programas compilados para a sua VM (Virtual Machine). Você não precisa criar uma VM, pode utilizar linguagens de extensão que já possuem uma. Exemplos são o Python e Lua (criada na PUC-Rio). Já fiz experimentos nessa linha com Lua e Delphi juntos. No meu caso os scripts lua eram armazenados em disco, compactados e criptografados, mas poderiam muito bem estar num banco de dados. Outros colegas fizeram experimentos com C e Python, C e Lua e C e Perl. A melhor linguagem de extensão para as nossas necessidades se mostrou ser Lua, por ser pequena, rápida e fácil de escrever. Se você se interessar em trabalhar nessa linha, posso te passar mais informações. []'s -- Dirlei Dionísio Novo artigo: O estágio House do bom programador http://MaisQueBomCodigo.blogspot.com --- Em delphi-br@yahoogrupos.com.br, eric_developer developer.syst...@... escreveu Bom dia, alguem sabe informar se é possível (e como) executar aplicativos windows (EXE qualquer) a partir da memória ? ou seja, supondo que armazenei o mesmo em banco de dados e efetuei um load para variavel de memória, a partir daí executá-lo, sem precisar descarregar em disco. Eric Developer Systems www.magaldi.eti.br
Re: RES: RES: [delphi-br] Executar aplicativos a par tir da memória
Li esse artigo sobre carregar e executar Dlls diretamente da memória, Load a DLL From a Resource Directly From Memory in Delphi Applicationshttp://delphi.about.com/od/windowsshellapi/a/delphi-load-resource-dll-into-memory.htm, não é o que vc precisa mais talvez te dê uma luz. Seguindo a linha de raciocínio do Dirlei Dionísio, tem tbm o Pascal Script. Em 18 de junho de 2010 22:08, Dirlei Dionísio dir...@gmail.com escreveu: Eric, Suponho que *o que você quer fazer*, seja possível, mas não *do jeito que você quer*. Executar programas em memória, sem que eles sejam carregados do disco (como um executável) é possível através de uma Máquina Virtual. Não me refiro a programas do tipo VMWare ou VirtualBox, mas a programas como a JVM (Java Virtual Machine). Você deve saber que a JVM é um processo (.exe no Win) que lê e executa programas Java compilados, mas que não são executáveis. Pois bem, o seu programa principal - aquele EXE que lê o banco de dados - pode funcionar como uma máquina virtual, executando programas compilados para a sua VM (Virtual Machine). Você não precisa criar uma VM, pode utilizar linguagens de extensão que já possuem uma. Exemplos são o Python e Lua (criada na PUC-Rio). Já fiz experimentos nessa linha com Lua e Delphi juntos. No meu caso os scripts lua eram armazenados em disco, compactados e criptografados, mas poderiam muito bem estar num banco de dados. Outros colegas fizeram experimentos com C e Python, C e Lua e C e Perl. A melhor linguagem de extensão para as nossas necessidades se mostrou ser Lua, por ser pequena, rápida e fácil de escrever. Se você se interessar em trabalhar nessa linha, posso te passar mais informações. []'s -- Dirlei Dionísio Novo artigo: O estágio House do bom programador http://MaisQueBomCodigo.blogspot.com Em 18 de junho de 2010 19:10, Rubem Rocha rubem.ro...@dtmanaus.com.br escreveu: Não contraria, pois o RAM Drive constaria na memória, e como vc quer executar um binário que está em memória, ... Resta só pesquisar pra saber como criar um RAM drive via API do Windows. E mais ainda, descobrir como esse RAM Drive seja visível somente à sua aplicação. Sds. De: delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.br [mailto: delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.br] Em nome de eric_developer Enviada em: sexta-feira, 18 de junho de 2010 18:09 Para: delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.br Assunto: Re: RES: RES: [delphi-br] Executar aplicativos a partir da memória pelo Delphi ou outra linguagem, talvez o que desejo exatamente não seja possível, como eu disse, é possível criar disco virtual usando um pedaço da RAM, ou seja, acredito que isso já contraria o que descreveu, mas enfim... Caso alguém conheça uma forma, por favor, nos informe. Grato, Eric Developer Systems www.magaldi.eti.br --- Em delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.br mailto: delphi-br%40yahoogrupos.com.br delphi-br%2540yahoogrupos.com.br , Rubem Rocha rubem.ro...@... escreveu Em qualquer ambiente operacional, todo processo é um programa em execução, e um programa nada mais é do que código a ser executado que encontra-se armazenado em memória de massa. Ou seja, salvo em disco. Portanto, para um programa se tornar um processo ele deve ser carregado do disco e depois executado. E nesse processo, não tem pra onde correr, você sempre dependerá da API do sistema operacional para isso. Os mais experientes me corrijam caso eu esteja errado! Sds. De: delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.br mailto: delphi-br%40yahoogrupos.com.br delphi-br%2540yahoogrupos.com.br [mailto:delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.br mailto: delphi-br%40yahoogrupos.com.br delphi-br%2540yahoogrupos.com.br ] Em nome de eric_developer Enviada em: sexta-feira, 18 de junho de 2010 17:48 Para: delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.br mailto: delphi-br%40yahoogrupos.com.br delphi-br%2540yahoogrupos.com.br Assunto: Re: RES: [delphi-br] Executar aplicativos a partir da memória quem sabe exista alguma forma que não dependa da API do Windows. Eric Developer Systems www.magaldi.eti.br --- Em delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.br mailto:delphi-br%40yahoogrupos.com.brdelphi-br%2540yahoogrupos.com.brdelphi-br% 2540yahoogrupos.com.br mailto:delphi-br%40yahoogrupos.com.brdelphi-br%2540yahoogrupos.com.brdelphi-br% 2540yahoogrupos.com.br , Rubem Rocha rubem.rocha@ escreveu A API do Windows só suporta carregar um processo em disco e executá-lo. Portanto, vais ter que obrigatoriamente salvar esse binário em disco (seja físico ou virtual) e executá-lo. A alternativa, como o Waltão sugeriu, seria um ramdrive, que seria um disco em memória. Sds.
Re: [delphi-br] Variant e Array
vc tem que usar a função VarArrayHighBound para saber o tamanho do array de variant. var vArray: Variant; i: Integer; begin vArray := VarArrayCreate([0,2], varVariant); vArray[0] := 'um'; vArray[1] := 'dois'; vArray[2] := 'tres'; for i := 0 to VarArrayHighBound(vArray, 1) do begin ShowMessage(vArray[i]); end; Em 18 de junho de 2010 16:34, Dirlei dir...@gmail.com escreveu: Você precisa atribuir o conteúdo do Variant a uma variável do tipo Array antes de poder obter seu Length e antes de poder percorrê-lo. Mas lembre-se de que será feita uma cópia do array. Então, se o tamanho do array for grande e você tiver que se preocupar com consumo de memória e/ou performance, talvez queira usar ponteiros para essa operação. -- Dirlei Dionísio Novo artigo: O estágio House do bom programador http://MaisQueBomCodigo.blogspot.com Em Sex, 2010-06-18 às 15:58 -0300, Jhosef Marks escreveu: Boa tarde, Eu tenho um variant que as vezes recebe uma STRING e outras um array of string; verifico o tipo dele da seguinte forma varisstr ou varisarray... o problema é quando ele é varisarray, eu não to conseguindo passar pelas strings dentro desse variant... tentei com lenght, count, high() e nenhum desses funcionou... alguma sugestão for vConte := 0 to Length(FCampos) - 1 do begin vValores := vValores + ';' + FCampos[vConte]; end; 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] [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: RES: RES: [delphi-br] Executar aplicativos a par tir da memória
Excelente contribuição, Fabricio! Não sabia que isso era possível; é provável que eu use esse recurso em breve numa implementação de segurança em que venho trabalhando. Isso diminuiria as chances de um ataque conhecido como Man-in-the-middle (ou homem do meio - quando um cracker intercepta a comunicação entre dois recursos, por exemplo um EXE e uma DLL). Eric, me parece que executar uma DLL em memória ou usar o Pascal Script (também citado pelo Fabricio) podem ser alternativas mais simples, dependendo do que você precisa. Respondendo a sua pergunta, a VM seria parte de uma DLL que seu aplicativo carregaria consigo (lua.dll, por exemplo). Ao invés de executar a VM passando um parâmetro, você (1) executaria uma função da DLL para iniciar a VM, (2) outra função para carregar um programa a partir da memória (um script) e (3) outra função para executar o programa que você carregou na VM. Como todos podemos observar, algo que aparentemente não era possível, agora tem pelo menos 4 alternativas para ser implementado (incluindo a sugestão do RAM Drive) - graças ao conhecimento compartilhado. Parabéns para o grupo! -- Dirlei Dionísio Novo artigo: O estágio House do bom programador http://MaisQueBomCodigo.blogspot.com Em 18 de junho de 2010 22:35, Fabricio Colombo fabricio.colombo@gmail.com escreveu: Li esse artigo sobre carregar e executar Dlls diretamente da memória, Load a DLL From a Resource Directly From Memory in Delphi Applications http://delphi.about.com/od/windowsshellapi/a/delphi-load-resource-dll-into-memory.htm , não é o que vc precisa mais talvez te dê uma luz. Seguindo a linha de raciocínio do Dirlei Dionísio, tem tbm o Pascal Script. [As partes desta mensagem que não continham texto foram removidas]
Re: [delphi-br] Remover BDE Admin
Remover como? Desinstalar? Painel de controle, não consegue? Se estiver tendo problema, você pode fazer na mão, mas dá um trampo do capeta. Se liga: Apague os arquivos EUROPE.BLL USA.BLL IDR20009.DLL IDAPI32.DLL BLW32.DLL IDAPI32.CFG IDPDX32.DLL --- Driver Paradox IDASCI32.DLL --- Driver ASCII IDDBAS32.DLL --- Driver DBase IDODBC32.DLL --- Driver ODBC E apagar as entradas no registro: HKEY_LOCAL_MACHINE SOFTWARE\Borland\Database Engine HKEY_LOCAL_MACHINE SOFTWARE\Borland\Database Engine\DLLPATH HKEY_LOCAL_MACHINE SOFTWARE\Borland\Database Engine\CONFIGFILE01 HKEY_LOCAL_MACHINE SOFTWARE\Borland\Database Engine\SOFTWARE\Borland\BLW32 BLAPIPATH HKEY_LOCAL_MACHINE SOFTWARE\Borland\Database Engine\LOCALE_LIB1 HKEY_LOCAL_MACHINE SOFTWARE\Borland\Database Engine\LOCALE_LIB2 Se não me falha a memória é só isso. Mas você pode fazer diferente também. Talvez tenha corrompido algum arquivo e por isso o Windows não deixa desinstalar. Tenta re-instalar via CD do Delphi só o BDE, ai vc vai no Windows ou no próprio CD do Delphi e desinstala. Já tive esse tipo de problema. Qdo usava BDE tinha meu próprio instalador/desinstalador. Pena que não tenho mais o código-fonte, senão te passava. -- Adriano Santos http://twitter.com/asrsantos www.delphitodelphi.blogspot.com 2010/6/18 Paulo Roberto Silva pauloroberto...@gmail.com Boa tarde; Caros colegas alguem sabe como remover o BDE (Borland Database Enginer)? -- Atenciosamente Paulo Roberto Jr. E-mail: pauloroberto...@gmail.com paulorobertosjr%40gmail.com pr_...@yahoo.com.br pr_sjr%40yahoo.com.br MSN: pr_...@hotmail.com pr_sjr%40hotmail.com Skype: pr_sjr (37) 3221-0260 - 99285159 [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM * Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages * Para falar com o moderador, envie um e-mail para: delphi-br-ow...@yahoogrupos.com.br Links do Yahoo! Grupos * Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ * Para sair deste grupo, envie um e-mail para: delphi-br-unsubscr...@yahoogrupos.com.br * O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html