Estou precisando criar um ActiveX (sem interface gráfica) que rodará na estação de trabalho para executar algumas operações. São elas:
- Abrir e salvar documentos Words;
- Acesso a algum de registro do Windows (somente leitura);
- Finalizar algum processo rodando no Windows;
- Requisições GET e POST do protocolo HTTP e HTTPS (com certificado no lado do servidor) a fim de enviar requisições para buscar e enviar arquivos;
- Copiar e Deletar arquivos na máquina do usuário (Detectar caso o usuário não tenha permissão)
Atualmente eu já tenho esse ActiveX (arquivo *.cab contendo um arquivo *.ocx) feito em Delphi 5 com todas as funcionalidades, com exceção do suporte SSL (HTTPS - Conexão Segura).
Porém o ActiveX deverá passar a suportar conexões SSL. Houve uma tentativa frustrada de utilizar componentes do Delphi que suportam SSL (Indy e Synapse) a fim de adaptá-lo em conexões SSL. Como não consegui, estou pensando em mudar o paradgma. Migrar o ActiveX para outra plataforma (VB.NET / Java / C#). O esforço será grande, mas preciso que o ActiveX suporte SSL.
Funcionamento do ActiveX:
Um ActiveX assinado é instalado automaticamente na máquina do usuário. E através de JavaScript eu chamo algum métodos do ActiveX. Como no código abaixo:
Utilizando o componente Indy e Synapse que utilizam da biblioteca OpenSSL( precisa de 2 dlls, Sad ) eu me deparei com o mesmo problema. Ao fazer uma requisição a uma endereço HTTPS, dá a msg de erro "HTTP/1.1 404 Not Found".
Já pesquisei bastante sobre o erro, e não consegui encontrar nenhuma solução gratuita.
Eu comecei a suspeitar que o servidor estava bloqueando meu ActiveX de acessar o endereço, porém um colega fez um aplicativo desktop na linguagem c# (nunca usei) chamando o mesmo endereço e funcionou perfeitamente sem a necessidade de certificado no lado do cliente, creio que o próprio c# já deva ter baixado o certificado (chave pública) do servidor.
O que eu achei esquisito nos meus teste, é que se eu for no brownser e digitar o endereço, meu ActiveX passa a conseguir temporariamente acessar o endereço, como se algo estivesse no cache. Depois de um tempo, o ActiveX não consegue mais acessar o endereço. Sad
Alguém conhece algum outro componente que possa me ajudar ? De preferência que não seja uma DLL e que eu possa linkar no projeto do ActiveX.
Pergunta
Zorro_BR
Caros,
Estou precisando criar um ActiveX (sem interface gráfica) que rodará na estação de trabalho para executar algumas operações. São elas:
- Abrir e salvar documentos Words;
- Acesso a algum de registro do Windows (somente leitura);
- Finalizar algum processo rodando no Windows;
- Requisições GET e POST do protocolo HTTP e HTTPS (com certificado no lado do servidor) a fim de enviar requisições para buscar e enviar arquivos;
- Copiar e Deletar arquivos na máquina do usuário (Detectar caso o usuário não tenha permissão)
Atualmente eu já tenho esse ActiveX (arquivo *.cab contendo um arquivo *.ocx) feito em Delphi 5 com todas as funcionalidades, com exceção do suporte SSL (HTTPS - Conexão Segura).
Porém o ActiveX deverá passar a suportar conexões SSL. Houve uma tentativa frustrada de utilizar componentes do Delphi que suportam SSL (Indy e Synapse) a fim de adaptá-lo em conexões SSL. Como não consegui, estou pensando em mudar o paradgma. Migrar o ActiveX para outra plataforma (VB.NET / Java / C#). O esforço será grande, mas preciso que o ActiveX suporte SSL.
Funcionamento do ActiveX:
Um ActiveX assinado é instalado automaticamente na máquina do usuário. E através de JavaScript eu chamo algum métodos do ActiveX. Como no código abaixo:
<OBJECT name=meuActiveX classid="clsid:06239C09-4442
-442A-9803-68FCF24A87EF" codebase=http://minhaaplicao/meuActiveX.cab ></OBJECT>
returno = meuActiveX .chamaMetodo1();
.. manipula o retorno;
A dúvida que levanto nesse grupo é a seguinte.
Utilizando o componente Indy e Synapse que utilizam da biblioteca OpenSSL( precisa de 2 dlls, Sad ) eu me deparei com o mesmo problema. Ao fazer uma requisição a uma endereço HTTPS, dá a msg de erro "HTTP/1.1 404 Not Found".
Já pesquisei bastante sobre o erro, e não consegui encontrar nenhuma solução gratuita.
Eu comecei a suspeitar que o servidor estava bloqueando meu ActiveX de acessar o endereço, porém um colega fez um aplicativo desktop na linguagem c# (nunca usei) chamando o mesmo endereço e funcionou perfeitamente sem a necessidade de certificado no lado do cliente, creio que o próprio c# já deva ter baixado o certificado (chave pública) do servidor.
O que eu achei esquisito nos meus teste, é que se eu for no brownser e digitar o endereço, meu ActiveX passa a conseguir temporariamente acessar o endereço, como se algo estivesse no cache. Depois de um tempo, o ActiveX não consegue mais acessar o endereço. Sad
Alguém conhece algum outro componente que possa me ajudar ? De preferência que não seja uma DLL e que eu possa linkar no projeto do ActiveX.
Conto com a colaboração de todos nessa discussão.
Atenciosamente e Obrigado
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.